efficient-storefront-blocks 0.77.0 → 0.78.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.
@@ -1,4 +1,4 @@
1
- import{$ as zm,B as Am,C as Rm,D as Bm,Da as oe,F as _m,G as lc,Ha as Xm,I as Dm,Ia as Zm,J as go,K as $t,Ka as Qn,L as Nm,La as Qm,M as Wo,Ma as Jm,N as Zn,Q as Mm,R as ic,Ra as ex,U as Hm,V as cc,X as fc,a as Ct,b as rc,fa as jt,h as Pm,ha as Wm,i as ac,j as nc,ja as Gm,k as Ge,l as Em,la as Um,m as Om,ma as ko,n as vr,na as Er,o as zo,oa as $m,p as Tr,pa as Jo,q as Pr,qa as dc,ra as uc,s as Fm,v as va,va as Ta,x as Lm,xa as jm,y as sc,za as qm}from"./chunk-ZIZWJZ5T.js";import{d as Km,e as Pa,f as Vm,g as Ym,j as Or,n as pc}from"./chunk-OWYNZAAY.js";var pe=e=>typeof e=="string"&&e?e:void 0;var tx="en",Jn=null,rx=tx,ax=null;function _8(e,o,t){Jn=e??null,rx=o||tx,ax=t??null}function X(){return ax}function mc(){return rx}function nx(){return Jn}function ox(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=Jn?Jn[e]:void 0;if(typeof t=="function"){try{let r=pe(t(o??{}));if(r)return r}catch{}return ox(e,o)}return ox(pe(t)??e,o)}function Ze(e,o,t,r){return l(t===1?e:o,{...r,n:t})}import{jsx as xc,Fragment as P0,jsxs as E0}from"react/jsx-runtime";import{createContext as O0,useContext as F0}from"react";var L0={mirrorHostStyles:!0,css:null,fontHrefs:[]},sx=O0(L0);function H8({value:e,children:o}){return xc(sx.Provider,{value:e,children:o})}function hc(){return F0(sx)}function lx(){let{css:e,fontHrefs:o}=hc();return E0(P0,{children:[o.map(t=>xc("link",{rel:"stylesheet",href:t},t)),e?xc("style",{"data-sf-canvas-css":"",children:e}):null]})}import{jsx as A0}from"react/jsx-runtime";import{createContext as R0,useContext as B0}from"react";var ix=R0(void 0);function U8({metadata:e,children:o}){return A0(ix.Provider,{value:e,children:o})}var cx=()=>B0(ix);import{jsx as Le,Fragment as u0,jsxs as Vn}from"react/jsx-runtime";import{useCallback as Yn,useEffect as Xo,useRef as n8,useState as i0}from"react";import{Button as s8,Tooltip as l8}from"efficient-shell/ui";import{SettingsSwitch as i8}from"efficient-easel/panel";import{PagesIcon as c8,StylesIcon as f8}from"efficient-easel/rail";import{PaletteIcon as d8}from"efficient-shell/icons/efficient";import{TemplateIcon as u8}from"efficient-easel/icons";import{Subtree as p8,TreeRow as p0}from"efficient-easel/tree";import{useEasel as m0}from"efficient-easel/easel";import{useEaselStrings as x0}from"efficient-easel/strings";import{createContext as _0,useContext as D0}from"react";var Ic=_0(!1),q8=()=>D0(Ic);import{jsx as ie,Fragment as Hb,jsxs as Qa}from"react/jsx-runtime";import{Fragment as R2,useEffect as B2,useId as _2,useMemo as zb,useRef as D2,useState as _t}from"react";import{useScreenDocument as Vb}from"efficient-easel/screen/components/ScreenDocumentContext";import{UiIcon as Kd}from"efficient-easel/draw/client";import N2 from"efficient-easel/screen/components/SidePanelHead";import{jsx as Q,Fragment as dr,jsxs as fr}from"react/jsx-runtime";import{useEasel as Lb,useRootFields as NN}from"efficient-easel/easel";import{Inspector as MN}from"efficient-easel/fields";import{SettingsGroup as HN}from"efficient-easel/panel";import{useEffect as zN,useRef as WN,useState as Ol}from"react";import{jsx as Kt,Fragment as hE,jsxs as IE}from"react/jsx-runtime";import{useState as Sx}from"react";import{SettingsDefaultReset as gE,SettingsField as yE}from"efficient-easel/panel";import{useEaselStrings as bE}from"efficient-easel/strings";import{AddIcon as SE}from"efficient-easel/icons";import{Button as CE}from"efficient-shell/ui";import{iconOf as wE,noGlyph as kE}from"efficient-easel/screen/lib/document/box-fields";import{jsx as Z,jsxs as kt,Fragment as J0}from"react/jsx-runtime";import{parseHexColor as eE}from"efficient-shell/format";import{Button as bc,IconButton as oE,Tooltip as tE}from"efficient-shell/ui";import{jsx as wt,jsxs as j0}from"react/jsx-runtime";import{AccentIcon as q0}from"efficient-easel/icons";import{Button as K0,Tooltip as V0}from"efficient-shell/ui";import{jsx as qt,jsxs as ux}from"react/jsx-runtime";import{ColorPicker as M0,HexInput as H0}from"efficient-shell/ui";import{SettingsDefaultReset as z0,SettingsField as W0}from"efficient-easel/panel";import{typedHex as gc}from"efficient-easel/pick";import{typedHex as N0}from"efficient-easel/pick";function fx(e){let o=new Set,t=[];return Ge(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?N0(i):null;!c||o.has(c)||(o.add(c),t.push({name:s,value:c}))}}),t}var dx="Not set";function G0({value:e,onChange:o,label:t,id:r,caption:a,inherited:n,ariaLabel:s}){return qt($0,{value:e,onChange:o,label:l(s??t),id:r,caption:a,inherited:n})}function U0(){let{theme:e}=oe();return fx(e).map(o=>({value:o.value,label:o.name}))}function $0({value:e,onChange:o,label:t,id:r,caption:a,inherited:n}){let s=U0(),i=e?null:gc(n??""),c=a!==void 0&&(!e||gc(a)!==gc(e))?a:null,d=m=>{m!==e&&o(m)};return ux("div",{className:"sf-colour",children:[qt(M0,{id:r,value:e,onChange:d,label:t,presets:s,fallback:i??void 0,size:"md",align:"start"}),c!==null?qt("span",{className:"sf-colour-caption",children:c}):qt("span",{className:"sf-colour-hexwrap",children:qt(H0,{value:e||i||"",onChange:d,label:l("{label} hex code",{label:t}),placeholder:e||i?void 0:l(dx),className:i?"sf-colour-hex is-inherited":"sf-colour-hex",size:"md"})})]})}function yo({label:e,icon:o,changed:t,hint:r,onReset:a,resetTo:n,children:s,...i}){return ux(W0,{label:e,icon:o,htmlFor:i.id,changed:t,hint:r,action:a?qt(z0,{words:X()?.panel,label:e,changed:!!t,detail:n,onReset:a}):void 0,children:[G0({...i,label:e}),s]})}function es({label:e,icon:o,value:t,inherited:r,resetTo:a,onChange:n,onReset:s,hint:i}){let c=!!t;return qt(yo,{label:e,icon:o,value:t,inherited:c?void 0:r,onChange:n,changed:c,onReset:s,resetTo:a,hint:i})}function yc(e){return zo(e).background}function Y0(e){let o=Ct(e.accent,yc(e));return o===null?null:{ratio:o,grade:Pr(o)}}function X0(e){let o=yc(e),t=Ct(e.accent,o);return t===null?[]:Fm(e.accent).filter(r=>{let a=Ct(r,o);return a!==null&&a>t&&Pr(a)==="good"})}var Z0={good:"Easy to read","large-only":Tr["large-only"],hard:Tr.hard};function px({value:e,onChange:o}){let t=Y0(e),r=t?.grade,a=t&&t.grade!=="good"?X0(e):[];return wt(yo,{label:l("Main color"),icon:wt(q0,{}),hint:t?l(Z0[t.grade]):void 0,value:e.accent,onChange:n=>o({...e,accent:n}),children:a.length>0?wt("div",{className:"w-full min-w-0",children:j0("div",{className:"sf-readability",children:[wt("p",{className:"sf-readability-advice",children:Q0(r,!0)}),wt("div",{className:"sf-readability-suggestions",children:a.map(n=>{let s=Ct(n,yc(e));return wt(V0,{content:l("Use {colour}",{colour:n.toUpperCase()}),children:wt(K0,{variant:"secondary",className:"sf-readability-suggestion",leftIcon:wt("span",{className:"sf-readability-chip",style:{background:n},"aria-hidden":!0}),onClick:()=>o({...e,accent:n}),children:s?`${s.toFixed(1)}:1`:n.toUpperCase()})},n)})})]})}):null})}function Q0(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 rE,ChevronDownIcon as xx,ChevronUpIcon as aE,GroundIcon as nE,LayoutIcon as sE,SquareIcon as lE,TextSmallIcon as iE,TypeIcon as mx}from"efficient-easel/icons";var Ea=e=>l("Theme {n}",{n:e+1});function hx({colors:e}){let o=zo(e),t=va(e)??o.accent;return kt("span",{className:"sf-theme-page",style:{background:o.background,color:o.text},"aria-hidden":!0,children:[Z("span",{className:"sf-theme-eyebrow",style:{color:o.muted},children:l("label")}),kt("span",{className:"sf-theme-headline",children:[l("Heading")," ",Z("span",{style:{color:o.accent},children:l("accent")})]}),Z("span",{className:"sf-theme-body",children:l("body text")}),kt("span",{className:"sf-theme-row",children:[Z("span",{className:"sf-theme-btn",style:{background:t,color:sc(e,o.accent)},children:l("button")}),Z("span",{className:"sf-theme-mini",style:{background:o.surface,borderColor:o.line},children:l("card")})]})]})}var Sc={"Text color":Z(mx,{}),"Label color":Z(iE,{}),Background:Z(nE,{}),"Panels & cards":Z(sE,{}),Borders:Z(lE,{}),"Button color":Z(rE,{}),"Button text color":Z(mx,{})};function cE({label:e,colorKey:o,value:t,onChange:r,idPrefix:a="sf-theme-ink"}){let n=`${a}-${o}`;return Z(yo,{label:l(e),icon:Sc[e],id:n,value:t,onChange:s=>r(o,s)})}function fE({value:e,accent:o,onChange:t,idPrefix:r="sf-theme-ink"}){let a=`${r}-button`,n=e!==void 0&&eE(e)===e.toLowerCase(),s=n?e:o;return Z(yo,{label:l("Button color"),icon:Sc["Button color"],id:a,value:s,caption:n?s:l("Main"),onChange:t})}function dE({colors:e,accent:o,onChange:t,idPrefix:r="sf-theme-ink"}){let a=`${r}-button-ink`,n=Lm(e),s=sc(e,o),i=va(e)??o,c=Pr(Ct(s,i)??0);return Z(yo,{label:l("Button text color"),icon:Sc["Button text color"],hint:n&&c!=="good"?l("{grade} on the button",{grade:l(Tr[c])}):void 0,id:a,value:s,caption:n?s:l("Auto"),onChange:t})}var uE=[{colour:!0},{label:"Text color",key:"text"},{label:"Label color",key:"muted"},{button:!0},{buttonInk:!0},{moduleBreak:!0},{label:"Background",key:"background"},{label:"Panels & cards",key:"surface"},{label:"Borders",key:"line"}];function Cc({colors:e,onChange:o,idPrefix:t}){let r=zo(e);return Z(J0,{children:uE.map(a=>"colour"in a?Z(px,{value:e,onChange:o},"colour"):"moduleBreak"in a?Z("div",{className:"sf-theme-module-break","aria-hidden":"true"},"module-break"):"button"in a?Z(fE,{value:e.button,accent:r.accent,onChange:n=>o({...e,button:n}),idPrefix:t},"button"):"buttonInk"in a?Z(dE,{colors:e,accent:r.accent,onChange:n=>o({...e,buttonInk:n}),idPrefix:t},"buttonInk"):Z(cE,{label:a.label,colorKey:a.key,value:r[a.key],onChange:(n,s)=>o({...e,[n]:s}),idPrefix:t},a.key))})}function os({index:e,colors:o,selected:t,role:r="radio",open:a,editable:n=!0,onPick:s,onEdit:i,onChangeColors:c}){let d=zo(o),m=Ea(e),x=e<nc.length&&!o.brandInk?nc[e]:null,u=Pr(Ct(d.text,d.background)??0),h=x?JSON.stringify(o)!==JSON.stringify(x):!1,g=a!==void 0;return kt("div",{className:`sf-theme-card${t?" is-selected":""}`,children:[Z("button",{type:"button",role:r,"aria-checked":r==="radio"?t:void 0,"aria-selected":r==="option"?t:void 0,"aria-label":m,className:"sf-theme-pick",onClick:s,children:Z(hx,{colors:o})}),kt("div",{className:"sf-theme-foot",children:[Z("span",{className:"sf-theme-name",children:m}),u!=="good"&&Z("span",{className:"sf-theme-warn",children:l(Tr[u])}),n&&i&&g&&Z("span",{className:"sf-theme-edit",children:Z(tE,{content:a?l("Collapse"):l("Edit colors"),children:Z(oE,{size:"sm","aria-expanded":a,"aria-controls":`sf-theme-colours-${e}`,"aria-label":a?l("Collapse {name}",{name:m}):l("Edit colors for {name}",{name:m}),onClick:i,children:a?Z(aE,{size:14}):Z(xx,{size:14})})})}),n&&i&&!g&&Z(bc,{variant:"secondary",size:"sm",className:"sf-theme-edit","aria-label":l("Edit {name}",{name:m}),onClick:i,children:l("Edit")})]}),a&&kt("div",{id:`sf-theme-colours-${e}`,className:"sf-theme-colours",children:[Z(Cc,{colors:o,onChange:k=>c?.(k)}),x&&Z(bc,{variant:"link",size:"sm",className:"sf-theme-reset",disabled:!h,onClick:()=>c?.({...x}),children:h?l("Reset {name} to the preset",{name:m}):l("Not changed")})]})]})}function Ix({colors:e,name:o,nameId:t,open:r,menuId:a,labelId:n,buttonRef:s,onClick:i,onKeyDown:c,onEdit:d}){return kt("div",{className:"sf-secttheme-btn",children:[Z("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?Z(hx,{colors:e}):Z("span",{className:"sf-secttheme-nopreview","aria-hidden":"true"})}),kt("div",{className:"sf-theme-foot",children:[Z("span",{id:t,className:"sf-theme-name",children:o}),d&&Z(bc,{variant:"secondary",size:"sm",className:"sf-theme-edit","aria-label":l("Edit {name}",{name:o}),onClick:d,children:l("Edit")}),Z("button",{type:"button",className:"sf-secttheme-caret","aria-hidden":"true",tabIndex:-1,onClick:i,children:Z(xx,{size:12,className:"sf-multi-caret","aria-hidden":"true"})})]})]})}import{jsx as ts,Fragment as pE,jsxs as gx}from"react/jsx-runtime";import{Button as yx,Dialog as mE}from"efficient-shell/ui";function xE(e){return Ze("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 bx({count:e,onCancel:o,onConfirm:t}){return gx(mE,{open:!0,onClose:o,role:"alertdialog",size:"sm",title:l("Clear this site\u2019s colors?"),footer:gx(pE,{children:[ts(yx,{variant:"secondary",onClick:o,children:l("Cancel")}),ts(yx,{variant:"danger",onClick:t,children:l("Clear colors")})]}),children:[ts("p",{children:xE(e)}),ts("p",{className:"mt-2 font-medium",children:l("This cannot be undone.")})]})}var vE=kE("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"),TE="Reset color",PE={selected:0,themes:[]};function EE(e){e(PE)}function Cx({value:e,onChange:o}){let t=e?.themes??[],r=t.length===0,a=Ge(e),[n,s]=Sx(!1),i=bE(),[c,d]=Sx(null),m=(O,w)=>{o({...a,themes:a.themes.map((I,b)=>b===O?w:I)})},x=vr(a).accent,u=new Set(a.themes.map(O=>O.brandInk).filter(Boolean)),h=Em.filter(O=>!u.has(O)).map(O=>Om(x,O)),g=[...a.themes,...h],k=O=>{if(O<a.themes.length)return o({...a,selected:O});let w=[...a.themes,g[O]];o({...a,themes:w,selected:w.length-1})},P=()=>{let O=[...a.themes,{...zo(a.themes[a.selected])}];o({...a,themes:O,selected:O.length-1}),d(O.length-1)};return IE(hE,{children:[r?null:Kt(yE,{label:l(TE),icon:wE(vE),labelId:"sf-theme-reset",action:Kt(gE,{label:l("all theme colors"),words:i.panel,changed:!0,onReset:()=>s(!0)})}),n&&Kt(bx,{count:t.length,onCancel:()=>s(!1),onConfirm:()=>{s(!1),EE(o)}}),Kt("div",{className:"sf-theme-list",role:"radiogroup","aria-label":l("Theme"),children:g.map((O,w)=>Kt(os,{index:w,colors:O,selected:w===a.selected,open:c===w&&w<a.themes.length,editable:w<a.themes.length,onPick:()=>k(w),onEdit:()=>d(I=>I===w?null:w),onChangeColors:I=>m(w,I)},w))}),Kt(CE,{variant:"secondary",leftIcon:Kt(SE,{}),onClick:P,className:"sf-theme-add",children:l("Add new theme")})]})}import{jsx as fl}from"react/jsx-runtime";import{SettingsDefaultReset as r_,SettingsField as a_}from"efficient-easel/panel";import{SquareIcon as n_}from"efficient-easel/icons";import{jsx as y,jsxs as jr,Fragment as Lt}from"react/jsx-runtime";import{cloneElement as _g,useEffect as QA,useId as Dg,useRef as Qs,useState as Ha}from"react";import{useEasel as Uf}from"efficient-easel/easel";import{toDateKey as HX,fromDateKey as zX}from"efficient-shell/format";function OE(e){return!!e&&typeof e=="object"&&!Array.isArray(e)&&typeof e.src=="string"}function vt(e){return typeof e=="string"?e:OE(e)?e.src:""}function zj(e,o,t){return wc(e,o.split("."),t)}function wc(e,o,t){if(o.length===0)return t(e);let[r,...a]=o,n=r.endsWith("[]"),s=n?r.slice(0,-2):r;if(!e||typeof e!="object"||Array.isArray(e))return e;let i=e;if(!(s in i))return e;let c=i[s];if(n){if(!Array.isArray(c))return e;let m=!1,x=c.map(u=>{let h=wc(u,a,t);return h!==u&&(m=!0),h});return m?{...i,[s]:x}:e}let d=wc(c,a,t);return d===c?e:{...i,[s]:d}}var FE=["upload","youtube"],LE="upload",Uj={upload:"Upload",youtube:"YouTube"},AE=["background","click"],RE="background",$j={background:"Background",click:"Click to play"};function jj(e){return FE.includes(e)?e:LE}function qj(e){return AE.includes(e)?e:RE}var wx=/^[A-Za-z0-9_-]{11}$/,BE=/^(?:www\.|m\.|music\.)?(?:youtube\.com|youtube-nocookie\.com|youtu\.be)$/;function Kj(e){let o=typeof e=="string"?e.trim():"";if(!o)return null;if(wx.test(o))return o;let t;try{t=new URL(/^[a-z]+:\/\//i.test(o)?o:`https://${o}`)}catch{return null}if(t.protocol!=="https:"&&t.protocol!=="http:"||!BE.test(t.hostname))return null;let r=t.pathname.split("/").filter(Boolean),a=t.hostname.endsWith("youtu.be")?r[0]:r[0]==="watch"?t.searchParams.get("v"):r[0]==="embed"||r[0]==="shorts"||r[0]==="live"||r[0]==="v"?r[1]:null;return a&&wx.test(a)?a:null}function Vj(e,o){let t=o==="click"?"autoplay=1&playsinline=1&rel=0":`autoplay=1&mute=1&loop=1&playlist=${e}&controls=0&playsinline=1&rel=0&disablekb=1`;return`https://www.youtube-nocookie.com/embed/${e}?${t}`}function Yj(e){return`https://i.ytimg.com/vi/${e}/maxresdefault.jpg`}function Xj(e){return`https://i.ytimg.com/vi/${e}/hqdefault.jpg`}var Zj="Play video";var kc={frame:"Video frame",image:"Image"},Qj={any:[{field:"loadingShows",is:"image"},{all:[{not:{field:"loadingShows",set:!0}},{field:"poster",set:!0}]}]};function vc(e){let o=e.loadingShows;return o==="image"?"image":o!=null&&o!==""?"frame":vt(e.poster)?"image":"frame"}function Jj(e){return vt(vc(e)==="image"?e.poster:e.videoFrame)||void 0}import{readHidable as At,hidableText as JA}from"efficient-easel/draw";import{FOLD_FIELD_MARKER as Ng,LINK_FIELD_MARKER as eR,MEDIA_FIELD_MARKER as oR,SCAFFOLD_FIELD_MARKER as tR,TEXT_FIELD_MARKER as nt,foldMetaOf as st,textFieldIdentifier as qX}from"efficient-easel/draw";import{jsx as Fx}from"react/jsx-runtime";import{useCallback as ME}from"react";import{useEasel as HE}from"efficient-easel/easel";import{SettingsAction as zE}from"efficient-easel/panel";import{CORNER_SIDES as rs,hasCornerSubset as Oa,normalizeCornerSides as Go}from"efficient-easel/screen/lib/content/style-keys";function Tc(e){return typeof e=="number"&&Number.isFinite(e)}function r7(e,o){if(!Tc(e))return;let t=Zn(Wo(e));if(Object.keys(t).length===0)return;let r=t[Pc];if(typeof r!="string")return t;let a=Oa(o)?Vt(r,Go(o)??[]):r;return{...t,[_E]:a}}var _E="--sf-section-radius",Pc="--sf-card-radius";function Vt(e,o){return rs.map(t=>o.includes(t)?e:"0").join(" ")}var kx=[{value:"tl",label:"Top left"},{value:"tr",label:"Top right"},{value:"bl",label:"Bottom left"},{value:"br",label:"Bottom right"}];var DE="--sf-card-box-radius";function Ec(e){return typeof e=="number"&&Number.isFinite(e)}function l7(e,o){if(!Ec(e))return;let t=Zn(Wo(e))[Pc];if(typeof t!="string")return;let r=Oa(o)?Vt(t,Go(o)??[]):t;return{[DE]:r}}function vx(e,o){let t=e.find(n=>n?.props?.id===o);if(!t)return[...e];let r=t.props?.cardCorners,a=t.props?.cardCornerSides;return e.map(n=>n?.props?.id===o?n:{...n,props:{...n.props,cardCorners:r,cardCornerSides:a}})}import{locateNode as NE}from"efficient-easel/draw";function Fa(e){if(!e)return null;let o=e.lastIndexOf(":");return o>0?{ownerId:e.slice(0,o),slot:e.slice(o+1)}:null}function as(e,o,t){let r=Fa(t?.zone),a=r?NE(e,o,r.ownerId):null;return a&&r?{...a,slot:r.slot}:null}function Tx(e,o,t){let r=as(e,o,t),a=r?.slot??"",n=r&&Array.isArray(r.item.props[a])?r.item.props[a]:[],s=t?.index??-1,i=s>=0?n[s]:void 0,c=i?.props?.id?String(i.props.id):"",d=Math.max(n.length-1,0);return!r||!c?{can:!1,reason:"unreachable",others:0}:n.length<=1?{can:!1,reason:"alone",others:d}:Ec(i?.props?.cardCorners)?{can:!0,others:d,zone:r.zone,index:r.index,data:{...r.item,props:{...r.item.props,[a]:vx(n,c)}}}:{can:!1,reason:"unset",others:d}}function Px(e){return e.can?Ze("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 Ex(e){return Ze("Applied to {n} card","Applied to {n} cards",e)}function Ox(e,o){e.can&&o(e.zone,e.index,e.data)}import{useSectionOps as WE}from"efficient-easel/screen/lib/document/use-section-ops";var GE="apply-corners-to-siblings",UE="Apply to all cards";function $E({plan:e,onPress:o}){return Fx(zE,{id:GE,label:l(UE),note:Px(e),disabled:!e.can,doneLabel:Ex(e.others),onPress:o})}function Lx(){let{appState:e,config:o}=HE(n=>n),t=WE(),r=Tx(o,e.data.content??[],e.ui.itemSelector),a=ME(()=>{Ox(r,t.replaceComponent)},[r,t]);return Fx($E,{plan:r,onPress:a})}import{isShown as nO,lazyShowWhenContext as sO}from"efficient-shell/format";var Yt="product",ns="recordType",jE={key:Yt,label:"Product",fields:[]},qE=/^[a-z][a-z0-9]*(-[a-z0-9]+)*$/,KE=/^[a-z][A-Za-z0-9]*$/,VE=["text","date"],Ax=new Map,Rx=0;function YE(e){if(typeof e.key!="string"||!qE.test(e.key))throw new Error(`A record type key is lower-case words joined by hyphens, not ${JSON.stringify(e.key)}.`);if(e.key===Yt)throw new Error("The product record type is the builder's own and is not declared by a host.");if(typeof e.label!="string"||!e.label.trim())throw new Error(`The record type ${e.key} has no label.`);let o=new Set;for(let t of e.fields){if(typeof t.key!="string"||!KE.test(t.key)||o.has(t.key))throw new Error(`The record type ${e.key} has a field key it cannot use: ${JSON.stringify(t.key)}.`);if(!VE.includes(t.kind))throw new Error(`The field ${t.key} of ${e.key} has no kind ${JSON.stringify(t.kind)}.`);o.add(t.key)}return{key:e.key,label:e.label.trim(),fields:e.fields.map(t=>({...t}))}}function w7(e){let o=e.map(YE);for(let t of o)Ax.set(t.key,t);o.length&&(Rx+=1)}function Oc(){return[jE,...Ax.values()]}function Fc(){return Rx}function Lc(e){let o=e?.[ns];return typeof o!="string"?Yt:o.trim()||Yt}function Ac(e){return Lc(e)===Yt}var Rc="product",XE="tyre";var ZE="productType",QE={[Rc]:"alloy-wheel",[XE]:"tyre"},JE=["alloy-wheel","tyre"];function Bx(e,o){return Ac(o)?eO(o)??QE[e]??null:null}function eO(e){if(!Ac(e))return null;let o=e?.[ZE];return typeof o=="string"&&JE.includes(o)?o:null}var ss=null,_x=null;function oO(e,o){ss=e,_x=o}function E7(e){oO(e,null)}function O7(){return ss}function ls(){return _x==="dynamic"||ss===Rc}function F7(e){return Bx(ss??"",e)??"alloy-wheel"}import{addShowWhenFacts as tO}from"efficient-shell/format";import{showWhenOf as Bc,shownForOption as rO,truthy as aO,withRowRules as _c,withRowsShownWhen as Dc,withShowWhen as Fr}from"efficient-shell/format";var B7=tO;function Nx(e,o,t){let r=!1,a={};for(let[n,s]of Object.entries(e))nO(Bc(s),o??{},t)?a[n]=s:r=!0;return r?a:e}function Mx(e,o,t,r){let a=as(o,t,r);return{device:e,parentType:a?.item.type,parent:a?.item.props}}function Dx(e,o){if(!e||typeof e!="object")return!1;let t=e;if(typeof t.context=="string"&&(t.context===o||t.context.startsWith(`${o}.`)))return!0;if("not"in t)return Dx(t.not,o);for(let r of[t.all,t.any])if(Array.isArray(r)&&r.some(a=>Dx(a,o)))return!0;return!1}function W7(e,o={}){return sO({parentType:()=>e.parent?.type??void 0,parent:()=>e.parent?.props??void 0,dynamicPage:()=>ls(),root:()=>e.appState?.data?.root?.props,...o})}var Hx=1;function lO(e){return Wo(e)}function $7(e){let o=lO(e);return o===null?{}:{"--sf-card-image-radius":`${o}px`}}var zx=1,Wx="Corners";function iO(e){return Wo(e)}function V7(e,o){let t=iO(e);if(t===null)return null;let r=`${t}px`;return{borderRadius:Oa(o)?Vt(r,Go(o)??[]):r}}var et={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]]},twoThenThrees:{label:"Two, then threes",across:3,acrossPhone:3,lead:[[6,1],[6,1]],desktop:[[4,1],[4,1],[4,1]],leadPhone:[[3,1],[3,1]],phone:[[2,1],[2,1],[2,1]]}},Nc=Object.keys(et),Ux=[2,3,4,6];function Mc(e,o){return Nc.filter(t=>t===o||e===null||et[t].across===e)}function $x(e){return typeof e!="string"||e===""?null:et[e]??null}function Gx(e,o){return o?6/e.acrossPhone:12/e.across}function jx(e){return[...e.lead??[],...e.desktop]}var cO="sf-wall--";function fO(e){return`${cO}${e}`}function X7(e){let o=et[e],t=`.${fO(e)}`,r=[],a=(n,s,i=[])=>{let c=[],d=n.length,m=i.length;i.forEach(([x,u],h)=>{c.push(`${t} > :nth-child(${h+1}){grid-column:span ${x};grid-row:span ${u}}`)}),n.forEach(([x,u],h)=>{c.push(`${t} > :nth-child(${d}n+${m+h+1}){grid-column:span ${x};grid-row:span ${u}}`)});for(let x=1;x<d;x+=1)c.push(`${t}:has(> :nth-child(${d}n+${m+x}):last-child) > :nth-last-child(-n+${x}){grid-column:span ${s};grid-row:span 1}`);return c};return r.push(`${t}{grid-template-columns:repeat(12,minmax(0,1fr))}`),r.push(...a(o.desktop,Gx(o,!1),o.lead)),r.push("@media (max-width:800px){"),r.push(`${t}{grid-template-columns:repeat(6,minmax(0,1fr))}`),r.push(...a(o.phone,Gx(o,!0),o.leadPhone)),r.push("}"),r.join("")}var is=12,qx=1,dO=3;var uO=3;function Hc(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 pO(e){return Hc(e,1,is)??uO}function J7(e,o){return Hc(e,qx,dO)??(pO(o)===4?2:qx)}function eq(e){return e==null||e===""?null:Hc(e,1,is)}var oq="data-sf-span";function tq(e){if(!e)return!1;if(e.type==="Grid")return!0;if(e.type==="GalleryB"){if($x(e.props?.layout))return!1;let o=e.props?.columns;return o!=null&&o!==""}return!1}import{jsx as mO}from"react/jsx-runtime";import*as xO from"efficient-easel/icons";function cs(e){let o=e.replace(/(^|-)([a-z])/g,(r,a,n)=>n.toUpperCase()),t=xO[`${o}Icon`];return t?mO(t,{size:16}):null}import{isNodeList as hO}from"efficient-easel/data";var Lr=["top-left","top-center","top-right","left","center","right","bottom-left","bottom-center","bottom-right"],Vx="bottom-left",Ar=4,IO=Ar+1,Kx=40,gO=30,yO=100,bO=60,lq=100;var zc={"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 SO(e){let o=Lr.indexOf(La(e));return{band:Math.floor(o/3),column:["start","center","end"][o%3]}}function CO(e){return 1+SO(e).band*(IO+1)}function iq(e){return CO(e)+1}function La(e){return Lr.includes(e)?e:Vx}function cq(e){let o=typeof e=="number"&&Number.isFinite(e)?e:0;return Math.max(-Kx,Math.min(Kx,Math.round(o)))}function fq(e,o=bO){let t=typeof e=="number"&&Number.isFinite(e)?e:o;return Math.max(gO,Math.min(yO,Math.round(t)))}function Wc(e,o){let t=La(o);return e.filter(r=>La(r?.props?.placement)===t).length}function Yx(e){return`${zc[La(e)]} already holds ${Ar} boxes. Move one somewhere else first.`}function Xx(e,o){let t=e.filter(r=>r?.props?.id!==o);return Lr.map(r=>{let a=Wc(t,r)>=Ar,n=zc[r];return a?{value:r,label:n,disabled:!0,title:Yx(r)}:{value:r,label:n}})}function fs(e,o){let t=o===void 0?Vx:La(o?.props?.placement);return Wc(e,t)>=Ar?Yx(t):null}var ds="HeroGroup";function wO(e){return Lr.map(o=>{let t=Wc(e,o);return{anchor:o,total:t,hidden:t-Ar}}).filter(o=>o.hidden>0)}function Gc(e){let o=wO(e);return o.length===0?null:o.map(({anchor:t,total:r,hidden:a})=>{let n=zc[t],s=a===1?"1 is not shown":`${a} are not shown`;return`${n} holds ${r} boxes. The published page draws the first ${Ar}, so ${s}. ${a===1?"Move it":"Move them"} somewhere else.`}).join(" ")}function Zx(e,o){let t=o;if(t?.type!==ds)return null;let r=t.props?.id===void 0?"":String(t.props.id);return r?fs(Uc(e,r),t):null}function Uc(e,o){let t=Jx(e,o);return t&&t.ownerType===vO?t.siblings:[]}function Qx(e,o){let t=Jx(e,o);return t?t.ancestorTypes.filter(r=>r===ds).length:kO}var kO=1,vO="HeroSlide";function Jx(e,o){let t=(r,a,n)=>{if(a>12||!r||typeof r!="object")return null;if(hO(r)){if(r.some(s=>s?.props?.id===o))return{siblings:r,ownerType:n.at(-1)??null,ancestorTypes:n};for(let s of r){let i=s.type,c=t(s,a+1,[...n,String(i)]);if(c)return c}return null}for(let s of Object.values(r)){let i=t(s,a+1,n);if(i)return i}return null};return t(e,0,[])}import{jsx as TO}from"react/jsx-runtime";var $c="sf-hint-keep";function eh({children:e}){return TO("span",{className:$c,children:e})}import{jsx as Tt,Fragment as OO,jsxs as ih}from"react/jsx-runtime";import{useContext as FO,useEffect as LO,useId as AO,useState as ch}from"react";import{SettingsField as RO,SettingsSwitch as BO}from"efficient-easel/panel";import{AnchorIcon as _O}from"efficient-easel/icons";import{ScreenDocumentContext as DO}from"efficient-easel/screen/components/ScreenDocumentContext";import{Snippet as NO}from"efficient-shell/ui";import{slugify as MO}from"efficient-shell/format";var us="homepage";import{slugify as PO}from"efficient-shell/format";var oh=[{value:"page",label:"Page"},{value:"anchor",label:"Anchor"},{value:"blog",label:"Blog post",needs:"service"},{value:"product",label:"Product",needs:"commerce"},{value:"popup",label:"Popup"},{value:"custom",label:"Custom URL"}];function th(e){return e.offersCommerce&&e.offersService?oh:oh.filter(o=>!o.needs||(o.needs==="commerce"?e.offersCommerce:e.offersService))}var jc="#popup:";function rh(e){return`${jc}${e}`}function ah(e){return e.startsWith(jc)&&e.slice(jc.length).trim()||null}function Aa(e){return e===us?"/":`/${e}`}function nh(e){return`/journal/${e}`}function Iq(e){return`/wheels/${e}`}function ps(e,o){return`${Aa(e)}#${o}`}function EO(e){return typeof e=="string"?e.trim():e&&typeof e=="object"&&typeof e.text=="string"?e.text.trim():""}function sh(...e){let o=new Set,t=[];for(let r of e)for(let a of r?.content??[]){let n=EO(a?.props?.anchor);if(!n)continue;let s=PO(n);!s||o.has(s)||(o.add(s),t.push({slug:s,name:n}))}return t}function gq(e){let o=e.indexOf("#"),t=o===-1?e:e.slice(0,o),r=t.indexOf("?");return r===-1?t:t.slice(0,r)}function lh(e){return/^\/wheels\/[^/?#]+(?:[?#].*)?$/.test(e)}import{readHidable as HO}from"efficient-easel/draw";function fh({value:e,onChange:o,nameBox:t}){let r=HO(e).text,[a,n]=ch(!1),s=a||r.trim()!=="",i=AO();return ih(OO,{children:[Tt(RO,{label:l("Add an anchor"),labelId:i,icon:Tt(_O,{}),action:Tt(BO,{checked:s,ariaLabelledBy:i,onChange:c=>{n(c),!c&&r!==""&&o("")}})}),s&&t(e,o),s&&Tt(zO,{name:r})]})}function zO({name:e}){let o=FO(DO),t=o?.templateId?"":o?.currentSlug??"",[r,a]=ch("");LO(()=>a(Or()||window.location.origin),[]);let n=MO(e);if(!n||!t)return null;let s=`${r}${ps(t,n)}`,i=s.replace(/^https?:\/\//,""),c=i.lastIndexOf("#");return Tt("div",{className:"sf-anchor-link",children:Tt(NO,{value:s,label:l("link"),size:"sm",children:ih("span",{className:"sf-anchor-link-text",children:[Tt("span",{className:"sf-anchor-link-path",children:i.slice(0,c)}),Tt("span",{className:"sf-anchor-link-hash",children:i.slice(c)})]})})})}import{AdjustIcon as rR,EyeIcon as aR,AnimationIcon as nR,BackgroundIcon as sR,BorderAllIcon as lR,BlockSectionIcon as iR,ColumnWidthsIcon as Mg,ColumnsIcon as cR,CornerIcon as fR,DirectionDownIcon as dR,DirectionLeftIcon as uR,DirectionRightIcon as pR,DirectionUpIcon as mR,EditIcon as xR,GapIcon as hR,GridIcon as IR,GroundIcon as Hg,HashIcon as zg,HeightIcon as gR,ImageIcon as yR,ListIcon as bR,LocationIcon as Eg,PaddingBottomIcon as Wg,PaddingLeftIcon as Gg,PaddingRightIcon as Ug,PaddingTopIcon as $g,PageIcon as SR,StickyIcon as CR,RotateIcon as wR,SearchIcon as kR,SquareIcon as vR,TypeIcon as TR,WidthIcon as PR}from"efficient-easel/icons";import{jsx as ke,Fragment as Xt,jsxs as Zt}from"react/jsx-runtime";import{CaptionIcon as WO,DateIcon as GO,FlagIcon as UO,TitleIcon as $O,ButtonIcon as jO,DollarIcon as qO,HashIcon as KO,LinkIcon as VO,NoteIcon as YO,TagIcon as XO,TextLinesIcon as ZO}from"efficient-easel/icons";var dh={body:ZO,button:jO,link:VO,label:XO,number:KO,price:qO,note:YO,name:UO,date:GO,caption:WO,title:$O},uh={eyebrow:Zt(Xt,{children:[ke("path",{d:"M5 6.5h5"}),ke("path",{d:"M5 12.5h14"}),ke("path",{d:"M5 18h11"})]}),heading:Zt(Xt,{children:[ke("path",{d:"M6.5 5v14"}),ke("path",{d:"M17.5 5v14"}),ke("path",{d:"M6.5 12h11"})]}),intro:Zt(Xt,{children:[ke("path",{d:"M4 5.5v13"}),ke("path",{d:"M8 7.5h12"}),ke("path",{d:"M8 12h12"}),ke("path",{d:"M8 16.5h8"})]}),value:Zt(Xt,{children:[ke("rect",{x:"2.5",y:"7",width:"19",height:"10",rx:"2"}),ke("path",{d:"M6.5 12h7"})]}),quote:Zt(Xt,{children:[ke("path",{d:"M9.5 5.5C7 7.2 5.5 9.7 5.5 12.8h4v5.7h-5v-5.7"}),ke("path",{d:"M19.5 5.5c-2.5 1.7-4 4.2-4 7.3h4v5.7h-5v-5.7"})]}),tag:Zt(Xt,{children:[ke("rect",{x:"3",y:"5.5",width:"18",height:"13",rx:"2.5"}),ke("path",{d:"M8 9.5h8"}),ke("path",{d:"M12 9.5v5"})]}),meta:Zt(Xt,{children:[ke("path",{d:"M4 7h16"}),ke("path",{d:"M4 14h3.5"}),ke("path",{d:"M10.5 14h3"}),ke("path",{d:"M17 14h3"})]})};function qc({noun:e,size:o=14,strokeWidth:t=1.8,className:r,style:a}){let n=dh[e];return n?ke("span",{className:r,style:{display:"inline-flex",...a},"aria-hidden":"true",children:ke(n,{size:o})}):ke("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:uh[e]})}var Bq=Object.keys(dh);var _q=Object.keys(uh);import{parseHexColor as QO}from"efficient-shell/format";var JO="#ffffff";function Kc(e){return e1(e)?e:JO}function e1(e){return typeof e=="string"&&QO(e)===e.toLowerCase()}function Mq(e){return{"--bg":Kc(e)}}function ph(e,o){let t=e?.content;if(!Array.isArray(t))return null;for(let r of t){if(!r||typeof r!="object")continue;let{type:a,props:n}=r;if(n?.id===o)return null;if(Vc(r,o,0))return{type:typeof a=="string"?a:"",props:n??{}}}return null}function Vc(e,o,t){if(t>12||!e||typeof e!="object")return!1;if(Array.isArray(e))return e.some(a=>Vc(a,o,t+1));let r=e.props;return r&&typeof r=="object"&&r.id===o?!0:Object.values(e).some(a=>Vc(a,o,t+1))}function mh(e,o){let t=e?.content;return Array.isArray(t)?ms(t,o,0)??[]:[]}function ms(e,o,t){if(t>12||!e||typeof e!="object")return null;if(Array.isArray(e)){for(let a of e){let n=ms(a,o,t+1);if(n)return n}return null}let r=e.props;if(r&&typeof r=="object"){if(r.id===o)return[];for(let a of Object.values(r)){let n=ms(a,o,t+1);if(n)return[r,...n]}return null}for(let a of Object.values(e)){let n=ms(a,o,t+1);if(n)return n}return null}import{SettingsDefaultReset as to,SettingsDrill as ER,SettingsField as Be,SettingsGroup as OR,SettingsGroupSub as cZ,SettingsSegmented as FR,SettingsBorder as LR,SettingsSidesEach as AR,SettingsSwitch as $f,borderSides as RR,borderStartEach as BR}from"efficient-easel/panel";import{ListField as _R}from"efficient-easel/fields";import{DisplayChips as DR}from"efficient-shell/ui";function Rr(e){if(!e||typeof e!="object"||Array.isArray(e))return{};let o={};for(let[t,r]of Object.entries(e))typeof r=="boolean"&&(o[t]=r);return o}function xs(e,o){return Rr(e)[o]!==!1}function Yc(e,o,t){let r=Rr(o)[t];return typeof r=="boolean"?r:xs(e,t)}function xh(e){return Object.values(Rr(e)).some(o=>o===!1)}function hh(e){return Object.keys(Rr(e)).length>0}function Ih(e,o,t){let r={...Rr(e)};return t?delete r[o]:r[o]=!1,Object.keys(r).length?r:void 0}function gh(e,o,t){return{...Rr(e),[o]:t}}function Wq(e,o,t){let r=xs(e,t),a=Yc(e,o,t);return r&&a?"":!r&&!a?"hidden":r?"max-[720px]:hidden":"min-[720px]:hidden"}import{AlignmentGrid as NR,Checkbox as mZ,ColorSwatch as MR,CornersInput as HR,DatePicker as xZ,DateTimePicker as zR,FOCAL_DEFAULT as hZ,PictureTiles as WR,IconPicker as GR,IconButton as jg,InputNumber as Og,Slider as UR,Tooltip as Js}from"efficient-shell/ui";import{keptByRow as $R}from"efficient-easel/screen/lib/document/style-fields";import{jsx as w1}from"react/jsx-runtime";import{useEffect as k1,useState as v1}from"react";import{clearRangeOf as T1,markSelection as P1,useCaretEdit as E1}from"efficient-easel/copy";import{TextToolbar as O1}from"efficient-shell/ui";import{applyMark as Vq,markupTools as Yq,MARKUP_TOOLS as Xq,COPY_FIELD_TOOLS as Zq,STOREFRONT_MARKUP as Qq,tokenizeInline as Jq,stripInline as e9,isSafeLinkHref as o9}from"efficient-shell/markup";import{applyMark as u1,clearStyle as p1,markedAt as m1,markupTools as x1,MARKUP_TOOLS as h1,parseMarkup as I1,RETIRED_MARKS as g1,STOREFRONT_MARKUP as y1,tokenizeInline as r9}from"efficient-shell/markup";var Qt=["highlight","strong","quiet"],Jt={highlight:"Highlight",strong:"Bold",quiet:"Quiet"},Uo={highlight:{kind:"wordHighlight",delimiter:"@@"},strong:{kind:"wordStrong",delimiter:"++"},quiet:{kind:"wordQuiet",delimiter:"^^"}},Ch=Object.fromEntries(Qt.map(e=>[Uo[e].kind,e])),wh="data-sf-ws",hs=["accent","text","labels"],kh={accent:"Accent",text:"Text",labels:"Labels"},ot={accent:"var(--accent)",text:"var(--fg)",labels:"var(--fg-dim)"},o1=80,t1=120,r1=100,a1=900,n1=.5,s1=3,l1=-.1,i1=.5,c1=3,Xc={font:null,size:null,weight:null,bold:null,italic:null,lineGap:null,textGap:null,colour:null},f1={highlight:{...Xc},strong:{...Xc},quiet:{...Xc}};function yh(e,o,t){return typeof e!="number"||!Number.isFinite(e)?null:Math.round(Math.min(Math.max(e,o),t))}function bh(e,o,t){if(typeof e!="number"||!Number.isFinite(e))return null;let r=10**c1;return Math.round(Math.min(Math.max(e,o),t)*r)/r}function Sh(e){return typeof e=="boolean"?e:null}function d1(e){let o=typeof e?.font=="string"&&ko.some(r=>r.key===e.font)?e.font:null,t=typeof e?.colour=="string"&&hs.includes(e.colour)?e.colour:null;return{font:o,size:yh(e?.size,o1,t1),weight:yh(e?.weight,r1,a1),bold:Sh(e?.bold),italic:Sh(e?.italic),lineGap:bh(e?.lineGap,n1,s1),textGap:bh(e?.textGap,l1,i1),colour:t}}function vh(e){let o={};for(let t of Qt)o[t]=e&&t in e&&e[t]?d1(e[t]):{...f1[t]};return o}function $q(e){let o=vh(e),t={};for(let r of Qt){let a=o[r],n=`--sf-ws-${r}`;if(a.font){let s=ko.find(i=>i.key===a.font);s&&(t[`${n}-font`]=`var(${s.cssVar})`)}a.size!==null&&(t[`${n}-size`]=`${a.size/100}em`),a.weight!==null&&(t[`${n}-weight`]=String(a.weight)),a.bold!==null&&(t[`${n}-weight-bold`]=a.bold?"700":"400"),a.italic!==null&&(t[`${n}-style`]=a.italic?"italic":"normal"),a.lineGap!==null&&(t[`${n}-line`]=String(a.lineGap)),a.textGap!==null&&(t[`${n}-track`]=`${a.textGap}em`),a.colour!==null&&(t[`${n}-color`]=ot[a.colour])}return t}function jq(e){let o=e?.word_styles??void 0,t={};for(let r of Qt)o&&r in o&&(t[r]=o[r]??null);return vh(t)}var b1=new Set(["strong"]),Th=Qt.map(e=>({open:Uo[e].delimiter,close:Uo[e].delimiter,kind:Uo[e].kind,...b1.has(e)?{wordStart:!0}:{}})),n9=[{style:Uo.highlight.kind,label:Jt.highlight,title:`${Jt.highlight} word style`},{style:Uo.strong.kind,label:Jt.strong,title:`${Jt.strong} word style`},{style:Uo.quiet.kind,label:Jt.quiet,title:`${Jt.quiet} word style`}],S1=new Set(Th.map(e=>e.open)),er=[...y1.filter(e=>!S1.has(e.open)),...Th];function Zc(e){return e.bullet?"- ":e.number!=null?`${e.number}. `:""}function Qc(e){return I1(typeof e=="string"?e:"",er)}var C1=h1.map(e=>e.style).filter(e=>!g1.includes(e)).filter(e=>er.some(o=>o.kind===e));function Ph(){return x1(C1)}var Eh=Object.fromEntries(Qt.map(e=>[Uo[e].kind,Uo[e].delimiter]));function Oh(e,o,t,r){let a=Eh[r];if(!a)return u1(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 Fh(e,o,t,r){let a=Eh[r];return a?o>=a.length&&e.slice(o-a.length,o)===a&&e.slice(t,t+a.length)===a:m1(e,o,t,r)}function Ra(e){return Qc(e).map(o=>Zc(o)+Ah(o.children)).join(`
1
+ import{$ as zm,B as Am,C as Rm,D as Bm,Da as oe,F as _m,G as lc,Ha as Xm,I as Dm,Ia as Zm,J as go,K as $t,Ka as Qn,L as Nm,La as Qm,M as Wo,Ma as Jm,N as Zn,Q as Mm,R as ic,Ra as ex,U as Hm,V as cc,X as fc,a as Ct,b as rc,fa as jt,h as Pm,ha as Wm,i as ac,j as nc,ja as Gm,k as Ge,l as Em,la as Um,m as Om,ma as ko,n as vr,na as Er,o as zo,oa as $m,p as Tr,pa as Jo,q as Pr,qa as dc,ra as uc,s as Fm,v as va,va as Ta,x as Lm,xa as jm,y as sc,za as qm}from"./chunk-WC4XIVX3.js";import{d as Km,e as Pa,f as Vm,g as Ym,j as Or,n as pc}from"./chunk-TI4ZGDSG.js";var pe=e=>typeof e=="string"&&e?e:void 0;var tx="en",Jn=null,rx=tx,ax=null;function _8(e,o,t){Jn=e??null,rx=o||tx,ax=t??null}function X(){return ax}function mc(){return rx}function nx(){return Jn}function ox(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=Jn?Jn[e]:void 0;if(typeof t=="function"){try{let r=pe(t(o??{}));if(r)return r}catch{}return ox(e,o)}return ox(pe(t)??e,o)}function Ze(e,o,t,r){return l(t===1?e:o,{...r,n:t})}import{jsx as xc,Fragment as P0,jsxs as E0}from"react/jsx-runtime";import{createContext as O0,useContext as F0}from"react";var L0={mirrorHostStyles:!0,css:null,fontHrefs:[]},sx=O0(L0);function H8({value:e,children:o}){return xc(sx.Provider,{value:e,children:o})}function hc(){return F0(sx)}function lx(){let{css:e,fontHrefs:o}=hc();return E0(P0,{children:[o.map(t=>xc("link",{rel:"stylesheet",href:t},t)),e?xc("style",{"data-sf-canvas-css":"",children:e}):null]})}import{jsx as A0}from"react/jsx-runtime";import{createContext as R0,useContext as B0}from"react";var ix=R0(void 0);function U8({metadata:e,children:o}){return A0(ix.Provider,{value:e,children:o})}var cx=()=>B0(ix);import{jsx as Le,Fragment as u0,jsxs as Vn}from"react/jsx-runtime";import{useCallback as Yn,useEffect as Xo,useRef as n8,useState as i0}from"react";import{Button as s8,Tooltip as l8}from"efficient-shell/ui";import{SettingsSwitch as i8}from"efficient-easel/panel";import{PagesIcon as c8,StylesIcon as f8}from"efficient-easel/rail";import{PaletteIcon as d8}from"efficient-shell/icons/efficient";import{TemplateIcon as u8}from"efficient-easel/icons";import{Subtree as p8,TreeRow as p0}from"efficient-easel/tree";import{useEasel as m0}from"efficient-easel/easel";import{useEaselStrings as x0}from"efficient-easel/strings";import{createContext as _0,useContext as D0}from"react";var Ic=_0(!1),q8=()=>D0(Ic);import{jsx as ie,Fragment as Hb,jsxs as Qa}from"react/jsx-runtime";import{Fragment as R2,useEffect as B2,useId as _2,useMemo as zb,useRef as D2,useState as _t}from"react";import{useScreenDocument as Vb}from"efficient-easel/screen/components/ScreenDocumentContext";import{UiIcon as Kd}from"efficient-easel/draw/client";import N2 from"efficient-easel/screen/components/SidePanelHead";import{jsx as Q,Fragment as dr,jsxs as fr}from"react/jsx-runtime";import{useEasel as Lb,useRootFields as NN}from"efficient-easel/easel";import{Inspector as MN}from"efficient-easel/fields";import{SettingsGroup as HN}from"efficient-easel/panel";import{useEffect as zN,useRef as WN,useState as Ol}from"react";import{jsx as Kt,Fragment as hE,jsxs as IE}from"react/jsx-runtime";import{useState as Sx}from"react";import{SettingsDefaultReset as gE,SettingsField as yE}from"efficient-easel/panel";import{useEaselStrings as bE}from"efficient-easel/strings";import{AddIcon as SE}from"efficient-easel/icons";import{Button as CE}from"efficient-shell/ui";import{iconOf as wE,noGlyph as kE}from"efficient-easel/screen/lib/document/box-fields";import{jsx as Z,jsxs as kt,Fragment as J0}from"react/jsx-runtime";import{parseHexColor as eE}from"efficient-shell/format";import{Button as bc,IconButton as oE,Tooltip as tE}from"efficient-shell/ui";import{jsx as wt,jsxs as j0}from"react/jsx-runtime";import{AccentIcon as q0}from"efficient-easel/icons";import{Button as K0,Tooltip as V0}from"efficient-shell/ui";import{jsx as qt,jsxs as ux}from"react/jsx-runtime";import{ColorPicker as M0,HexInput as H0}from"efficient-shell/ui";import{SettingsDefaultReset as z0,SettingsField as W0}from"efficient-easel/panel";import{typedHex as gc}from"efficient-easel/pick";import{typedHex as N0}from"efficient-easel/pick";function fx(e){let o=new Set,t=[];return Ge(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?N0(i):null;!c||o.has(c)||(o.add(c),t.push({name:s,value:c}))}}),t}var dx="Not set";function G0({value:e,onChange:o,label:t,id:r,caption:a,inherited:n,ariaLabel:s}){return qt($0,{value:e,onChange:o,label:l(s??t),id:r,caption:a,inherited:n})}function U0(){let{theme:e}=oe();return fx(e).map(o=>({value:o.value,label:o.name}))}function $0({value:e,onChange:o,label:t,id:r,caption:a,inherited:n}){let s=U0(),i=e?null:gc(n??""),c=a!==void 0&&(!e||gc(a)!==gc(e))?a:null,d=m=>{m!==e&&o(m)};return ux("div",{className:"sf-colour",children:[qt(M0,{id:r,value:e,onChange:d,label:t,presets:s,fallback:i??void 0,size:"md",align:"start"}),c!==null?qt("span",{className:"sf-colour-caption",children:c}):qt("span",{className:"sf-colour-hexwrap",children:qt(H0,{value:e||i||"",onChange:d,label:l("{label} hex code",{label:t}),placeholder:e||i?void 0:l(dx),className:i?"sf-colour-hex is-inherited":"sf-colour-hex",size:"md"})})]})}function yo({label:e,icon:o,changed:t,hint:r,onReset:a,resetTo:n,children:s,...i}){return ux(W0,{label:e,icon:o,htmlFor:i.id,changed:t,hint:r,action:a?qt(z0,{words:X()?.panel,label:e,changed:!!t,detail:n,onReset:a}):void 0,children:[G0({...i,label:e}),s]})}function es({label:e,icon:o,value:t,inherited:r,resetTo:a,onChange:n,onReset:s,hint:i}){let c=!!t;return qt(yo,{label:e,icon:o,value:t,inherited:c?void 0:r,onChange:n,changed:c,onReset:s,resetTo:a,hint:i})}function yc(e){return zo(e).background}function Y0(e){let o=Ct(e.accent,yc(e));return o===null?null:{ratio:o,grade:Pr(o)}}function X0(e){let o=yc(e),t=Ct(e.accent,o);return t===null?[]:Fm(e.accent).filter(r=>{let a=Ct(r,o);return a!==null&&a>t&&Pr(a)==="good"})}var Z0={good:"Easy to read","large-only":Tr["large-only"],hard:Tr.hard};function px({value:e,onChange:o}){let t=Y0(e),r=t?.grade,a=t&&t.grade!=="good"?X0(e):[];return wt(yo,{label:l("Main color"),icon:wt(q0,{}),hint:t?l(Z0[t.grade]):void 0,value:e.accent,onChange:n=>o({...e,accent:n}),children:a.length>0?wt("div",{className:"w-full min-w-0",children:j0("div",{className:"sf-readability",children:[wt("p",{className:"sf-readability-advice",children:Q0(r,!0)}),wt("div",{className:"sf-readability-suggestions",children:a.map(n=>{let s=Ct(n,yc(e));return wt(V0,{content:l("Use {colour}",{colour:n.toUpperCase()}),children:wt(K0,{variant:"secondary",className:"sf-readability-suggestion",leftIcon:wt("span",{className:"sf-readability-chip",style:{background:n},"aria-hidden":!0}),onClick:()=>o({...e,accent:n}),children:s?`${s.toFixed(1)}:1`:n.toUpperCase()})},n)})})]})}):null})}function Q0(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 rE,ChevronDownIcon as xx,ChevronUpIcon as aE,GroundIcon as nE,LayoutIcon as sE,SquareIcon as lE,TextSmallIcon as iE,TypeIcon as mx}from"efficient-easel/icons";var Ea=e=>l("Theme {n}",{n:e+1});function hx({colors:e}){let o=zo(e),t=va(e)??o.accent;return kt("span",{className:"sf-theme-page",style:{background:o.background,color:o.text},"aria-hidden":!0,children:[Z("span",{className:"sf-theme-eyebrow",style:{color:o.muted},children:l("label")}),kt("span",{className:"sf-theme-headline",children:[l("Heading")," ",Z("span",{style:{color:o.accent},children:l("accent")})]}),Z("span",{className:"sf-theme-body",children:l("body text")}),kt("span",{className:"sf-theme-row",children:[Z("span",{className:"sf-theme-btn",style:{background:t,color:sc(e,o.accent)},children:l("button")}),Z("span",{className:"sf-theme-mini",style:{background:o.surface,borderColor:o.line},children:l("card")})]})]})}var Sc={"Text color":Z(mx,{}),"Label color":Z(iE,{}),Background:Z(nE,{}),"Panels & cards":Z(sE,{}),Borders:Z(lE,{}),"Button color":Z(rE,{}),"Button text color":Z(mx,{})};function cE({label:e,colorKey:o,value:t,onChange:r,idPrefix:a="sf-theme-ink"}){let n=`${a}-${o}`;return Z(yo,{label:l(e),icon:Sc[e],id:n,value:t,onChange:s=>r(o,s)})}function fE({value:e,accent:o,onChange:t,idPrefix:r="sf-theme-ink"}){let a=`${r}-button`,n=e!==void 0&&eE(e)===e.toLowerCase(),s=n?e:o;return Z(yo,{label:l("Button color"),icon:Sc["Button color"],id:a,value:s,caption:n?s:l("Main"),onChange:t})}function dE({colors:e,accent:o,onChange:t,idPrefix:r="sf-theme-ink"}){let a=`${r}-button-ink`,n=Lm(e),s=sc(e,o),i=va(e)??o,c=Pr(Ct(s,i)??0);return Z(yo,{label:l("Button text color"),icon:Sc["Button text color"],hint:n&&c!=="good"?l("{grade} on the button",{grade:l(Tr[c])}):void 0,id:a,value:s,caption:n?s:l("Auto"),onChange:t})}var uE=[{colour:!0},{label:"Text color",key:"text"},{label:"Label color",key:"muted"},{button:!0},{buttonInk:!0},{moduleBreak:!0},{label:"Background",key:"background"},{label:"Panels & cards",key:"surface"},{label:"Borders",key:"line"}];function Cc({colors:e,onChange:o,idPrefix:t}){let r=zo(e);return Z(J0,{children:uE.map(a=>"colour"in a?Z(px,{value:e,onChange:o},"colour"):"moduleBreak"in a?Z("div",{className:"sf-theme-module-break","aria-hidden":"true"},"module-break"):"button"in a?Z(fE,{value:e.button,accent:r.accent,onChange:n=>o({...e,button:n}),idPrefix:t},"button"):"buttonInk"in a?Z(dE,{colors:e,accent:r.accent,onChange:n=>o({...e,buttonInk:n}),idPrefix:t},"buttonInk"):Z(cE,{label:a.label,colorKey:a.key,value:r[a.key],onChange:(n,s)=>o({...e,[n]:s}),idPrefix:t},a.key))})}function os({index:e,colors:o,selected:t,role:r="radio",open:a,editable:n=!0,onPick:s,onEdit:i,onChangeColors:c}){let d=zo(o),m=Ea(e),x=e<nc.length&&!o.brandInk?nc[e]:null,u=Pr(Ct(d.text,d.background)??0),h=x?JSON.stringify(o)!==JSON.stringify(x):!1,g=a!==void 0;return kt("div",{className:`sf-theme-card${t?" is-selected":""}`,children:[Z("button",{type:"button",role:r,"aria-checked":r==="radio"?t:void 0,"aria-selected":r==="option"?t:void 0,"aria-label":m,className:"sf-theme-pick",onClick:s,children:Z(hx,{colors:o})}),kt("div",{className:"sf-theme-foot",children:[Z("span",{className:"sf-theme-name",children:m}),u!=="good"&&Z("span",{className:"sf-theme-warn",children:l(Tr[u])}),n&&i&&g&&Z("span",{className:"sf-theme-edit",children:Z(tE,{content:a?l("Collapse"):l("Edit colors"),children:Z(oE,{size:"sm","aria-expanded":a,"aria-controls":`sf-theme-colours-${e}`,"aria-label":a?l("Collapse {name}",{name:m}):l("Edit colors for {name}",{name:m}),onClick:i,children:a?Z(aE,{size:14}):Z(xx,{size:14})})})}),n&&i&&!g&&Z(bc,{variant:"secondary",size:"sm",className:"sf-theme-edit","aria-label":l("Edit {name}",{name:m}),onClick:i,children:l("Edit")})]}),a&&kt("div",{id:`sf-theme-colours-${e}`,className:"sf-theme-colours",children:[Z(Cc,{colors:o,onChange:k=>c?.(k)}),x&&Z(bc,{variant:"link",size:"sm",className:"sf-theme-reset",disabled:!h,onClick:()=>c?.({...x}),children:h?l("Reset {name} to the preset",{name:m}):l("Not changed")})]})]})}function Ix({colors:e,name:o,nameId:t,open:r,menuId:a,labelId:n,buttonRef:s,onClick:i,onKeyDown:c,onEdit:d}){return kt("div",{className:"sf-secttheme-btn",children:[Z("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?Z(hx,{colors:e}):Z("span",{className:"sf-secttheme-nopreview","aria-hidden":"true"})}),kt("div",{className:"sf-theme-foot",children:[Z("span",{id:t,className:"sf-theme-name",children:o}),d&&Z(bc,{variant:"secondary",size:"sm",className:"sf-theme-edit","aria-label":l("Edit {name}",{name:o}),onClick:d,children:l("Edit")}),Z("button",{type:"button",className:"sf-secttheme-caret","aria-hidden":"true",tabIndex:-1,onClick:i,children:Z(xx,{size:12,className:"sf-multi-caret","aria-hidden":"true"})})]})]})}import{jsx as ts,Fragment as pE,jsxs as gx}from"react/jsx-runtime";import{Button as yx,Dialog as mE}from"efficient-shell/ui";function xE(e){return Ze("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 bx({count:e,onCancel:o,onConfirm:t}){return gx(mE,{open:!0,onClose:o,role:"alertdialog",size:"sm",title:l("Clear this site\u2019s colors?"),footer:gx(pE,{children:[ts(yx,{variant:"secondary",onClick:o,children:l("Cancel")}),ts(yx,{variant:"danger",onClick:t,children:l("Clear colors")})]}),children:[ts("p",{children:xE(e)}),ts("p",{className:"mt-2 font-medium",children:l("This cannot be undone.")})]})}var vE=kE("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"),TE="Reset color",PE={selected:0,themes:[]};function EE(e){e(PE)}function Cx({value:e,onChange:o}){let t=e?.themes??[],r=t.length===0,a=Ge(e),[n,s]=Sx(!1),i=bE(),[c,d]=Sx(null),m=(O,w)=>{o({...a,themes:a.themes.map((I,b)=>b===O?w:I)})},x=vr(a).accent,u=new Set(a.themes.map(O=>O.brandInk).filter(Boolean)),h=Em.filter(O=>!u.has(O)).map(O=>Om(x,O)),g=[...a.themes,...h],k=O=>{if(O<a.themes.length)return o({...a,selected:O});let w=[...a.themes,g[O]];o({...a,themes:w,selected:w.length-1})},P=()=>{let O=[...a.themes,{...zo(a.themes[a.selected])}];o({...a,themes:O,selected:O.length-1}),d(O.length-1)};return IE(hE,{children:[r?null:Kt(yE,{label:l(TE),icon:wE(vE),labelId:"sf-theme-reset",action:Kt(gE,{label:l("all theme colors"),words:i.panel,changed:!0,onReset:()=>s(!0)})}),n&&Kt(bx,{count:t.length,onCancel:()=>s(!1),onConfirm:()=>{s(!1),EE(o)}}),Kt("div",{className:"sf-theme-list",role:"radiogroup","aria-label":l("Theme"),children:g.map((O,w)=>Kt(os,{index:w,colors:O,selected:w===a.selected,open:c===w&&w<a.themes.length,editable:w<a.themes.length,onPick:()=>k(w),onEdit:()=>d(I=>I===w?null:w),onChangeColors:I=>m(w,I)},w))}),Kt(CE,{variant:"secondary",leftIcon:Kt(SE,{}),onClick:P,className:"sf-theme-add",children:l("Add new theme")})]})}import{jsx as fl}from"react/jsx-runtime";import{SettingsDefaultReset as r_,SettingsField as a_}from"efficient-easel/panel";import{SquareIcon as n_}from"efficient-easel/icons";import{jsx as y,jsxs as jr,Fragment as Lt}from"react/jsx-runtime";import{cloneElement as _g,useEffect as QA,useId as Dg,useRef as Qs,useState as Ha}from"react";import{useEasel as Uf}from"efficient-easel/easel";import{toDateKey as HX,fromDateKey as zX}from"efficient-shell/format";function OE(e){return!!e&&typeof e=="object"&&!Array.isArray(e)&&typeof e.src=="string"}function vt(e){return typeof e=="string"?e:OE(e)?e.src:""}function zj(e,o,t){return wc(e,o.split("."),t)}function wc(e,o,t){if(o.length===0)return t(e);let[r,...a]=o,n=r.endsWith("[]"),s=n?r.slice(0,-2):r;if(!e||typeof e!="object"||Array.isArray(e))return e;let i=e;if(!(s in i))return e;let c=i[s];if(n){if(!Array.isArray(c))return e;let m=!1,x=c.map(u=>{let h=wc(u,a,t);return h!==u&&(m=!0),h});return m?{...i,[s]:x}:e}let d=wc(c,a,t);return d===c?e:{...i,[s]:d}}var FE=["upload","youtube"],LE="upload",Uj={upload:"Upload",youtube:"YouTube"},AE=["background","click"],RE="background",$j={background:"Background",click:"Click to play"};function jj(e){return FE.includes(e)?e:LE}function qj(e){return AE.includes(e)?e:RE}var wx=/^[A-Za-z0-9_-]{11}$/,BE=/^(?:www\.|m\.|music\.)?(?:youtube\.com|youtube-nocookie\.com|youtu\.be)$/;function Kj(e){let o=typeof e=="string"?e.trim():"";if(!o)return null;if(wx.test(o))return o;let t;try{t=new URL(/^[a-z]+:\/\//i.test(o)?o:`https://${o}`)}catch{return null}if(t.protocol!=="https:"&&t.protocol!=="http:"||!BE.test(t.hostname))return null;let r=t.pathname.split("/").filter(Boolean),a=t.hostname.endsWith("youtu.be")?r[0]:r[0]==="watch"?t.searchParams.get("v"):r[0]==="embed"||r[0]==="shorts"||r[0]==="live"||r[0]==="v"?r[1]:null;return a&&wx.test(a)?a:null}function Vj(e,o){let t=o==="click"?"autoplay=1&playsinline=1&rel=0":`autoplay=1&mute=1&loop=1&playlist=${e}&controls=0&playsinline=1&rel=0&disablekb=1`;return`https://www.youtube-nocookie.com/embed/${e}?${t}`}function Yj(e){return`https://i.ytimg.com/vi/${e}/maxresdefault.jpg`}function Xj(e){return`https://i.ytimg.com/vi/${e}/hqdefault.jpg`}var Zj="Play video";var kc={frame:"Video frame",image:"Image"},Qj={any:[{field:"loadingShows",is:"image"},{all:[{not:{field:"loadingShows",set:!0}},{field:"poster",set:!0}]}]};function vc(e){let o=e.loadingShows;return o==="image"?"image":o!=null&&o!==""?"frame":vt(e.poster)?"image":"frame"}function Jj(e){return vt(vc(e)==="image"?e.poster:e.videoFrame)||void 0}import{readHidable as At,hidableText as JA}from"efficient-easel/draw";import{FOLD_FIELD_MARKER as Ng,LINK_FIELD_MARKER as eR,MEDIA_FIELD_MARKER as oR,SCAFFOLD_FIELD_MARKER as tR,TEXT_FIELD_MARKER as nt,foldMetaOf as st,textFieldIdentifier as qX}from"efficient-easel/draw";import{jsx as Fx}from"react/jsx-runtime";import{useCallback as ME}from"react";import{useEasel as HE}from"efficient-easel/easel";import{SettingsAction as zE}from"efficient-easel/panel";import{CORNER_SIDES as rs,hasCornerSubset as Oa,normalizeCornerSides as Go}from"efficient-easel/screen/lib/content/style-keys";function Tc(e){return typeof e=="number"&&Number.isFinite(e)}function r7(e,o){if(!Tc(e))return;let t=Zn(Wo(e));if(Object.keys(t).length===0)return;let r=t[Pc];if(typeof r!="string")return t;let a=Oa(o)?Vt(r,Go(o)??[]):r;return{...t,[_E]:a}}var _E="--sf-section-radius",Pc="--sf-card-radius";function Vt(e,o){return rs.map(t=>o.includes(t)?e:"0").join(" ")}var kx=[{value:"tl",label:"Top left"},{value:"tr",label:"Top right"},{value:"bl",label:"Bottom left"},{value:"br",label:"Bottom right"}];var DE="--sf-card-box-radius";function Ec(e){return typeof e=="number"&&Number.isFinite(e)}function l7(e,o){if(!Ec(e))return;let t=Zn(Wo(e))[Pc];if(typeof t!="string")return;let r=Oa(o)?Vt(t,Go(o)??[]):t;return{[DE]:r}}function vx(e,o){let t=e.find(n=>n?.props?.id===o);if(!t)return[...e];let r=t.props?.cardCorners,a=t.props?.cardCornerSides;return e.map(n=>n?.props?.id===o?n:{...n,props:{...n.props,cardCorners:r,cardCornerSides:a}})}import{locateNode as NE}from"efficient-easel/draw";function Fa(e){if(!e)return null;let o=e.lastIndexOf(":");return o>0?{ownerId:e.slice(0,o),slot:e.slice(o+1)}:null}function as(e,o,t){let r=Fa(t?.zone),a=r?NE(e,o,r.ownerId):null;return a&&r?{...a,slot:r.slot}:null}function Tx(e,o,t){let r=as(e,o,t),a=r?.slot??"",n=r&&Array.isArray(r.item.props[a])?r.item.props[a]:[],s=t?.index??-1,i=s>=0?n[s]:void 0,c=i?.props?.id?String(i.props.id):"",d=Math.max(n.length-1,0);return!r||!c?{can:!1,reason:"unreachable",others:0}:n.length<=1?{can:!1,reason:"alone",others:d}:Ec(i?.props?.cardCorners)?{can:!0,others:d,zone:r.zone,index:r.index,data:{...r.item,props:{...r.item.props,[a]:vx(n,c)}}}:{can:!1,reason:"unset",others:d}}function Px(e){return e.can?Ze("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 Ex(e){return Ze("Applied to {n} card","Applied to {n} cards",e)}function Ox(e,o){e.can&&o(e.zone,e.index,e.data)}import{useSectionOps as WE}from"efficient-easel/screen/lib/document/use-section-ops";var GE="apply-corners-to-siblings",UE="Apply to all cards";function $E({plan:e,onPress:o}){return Fx(zE,{id:GE,label:l(UE),note:Px(e),disabled:!e.can,doneLabel:Ex(e.others),onPress:o})}function Lx(){let{appState:e,config:o}=HE(n=>n),t=WE(),r=Tx(o,e.data.content??[],e.ui.itemSelector),a=ME(()=>{Ox(r,t.replaceComponent)},[r,t]);return Fx($E,{plan:r,onPress:a})}import{isShown as nO,lazyShowWhenContext as sO}from"efficient-shell/format";var Yt="product",ns="recordType",jE={key:Yt,label:"Product",fields:[]},qE=/^[a-z][a-z0-9]*(-[a-z0-9]+)*$/,KE=/^[a-z][A-Za-z0-9]*$/,VE=["text","date"],Ax=new Map,Rx=0;function YE(e){if(typeof e.key!="string"||!qE.test(e.key))throw new Error(`A record type key is lower-case words joined by hyphens, not ${JSON.stringify(e.key)}.`);if(e.key===Yt)throw new Error("The product record type is the builder's own and is not declared by a host.");if(typeof e.label!="string"||!e.label.trim())throw new Error(`The record type ${e.key} has no label.`);let o=new Set;for(let t of e.fields){if(typeof t.key!="string"||!KE.test(t.key)||o.has(t.key))throw new Error(`The record type ${e.key} has a field key it cannot use: ${JSON.stringify(t.key)}.`);if(!VE.includes(t.kind))throw new Error(`The field ${t.key} of ${e.key} has no kind ${JSON.stringify(t.kind)}.`);o.add(t.key)}return{key:e.key,label:e.label.trim(),fields:e.fields.map(t=>({...t}))}}function w7(e){let o=e.map(YE);for(let t of o)Ax.set(t.key,t);o.length&&(Rx+=1)}function Oc(){return[jE,...Ax.values()]}function Fc(){return Rx}function Lc(e){let o=e?.[ns];return typeof o!="string"?Yt:o.trim()||Yt}function Ac(e){return Lc(e)===Yt}var Rc="product",XE="tyre";var ZE="productType",QE={[Rc]:"alloy-wheel",[XE]:"tyre"},JE=["alloy-wheel","tyre"];function Bx(e,o){return Ac(o)?eO(o)??QE[e]??null:null}function eO(e){if(!Ac(e))return null;let o=e?.[ZE];return typeof o=="string"&&JE.includes(o)?o:null}var ss=null,_x=null;function oO(e,o){ss=e,_x=o}function E7(e){oO(e,null)}function O7(){return ss}function ls(){return _x==="dynamic"||ss===Rc}function F7(e){return Bx(ss??"",e)??"alloy-wheel"}import{addShowWhenFacts as tO}from"efficient-shell/format";import{showWhenOf as Bc,shownForOption as rO,truthy as aO,withRowRules as _c,withRowsShownWhen as Dc,withShowWhen as Fr}from"efficient-shell/format";var B7=tO;function Nx(e,o,t){let r=!1,a={};for(let[n,s]of Object.entries(e))nO(Bc(s),o??{},t)?a[n]=s:r=!0;return r?a:e}function Mx(e,o,t,r){let a=as(o,t,r);return{device:e,parentType:a?.item.type,parent:a?.item.props}}function Dx(e,o){if(!e||typeof e!="object")return!1;let t=e;if(typeof t.context=="string"&&(t.context===o||t.context.startsWith(`${o}.`)))return!0;if("not"in t)return Dx(t.not,o);for(let r of[t.all,t.any])if(Array.isArray(r)&&r.some(a=>Dx(a,o)))return!0;return!1}function W7(e,o={}){return sO({parentType:()=>e.parent?.type??void 0,parent:()=>e.parent?.props??void 0,dynamicPage:()=>ls(),root:()=>e.appState?.data?.root?.props,...o})}var Hx=1;function lO(e){return Wo(e)}function $7(e){let o=lO(e);return o===null?{}:{"--sf-card-image-radius":`${o}px`}}var zx=1,Wx="Corners";function iO(e){return Wo(e)}function V7(e,o){let t=iO(e);if(t===null)return null;let r=`${t}px`;return{borderRadius:Oa(o)?Vt(r,Go(o)??[]):r}}var et={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]]},twoThenThrees:{label:"Two, then threes",across:3,acrossPhone:3,lead:[[6,1],[6,1]],desktop:[[4,1],[4,1],[4,1]],leadPhone:[[3,1],[3,1]],phone:[[2,1],[2,1],[2,1]]}},Nc=Object.keys(et),Ux=[2,3,4,6];function Mc(e,o){return Nc.filter(t=>t===o||e===null||et[t].across===e)}function $x(e){return typeof e!="string"||e===""?null:et[e]??null}function Gx(e,o){return o?6/e.acrossPhone:12/e.across}function jx(e){return[...e.lead??[],...e.desktop]}var cO="sf-wall--";function fO(e){return`${cO}${e}`}function X7(e){let o=et[e],t=`.${fO(e)}`,r=[],a=(n,s,i=[])=>{let c=[],d=n.length,m=i.length;i.forEach(([x,u],h)=>{c.push(`${t} > :nth-child(${h+1}){grid-column:span ${x};grid-row:span ${u}}`)}),n.forEach(([x,u],h)=>{c.push(`${t} > :nth-child(${d}n+${m+h+1}){grid-column:span ${x};grid-row:span ${u}}`)});for(let x=1;x<d;x+=1)c.push(`${t}:has(> :nth-child(${d}n+${m+x}):last-child) > :nth-last-child(-n+${x}){grid-column:span ${s};grid-row:span 1}`);return c};return r.push(`${t}{grid-template-columns:repeat(12,minmax(0,1fr))}`),r.push(...a(o.desktop,Gx(o,!1),o.lead)),r.push("@media (max-width:800px){"),r.push(`${t}{grid-template-columns:repeat(6,minmax(0,1fr))}`),r.push(...a(o.phone,Gx(o,!0),o.leadPhone)),r.push("}"),r.join("")}var is=12,qx=1,dO=3;var uO=3;function Hc(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 pO(e){return Hc(e,1,is)??uO}function J7(e,o){return Hc(e,qx,dO)??(pO(o)===4?2:qx)}function eq(e){return e==null||e===""?null:Hc(e,1,is)}var oq="data-sf-span";function tq(e){if(!e)return!1;if(e.type==="Grid")return!0;if(e.type==="GalleryB"){if($x(e.props?.layout))return!1;let o=e.props?.columns;return o!=null&&o!==""}return!1}import{jsx as mO}from"react/jsx-runtime";import*as xO from"efficient-easel/icons";function cs(e){let o=e.replace(/(^|-)([a-z])/g,(r,a,n)=>n.toUpperCase()),t=xO[`${o}Icon`];return t?mO(t,{size:16}):null}import{isNodeList as hO}from"efficient-easel/data";var Lr=["top-left","top-center","top-right","left","center","right","bottom-left","bottom-center","bottom-right"],Vx="bottom-left",Ar=4,IO=Ar+1,Kx=40,gO=30,yO=100,bO=60,lq=100;var zc={"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 SO(e){let o=Lr.indexOf(La(e));return{band:Math.floor(o/3),column:["start","center","end"][o%3]}}function CO(e){return 1+SO(e).band*(IO+1)}function iq(e){return CO(e)+1}function La(e){return Lr.includes(e)?e:Vx}function cq(e){let o=typeof e=="number"&&Number.isFinite(e)?e:0;return Math.max(-Kx,Math.min(Kx,Math.round(o)))}function fq(e,o=bO){let t=typeof e=="number"&&Number.isFinite(e)?e:o;return Math.max(gO,Math.min(yO,Math.round(t)))}function Wc(e,o){let t=La(o);return e.filter(r=>La(r?.props?.placement)===t).length}function Yx(e){return`${zc[La(e)]} already holds ${Ar} boxes. Move one somewhere else first.`}function Xx(e,o){let t=e.filter(r=>r?.props?.id!==o);return Lr.map(r=>{let a=Wc(t,r)>=Ar,n=zc[r];return a?{value:r,label:n,disabled:!0,title:Yx(r)}:{value:r,label:n}})}function fs(e,o){let t=o===void 0?Vx:La(o?.props?.placement);return Wc(e,t)>=Ar?Yx(t):null}var ds="HeroGroup";function wO(e){return Lr.map(o=>{let t=Wc(e,o);return{anchor:o,total:t,hidden:t-Ar}}).filter(o=>o.hidden>0)}function Gc(e){let o=wO(e);return o.length===0?null:o.map(({anchor:t,total:r,hidden:a})=>{let n=zc[t],s=a===1?"1 is not shown":`${a} are not shown`;return`${n} holds ${r} boxes. The published page draws the first ${Ar}, so ${s}. ${a===1?"Move it":"Move them"} somewhere else.`}).join(" ")}function Zx(e,o){let t=o;if(t?.type!==ds)return null;let r=t.props?.id===void 0?"":String(t.props.id);return r?fs(Uc(e,r),t):null}function Uc(e,o){let t=Jx(e,o);return t&&t.ownerType===vO?t.siblings:[]}function Qx(e,o){let t=Jx(e,o);return t?t.ancestorTypes.filter(r=>r===ds).length:kO}var kO=1,vO="HeroSlide";function Jx(e,o){let t=(r,a,n)=>{if(a>12||!r||typeof r!="object")return null;if(hO(r)){if(r.some(s=>s?.props?.id===o))return{siblings:r,ownerType:n.at(-1)??null,ancestorTypes:n};for(let s of r){let i=s.type,c=t(s,a+1,[...n,String(i)]);if(c)return c}return null}for(let s of Object.values(r)){let i=t(s,a+1,n);if(i)return i}return null};return t(e,0,[])}import{jsx as TO}from"react/jsx-runtime";var $c="sf-hint-keep";function eh({children:e}){return TO("span",{className:$c,children:e})}import{jsx as Tt,Fragment as OO,jsxs as ih}from"react/jsx-runtime";import{useContext as FO,useEffect as LO,useId as AO,useState as ch}from"react";import{SettingsField as RO,SettingsSwitch as BO}from"efficient-easel/panel";import{AnchorIcon as _O}from"efficient-easel/icons";import{ScreenDocumentContext as DO}from"efficient-easel/screen/components/ScreenDocumentContext";import{Snippet as NO}from"efficient-shell/ui";import{slugify as MO}from"efficient-shell/format";var us="homepage";import{slugify as PO}from"efficient-shell/format";var oh=[{value:"page",label:"Page"},{value:"anchor",label:"Anchor"},{value:"blog",label:"Blog post",needs:"service"},{value:"product",label:"Product",needs:"commerce"},{value:"popup",label:"Popup"},{value:"custom",label:"Custom URL"}];function th(e){return e.offersCommerce&&e.offersService?oh:oh.filter(o=>!o.needs||(o.needs==="commerce"?e.offersCommerce:e.offersService))}var jc="#popup:";function rh(e){return`${jc}${e}`}function ah(e){return e.startsWith(jc)&&e.slice(jc.length).trim()||null}function Aa(e){return e===us?"/":`/${e}`}function nh(e){return`/journal/${e}`}function Iq(e){return`/wheels/${e}`}function ps(e,o){return`${Aa(e)}#${o}`}function EO(e){return typeof e=="string"?e.trim():e&&typeof e=="object"&&typeof e.text=="string"?e.text.trim():""}function sh(...e){let o=new Set,t=[];for(let r of e)for(let a of r?.content??[]){let n=EO(a?.props?.anchor);if(!n)continue;let s=PO(n);!s||o.has(s)||(o.add(s),t.push({slug:s,name:n}))}return t}function gq(e){let o=e.indexOf("#"),t=o===-1?e:e.slice(0,o),r=t.indexOf("?");return r===-1?t:t.slice(0,r)}function lh(e){return/^\/wheels\/[^/?#]+(?:[?#].*)?$/.test(e)}import{readHidable as HO}from"efficient-easel/draw";function fh({value:e,onChange:o,nameBox:t}){let r=HO(e).text,[a,n]=ch(!1),s=a||r.trim()!=="",i=AO();return ih(OO,{children:[Tt(RO,{label:l("Add an anchor"),labelId:i,icon:Tt(_O,{}),action:Tt(BO,{checked:s,ariaLabelledBy:i,onChange:c=>{n(c),!c&&r!==""&&o("")}})}),s&&t(e,o),s&&Tt(zO,{name:r})]})}function zO({name:e}){let o=FO(DO),t=o?.templateId?"":o?.currentSlug??"",[r,a]=ch("");LO(()=>a(Or()||window.location.origin),[]);let n=MO(e);if(!n||!t)return null;let s=`${r}${ps(t,n)}`,i=s.replace(/^https?:\/\//,""),c=i.lastIndexOf("#");return Tt("div",{className:"sf-anchor-link",children:Tt(NO,{value:s,label:l("link"),size:"sm",children:ih("span",{className:"sf-anchor-link-text",children:[Tt("span",{className:"sf-anchor-link-path",children:i.slice(0,c)}),Tt("span",{className:"sf-anchor-link-hash",children:i.slice(c)})]})})})}import{AdjustIcon as rR,EyeIcon as aR,AnimationIcon as nR,BackgroundIcon as sR,BorderAllIcon as lR,BlockSectionIcon as iR,ColumnWidthsIcon as Mg,ColumnsIcon as cR,CornerIcon as fR,DirectionDownIcon as dR,DirectionLeftIcon as uR,DirectionRightIcon as pR,DirectionUpIcon as mR,EditIcon as xR,GapIcon as hR,GridIcon as IR,GroundIcon as Hg,HashIcon as zg,HeightIcon as gR,ImageIcon as yR,ListIcon as bR,LocationIcon as Eg,PaddingBottomIcon as Wg,PaddingLeftIcon as Gg,PaddingRightIcon as Ug,PaddingTopIcon as $g,PageIcon as SR,StickyIcon as CR,RotateIcon as wR,SearchIcon as kR,SquareIcon as vR,TypeIcon as TR,WidthIcon as PR}from"efficient-easel/icons";import{jsx as ke,Fragment as Xt,jsxs as Zt}from"react/jsx-runtime";import{CaptionIcon as WO,DateIcon as GO,FlagIcon as UO,TitleIcon as $O,ButtonIcon as jO,DollarIcon as qO,HashIcon as KO,LinkIcon as VO,NoteIcon as YO,TagIcon as XO,TextLinesIcon as ZO}from"efficient-easel/icons";var dh={body:ZO,button:jO,link:VO,label:XO,number:KO,price:qO,note:YO,name:UO,date:GO,caption:WO,title:$O},uh={eyebrow:Zt(Xt,{children:[ke("path",{d:"M5 6.5h5"}),ke("path",{d:"M5 12.5h14"}),ke("path",{d:"M5 18h11"})]}),heading:Zt(Xt,{children:[ke("path",{d:"M6.5 5v14"}),ke("path",{d:"M17.5 5v14"}),ke("path",{d:"M6.5 12h11"})]}),intro:Zt(Xt,{children:[ke("path",{d:"M4 5.5v13"}),ke("path",{d:"M8 7.5h12"}),ke("path",{d:"M8 12h12"}),ke("path",{d:"M8 16.5h8"})]}),value:Zt(Xt,{children:[ke("rect",{x:"2.5",y:"7",width:"19",height:"10",rx:"2"}),ke("path",{d:"M6.5 12h7"})]}),quote:Zt(Xt,{children:[ke("path",{d:"M9.5 5.5C7 7.2 5.5 9.7 5.5 12.8h4v5.7h-5v-5.7"}),ke("path",{d:"M19.5 5.5c-2.5 1.7-4 4.2-4 7.3h4v5.7h-5v-5.7"})]}),tag:Zt(Xt,{children:[ke("rect",{x:"3",y:"5.5",width:"18",height:"13",rx:"2.5"}),ke("path",{d:"M8 9.5h8"}),ke("path",{d:"M12 9.5v5"})]}),meta:Zt(Xt,{children:[ke("path",{d:"M4 7h16"}),ke("path",{d:"M4 14h3.5"}),ke("path",{d:"M10.5 14h3"}),ke("path",{d:"M17 14h3"})]})};function qc({noun:e,size:o=14,strokeWidth:t=1.8,className:r,style:a}){let n=dh[e];return n?ke("span",{className:r,style:{display:"inline-flex",...a},"aria-hidden":"true",children:ke(n,{size:o})}):ke("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:uh[e]})}var Bq=Object.keys(dh);var _q=Object.keys(uh);import{parseHexColor as QO}from"efficient-shell/format";var JO="#ffffff";function Kc(e){return e1(e)?e:JO}function e1(e){return typeof e=="string"&&QO(e)===e.toLowerCase()}function Mq(e){return{"--bg":Kc(e)}}function ph(e,o){let t=e?.content;if(!Array.isArray(t))return null;for(let r of t){if(!r||typeof r!="object")continue;let{type:a,props:n}=r;if(n?.id===o)return null;if(Vc(r,o,0))return{type:typeof a=="string"?a:"",props:n??{}}}return null}function Vc(e,o,t){if(t>12||!e||typeof e!="object")return!1;if(Array.isArray(e))return e.some(a=>Vc(a,o,t+1));let r=e.props;return r&&typeof r=="object"&&r.id===o?!0:Object.values(e).some(a=>Vc(a,o,t+1))}function mh(e,o){let t=e?.content;return Array.isArray(t)?ms(t,o,0)??[]:[]}function ms(e,o,t){if(t>12||!e||typeof e!="object")return null;if(Array.isArray(e)){for(let a of e){let n=ms(a,o,t+1);if(n)return n}return null}let r=e.props;if(r&&typeof r=="object"){if(r.id===o)return[];for(let a of Object.values(r)){let n=ms(a,o,t+1);if(n)return[r,...n]}return null}for(let a of Object.values(e)){let n=ms(a,o,t+1);if(n)return n}return null}import{SettingsDefaultReset as to,SettingsDrill as ER,SettingsField as Be,SettingsGroup as OR,SettingsGroupSub as cZ,SettingsSegmented as FR,SettingsBorder as LR,SettingsSidesEach as AR,SettingsSwitch as $f,borderSides as RR,borderStartEach as BR}from"efficient-easel/panel";import{ListField as _R}from"efficient-easel/fields";import{DisplayChips as DR}from"efficient-shell/ui";function Rr(e){if(!e||typeof e!="object"||Array.isArray(e))return{};let o={};for(let[t,r]of Object.entries(e))typeof r=="boolean"&&(o[t]=r);return o}function xs(e,o){return Rr(e)[o]!==!1}function Yc(e,o,t){let r=Rr(o)[t];return typeof r=="boolean"?r:xs(e,t)}function xh(e){return Object.values(Rr(e)).some(o=>o===!1)}function hh(e){return Object.keys(Rr(e)).length>0}function Ih(e,o,t){let r={...Rr(e)};return t?delete r[o]:r[o]=!1,Object.keys(r).length?r:void 0}function gh(e,o,t){return{...Rr(e),[o]:t}}function Wq(e,o,t){let r=xs(e,t),a=Yc(e,o,t);return r&&a?"":!r&&!a?"hidden":r?"max-[720px]:hidden":"min-[720px]:hidden"}import{AlignmentGrid as NR,Checkbox as mZ,ColorSwatch as MR,CornersInput as HR,DatePicker as xZ,DateTimePicker as zR,FOCAL_DEFAULT as hZ,PictureTiles as WR,IconPicker as GR,IconButton as jg,InputNumber as Og,Slider as UR,Tooltip as Js}from"efficient-shell/ui";import{keptByRow as $R}from"efficient-easel/screen/lib/document/style-fields";import{jsx as w1}from"react/jsx-runtime";import{useEffect as k1,useState as v1}from"react";import{clearRangeOf as T1,markSelection as P1,useCaretEdit as E1}from"efficient-easel/copy";import{TextToolbar as O1}from"efficient-shell/ui";import{applyMark as Vq,markupTools as Yq,MARKUP_TOOLS as Xq,COPY_FIELD_TOOLS as Zq,STOREFRONT_MARKUP as Qq,tokenizeInline as Jq,stripInline as e9,isSafeLinkHref as o9}from"efficient-shell/markup";import{applyMark as u1,clearStyle as p1,markedAt as m1,markupTools as x1,MARKUP_TOOLS as h1,parseMarkup as I1,RETIRED_MARKS as g1,STOREFRONT_MARKUP as y1,tokenizeInline as r9}from"efficient-shell/markup";var Qt=["highlight","strong","quiet"],Jt={highlight:"Highlight",strong:"Bold",quiet:"Quiet"},Uo={highlight:{kind:"wordHighlight",delimiter:"@@"},strong:{kind:"wordStrong",delimiter:"++"},quiet:{kind:"wordQuiet",delimiter:"^^"}},Ch=Object.fromEntries(Qt.map(e=>[Uo[e].kind,e])),wh="data-sf-ws",hs=["accent","text","labels"],kh={accent:"Accent",text:"Text",labels:"Labels"},ot={accent:"var(--accent)",text:"var(--fg)",labels:"var(--fg-dim)"},o1=80,t1=120,r1=100,a1=900,n1=.5,s1=3,l1=-.1,i1=.5,c1=3,Xc={font:null,size:null,weight:null,bold:null,italic:null,lineGap:null,textGap:null,colour:null},f1={highlight:{...Xc},strong:{...Xc},quiet:{...Xc}};function yh(e,o,t){return typeof e!="number"||!Number.isFinite(e)?null:Math.round(Math.min(Math.max(e,o),t))}function bh(e,o,t){if(typeof e!="number"||!Number.isFinite(e))return null;let r=10**c1;return Math.round(Math.min(Math.max(e,o),t)*r)/r}function Sh(e){return typeof e=="boolean"?e:null}function d1(e){let o=typeof e?.font=="string"&&ko.some(r=>r.key===e.font)?e.font:null,t=typeof e?.colour=="string"&&hs.includes(e.colour)?e.colour:null;return{font:o,size:yh(e?.size,o1,t1),weight:yh(e?.weight,r1,a1),bold:Sh(e?.bold),italic:Sh(e?.italic),lineGap:bh(e?.lineGap,n1,s1),textGap:bh(e?.textGap,l1,i1),colour:t}}function vh(e){let o={};for(let t of Qt)o[t]=e&&t in e&&e[t]?d1(e[t]):{...f1[t]};return o}function $q(e){let o=vh(e),t={};for(let r of Qt){let a=o[r],n=`--sf-ws-${r}`;if(a.font){let s=ko.find(i=>i.key===a.font);s&&(t[`${n}-font`]=`var(${s.cssVar})`)}a.size!==null&&(t[`${n}-size`]=`${a.size/100}em`),a.weight!==null&&(t[`${n}-weight`]=String(a.weight)),a.bold!==null&&(t[`${n}-weight-bold`]=a.bold?"700":"400"),a.italic!==null&&(t[`${n}-style`]=a.italic?"italic":"normal"),a.lineGap!==null&&(t[`${n}-line`]=String(a.lineGap)),a.textGap!==null&&(t[`${n}-track`]=`${a.textGap}em`),a.colour!==null&&(t[`${n}-color`]=ot[a.colour])}return t}function jq(e){let o=e?.word_styles??void 0,t={};for(let r of Qt)o&&r in o&&(t[r]=o[r]??null);return vh(t)}var b1=new Set(["strong"]),Th=Qt.map(e=>({open:Uo[e].delimiter,close:Uo[e].delimiter,kind:Uo[e].kind,...b1.has(e)?{wordStart:!0}:{}})),n9=[{style:Uo.highlight.kind,label:Jt.highlight,title:`${Jt.highlight} word style`},{style:Uo.strong.kind,label:Jt.strong,title:`${Jt.strong} word style`},{style:Uo.quiet.kind,label:Jt.quiet,title:`${Jt.quiet} word style`}],S1=new Set(Th.map(e=>e.open)),er=[...y1.filter(e=>!S1.has(e.open)),...Th];function Zc(e){return e.bullet?"- ":e.number!=null?`${e.number}. `:""}function Qc(e){return I1(typeof e=="string"?e:"",er)}var C1=h1.map(e=>e.style).filter(e=>!g1.includes(e)).filter(e=>er.some(o=>o.kind===e));function Ph(){return x1(C1)}var Eh=Object.fromEntries(Qt.map(e=>[Uo[e].kind,Uo[e].delimiter]));function Oh(e,o,t,r){let a=Eh[r];if(!a)return u1(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 Fh(e,o,t,r){let a=Eh[r];return a?o>=a.length&&e.slice(o-a.length,o)===a&&e.slice(t,t+a.length)===a:m1(e,o,t,r)}function Ra(e){return Qc(e).map(o=>Zc(o)+Ah(o.children)).join(`
2
2
  `)}function Lh(e,o,t){return p1(e,o,t,er)}function Ah(e){return e.map(o=>o.kind==="text"?o.text:Ah(o.children)).join("")}function F1(e,o,t){return P1(e,o,t,Oh)}function Rh(e,o){let t=T1(o,e.length),r=Lh(e,t.start,t.end);return r.text===e?null:r}function L1(e){let[o,t]=v1(null);return k1(()=>{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 A1({target:e,value:o,onChange:t,disabled:r=!1,label:a="Formatting"}){let n=E1({target:e,onChange:t}),[s,i]=L1(e),c=u=>n(h=>{let g=F1(o,u,h);return i({start:g.selectionStart,end:g.selectionEnd}),g}),d=Ph(),m={};if(s)for(let u of d)m[u.style]=Fh(o,s.start,s.end,u.style);let x=r?null:Rh(o,s);return w1(O1,{offered:new Set(d.map(u=>u.style)),onMark:u=>c(u),pressed:m,disabled:r,"aria-label":l(a),className:"sf-markup-bar",clear:x?{onClear:()=>n(()=>{let u=e.current,h=u&&u.ownerDocument.activeElement===u?{start:u.selectionStart??0,end:u.selectionEnd??0}:null,g=Rh(o,h)??{text:o,selectionStart:h?.start??0,selectionEnd:h?.end??0};return i({start:g.selectionStart,end:g.selectionEnd}),g})}:void 0})}var Jc=A1;import{deviceField as Ne}from"efficient-easel/screen/lib/document/device-fields";import{NO_CONTROL_FIELD as jR,NoControlMark as qR,noControlField as qg}from"efficient-easel/screen/lib/document/panel-no-control-mark";var ef="__ownBox";function Bh(e){return!!e&&typeof e=="object"&&e[ef]===!0}function Is(e,o,t){return typeof e=="number"?e:typeof o=="number"?o:t}var gs=void 0;import{phoneKey as $r}from"efficient-easel/draw";import{jsx as tf,Fragment as _1}from"react/jsx-runtime";import{createContext as D1,useContext as N1}from"react";var ys={ProductGrid:{source:{keep:["slug"]}},GalleryItem:{product:{keep:["code","finish"]}},FeaturedCover:{source:{keep:["slug"]}},LongRead:{source:{keep:["slug"]}}},bs={Events:["posts"],SubscribeBlogs:["posts"]};var R1=["anchor"],B1=/^href$|Href$|^url$|Url$|^link$|^mailto$|^tel$/;function Ba(e){return R1.includes(e)||B1.test(e)}var of={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:[]}},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"}}};of.ContactLocations={"locations[].lat":{verb:"pii"},"locations[].lng":{verb:"pii"},"locations[].mapsUrl":{verb:"pii"},"locations[].geocode":{verb:"pii"}};var g9=Object.fromEntries(Object.entries(ys).map(([e,o])=>[e,Object.keys(o)])),y9=Object.fromEntries(Object.entries(bs).map(([e,o])=>[e,[...o]]));import{NoControlMark as M1}from"efficient-easel/screen/lib/document/panel-no-control-mark";var _h=D1(!1);function Dh({children:e}){return tf(_h.Provider,{value:!0,children:e})}function H1(){return N1(_h)}function Nh({name:e,children:o}){return!H1()||!e||!z1(e)||Ba(e)?tf(_1,{children:o}):tf(M1,{})}function z1(e){return/^[A-Za-z0-9_$]+$/u.test(e)}function oo(e,o,t){return e.some(r=>(typeof r=="object"?r.value:r)===t)?t:o}var rf="off",af="none",nf=[{label:"None",value:"off"},{label:"1, 2, 3",value:"plain"},{label:"01, 02, 03",value:"padded"},{label:"N\xB001, N\xB002",value:"numero"}],sf=[{label:"None",value:"none"},{label:"Hairline",value:"hairline"}];function E9(e){return oo(nf,rf,e)}function O9(e){return oo(sf,af,e)}var Mh="sf-card-index",_a="sf-card-index",F9="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",W1={plain:`counter(${_a})`,padded:`counter(${_a}, decimal-leading-zero)`,numero:`"N\xB0" counter(${_a}, decimal-leading-zero)`};function L9(e,o){return o==="off"?"":`.${e}{counter-reset:${_a}}.${e} .${Mh}{counter-increment:${_a}}.${e} .${Mh}::before{content:${W1[o]}}`}function A9(e){return e==="hairline"?"border border-line hover:border-accent":""}var Hh=[{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 KR}from"efficient-easel/draw";import{jsx as $o}from"react/jsx-runtime";import{SettingsDefaultReset as $1,SettingsField as zh}from"efficient-easel/panel";import{useSelectedFields as G1}from"efficient-easel/easel";function Br(){try{return G1()}catch{return null}}import{FOCAL_DEFAULT as j1}from"efficient-shell/format";import{ImageIcon as Wh,PlayIcon as Gh}from"efficient-easel/icons";import{MediaUploadField as q1}from"efficient-shell/ui";import{useContext as K1}from"react";import{ScreenDocumentContext as V1}from"efficient-easel/screen/components/ScreenDocumentContext";import{phoneKey as Y1}from"efficient-easel/draw";import{usePreviewDevice as X1}from"efficient-easel/draw/client";import{requestMediaPick as Z1}from"efficient-easel/screen/lib/media-picker";import{useEaselHost as Q1}from"efficient-easel/screen/lib/host";import{backendOf as U1}from"efficient-easel/screen/lib/session";var He=U1,Ss=e=>e.blocks;import{useEaselSession as J1}from"efficient-easel/screen/lib/session-context";function eF(e,o){let t=Br(),r=X1()==="mobile";if(!e||!t||o&&!o(t.values??{}))return null;let a=typeof t.values?.[e]=="string"&&t.values[e]?String(t.values[e]):j1,n=Y1(e),s=typeof t.values?.[n]=="string"&&t.values[n]?String(t.values[n]):void 0,i=t.onChange;return{phone:r,desktop:a,own:s,focus:r?s??a:a,set:c=>i(r?n:e,c),clear:()=>i(n,gs)}}function Uh({value:e,onChange:o,label:t,accept:r,placeholder:a,focusKey:n,focusWhen:s,frameKey:i,fieldKey:c}){let d=Q1(),m=J1(),x=l(t),u=r.startsWith("video"),h=eF(u?void 0:n,s),g=K1(V1),k=lf(),P=i&&c?{video:c,frame:i}:null,O=v=>Z1(d,{accept:r,title:x,...v?{file:v}:{}}).then(S=>!S||!P?S?.url??null:(k({[P.video]:S.url,[P.frame]:S.posterUrl??""}),null)),w=P?v=>v?o(v):k({[P.video]:"",[P.frame]:""}):o;if(g&&!g.capabilities.mediaEditing)return $o(zh,{label:x,icon:u?$o(Gh,{}):$o(Wh,{}),children:$o("div",{className:"sf-image-slot-inert",children:u?l("Templates don\u2019t store videos \u2014 this slot stays a placeholder. Each website picks its own after it\u2019s created."):l("Templates don\u2019t store images \u2014 this slot stays a placeholder. Each website picks its own after it\u2019s created.")})});let I=vt(e),b=h?.phone&&I?$o($1,{words:X()?.panel,label:l("Image focus"),changed:!!h.own,detail:l("{value} on desktop",{value:h.desktop}),onReset:h.clear}):void 0;return $o(zh,{label:x,icon:u?$o(Gh,{}):$o(Wh,{}),action:b,children:$o("div",{style:{flex:"1 1 auto",minWidth:0},children:$o(q1,{value:I,onChange:w,onPick:O,accept:u?"video/*":"image/*",kind:u?"video":"image",placeholder:a===void 0?void 0:l(a),maxSizeBytes:He(m).media.maxUploadBytes,...h?{focus:h.focus,onFocusChange:h.set}:{}})})})}import{jsx as $h}from"react/jsx-runtime";import{useId as oF}from"react";import{FieldSelect as tF}from"efficient-easel/fields";import{SettingsField as rF}from"efficient-easel/panel";function aF(e){return e.map(({value:o,label:t,note:r})=>({value:o,label:t,...r?{meta:r}:{}}))}function jh({label:e,options:o,value:t,onChange:r,emptyLabel:a,icon:n,hint:s}){let i=oF(),c=`${i}-label`,d=`${i}-button`,m=Array.isArray(t)?t:[];return $h(rF,{label:l(e),labelId:c,icon:n,hint:s,children:$h(tF,{id:d,multiple:!0,value:m,options:aF(o),onChange:r,placeholder:a===void 0?l("None"):l(a),ariaLabelledBy:`${c} ${d}`,inline:!0})})}import{jsx as De,jsxs as tr,Fragment as IF}from"react/jsx-runtime";import{useCallback as tI,useContext as gF,useId as nI,useRef as rI,useState as aI}from"react";import{ThemeIcon as yF}from"efficient-easel/icons";import{Button as bF,useClickOutside as SF}from"efficient-shell/ui";import{SettingsField as CF}from"efficient-easel/panel";import{ScreenDocumentContext as wF}from"efficient-easel/screen/components/ScreenDocumentContext";import{useCallback as mf,useEffect as Xh,useRef as vs}from"react";import{currentEaselSession as lF}from"efficient-easel/screen/lib/session";import{useEaselSession as iF}from"efficient-easel/screen/lib/session-context";import{useSyncExternalStore as nF}from"react";var Kh,cf=null,or=null,Cs=0,ff=new Set;function df(e){Kh=e;for(let o of ff)o()}function uf(e){cf=e,Cs+=1,or&&clearTimeout(or),or=null,df(void 0)}function Vh(e){Cs+=1,df(e)}function ws(e=250){cf&&(or&&clearTimeout(or),or=setTimeout(()=>{or=null;let o=cf;if(!o)return;let t=++Cs;o().then(r=>{t===Cs&&df(r)}).catch(()=>{})},e))}function qh(){return Kh}function sF(e){return ff.add(e),()=>{ff.delete(e)}}function ks(){return nF(sF,qh,qh)}var pf=new Set;function Yh(e){return pf.add(e),()=>{pf.delete(e)}}async function uK(){let e=(await Promise.allSettled([...pf].map(async o=>o()))).find(o=>o.status==="rejected");if(e)throw e.reason}import{WebsiteBackendError as cF}from"efficient-easel/screen/lib/backend-error";function Zh(e=lF()){return(o,t,r)=>{let a=He(e).theme;return a?a.update(o,r?{siteId:r}:void 0):Promise.reject(new cF("invalid","This backend stores no site theme."))}}function Qh(e){return e.themeFromDocument?{status:"skipped",reason:"template"}:e.token?null:{status:"skipped",reason:"no-token"}}async function fF(e,o=Zh()){let{themeFromDocument:t,token:r,siteId:a,patch:n}=e,s=Qh({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 _r({themeFromDocument:e,tokenRef:o,siteId:t,onResult:r}){let a=vs(null),n=vs({}),s=iF(),i=vs(r);i.current=r;let c=vs(null),d=mf(u=>{if(u.status==="skipped"){let h=`skipped:${u.reason}`;if(c.current===h)return;c.current=h}else c.current=null;i.current?.(u)},[]),m=mf(async()=>{a.current&&(clearTimeout(a.current),a.current=null);let u=n.current;n.current={};let h=await fF({themeFromDocument:e,token:o?.current,siteId:t,patch:u},Zh(s));return d(h),h.status==="saved"&&ws(),h.status==="failed"&&(n.current={...u,...n.current}),h},[e,o,t,d,s]),x=mf((u,h=!1)=>{let g=Qh({themeFromDocument:e,token:o?.current});if(g){d(g);return}n.current={...n.current,...u},a.current&&clearTimeout(a.current),h?m():a.current=setTimeout(()=>{m()},500)},[e,o,m,d]);return Xh(()=>()=>{m()},[m]),Xh(()=>Yh(async()=>{if(!a.current&&Object.keys(n.current).length===0)return;let u=await m();if(u.status==="failed")throw u.error}),[m]),{persist:x,flush:m}}var xf=[{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}],dF=xf.filter(e=>e.ink);function uF(e){let o={color:e.fg};for(let{role:t,token:r}of dF)o[r]=e[t];return o}var pF={fg:"var(--overlay-fg)",line:"color-mix(in srgb, var(--overlay-fg) 24%, transparent)",muted:"color-mix(in srgb, var(--overlay-fg) 76%, transparent)"},Jh=Object.freeze(uF(pF));var Ts=-1,mF="sf-section-accent",eI="Color",oI=new Set(["CategoryBar","DocTabs"]),kK=new Set(["Flex"]),xF=0;function Pt(e){return e===Ts?null:typeof e=="number"&&Number.isInteger(e)&&e>=0?e:xF}function hf(e){return e??Ts}function hF(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 xf)t[`--sf-sec-${r}`]=`var(${o}-${r}, var(--theme-${r}))`;return t}function vK(e){let o=Pt(e.sectionAccent);return o===null?null:{className:mF,style:hF(o)}}var kF="Follow the page",HK="Follow the slideshow",vF=e=>l("Editing {name} changes it everywhere.",{name:e});function TF({colors:e}){if(!e)return De("span",{className:"sf-secttheme-chip sf-secttheme-chip--none","aria-hidden":"true"});let o=zo(e);return tr("span",{className:"sf-secttheme-chip","aria-hidden":"true",children:[De("i",{style:{background:o.background}}),De("i",{className:"sf-secttheme-chip-accent",style:{background:o.accent}})]})}function PF({themes:e,value:o,onPick:t,onEdit:r,menuId:a,followLabel:n}){return tr("div",{className:"sf-multi-menu sf-secttheme-menu",id:a,role:"listbox",children:[n!==void 0&&tr(IF,{children:[tr("button",{type:"button",role:"option","aria-selected":o===null,className:`sf-secttheme-item${o===null?" is-active":""}`,onClick:()=>t(Ts),children:[De(TF,{}),De("span",{className:"sf-secttheme-name",children:l(n)})]}),De("div",{className:"sf-secttheme-sep",role:"presentation"})]}),o!==null&&e[o]&&De("p",{className:"sf-secttheme-oncard",role:"presentation",children:l("{name} is on this section",{name:Ea(o)})}),e.map((s,i)=>i===o?null:De(os,{role:"option",index:i,colors:s,selected:!1,onPick:()=>t(i),onEdit:()=>r(i)},i))]})}function EF({index:e,colors:o,onChange:t,onDone:r}){let a=Ea(e),n=nI();return tr("div",{className:"sf-secttheme-sheet",children:[tr("div",{className:"sf-secttheme-sheet-head",children:[De("span",{children:a}),De(bF,{variant:"secondary",className:"sf-secttheme-done",onClick:r,children:l("Done")})]}),De("div",{className:"sf-secttheme-rows",children:De(Cc,{colors:o,onChange:t,idPrefix:n})}),De("p",{className:"sf-secttheme-warn",children:vF(a)})]})}function sI({value:e,onChange:o,followLabel:t,hint:r}){let{theme:a,setTheme:n}=oe(),s=Ge(a),i=gF(wF),c=i?.tokenRef,d=i?.siteId??null,m=!i?.capabilities?.hasSiteTheme,{persist:x,flush:u}=_r({themeFromDocument:m,tokenRef:c,siteId:d}),h=Ge(s),g=h.themes,k=Pt(e),P=k!==null?g[k]:void 0,O=P??(g.length?vr(h):void 0),[w,I]=aI(!1),[b,v]=aI(null),S=rI(null),E=rI(null),A=nI(),N=tI(()=>{I(!1),v(null)},[]),z=tI(()=>{!w&&b===null||(u(),N())},[w,b,N,u]);SF(S,z);let _=R=>{o(R),N()},T=R=>{if(b===null)return;let F=g.map((U,Y)=>Y===b?R:U),M={...h,themes:F};n(M),x({selected_preset:M.selected,theme_presets:M.themes})};return tr("div",{className:"sf-secttheme",ref:S,children:[De(CF,{label:l("Theme"),icon:De(yF,{}),labelId:`${A}-label`,hint:r,children:De(Ix,{colors:O,onEdit:k!==null?()=>{v(k),I(!1)}:void 0,name:P?Ea(k):l(t??kF),nameId:`${A}-value`,labelId:`${A}-label`,open:w,menuId:A,buttonRef:E,onClick:()=>{v(null),I(R=>!R)},onKeyDown:R=>{R.key==="Escape"&&(w||b!==null)&&(R.preventDefault(),N())}})}),w&&b===null&&De("div",{onKeyDown:R=>{R.key==="Escape"&&(R.preventDefault(),N(),E.current?.focus())},children:De(PF,{themes:g,value:k,onPick:_,onEdit:R=>{v(R),I(!1)},menuId:A,followLabel:t})}),b!==null&&g[b]&&De(EF,{index:b,colors:g[b],onChange:T,onDone:()=>{u(),N(),E.current?.focus()}})]})}import{jsx as lI}from"react/jsx-runtime";import{useId as OF}from"react";import{FieldSelect as FF}from"efficient-easel/fields";import{SettingsField as LF}from"efficient-easel/panel";function AF(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 qK({label:e,options:o,fallback:t,value:r,onChange:a,placeholder:n,bare:s=!1,icon:i}){let c=OF(),d=`${c}-label`,m=`${c}-button`,x=r??"",u=o.some(P=>P.value===x)?x:t,h=l(e),g=n===void 0?void 0:l(n),k=lI(FF,{id:m,value:u,options:AF(o),onChange:a,placeholder:g,searchPlaceholder:g,...s?{ariaLabel:h}:{ariaLabelledBy:`${d} ${m}`},searchable:!0,groupCount:!0,inline:!0});return s?k:lI(LF,{label:h,labelId:d,icon:i,children:k})}import{jsx as ar,jsxs as cL}from"react/jsx-runtime";import{SettingsField as AI}from"efficient-easel/panel";import{LinkIcon as fL}from"efficient-easel/icons";import{LinkPicker as dL,TextLinkField as uL}from"efficient-shell/ui";import{useEffect as LI,useMemo as Fs,useRef as pL,useState as Os}from"react";import{currentEaselSession as RF}from"efficient-easel/screen/lib/session";function iI(){return RF().auth.token}import{currentEaselSession as mL}from"efficient-easel/screen/lib/session";import{useScreenDocument as xL}from"efficient-easel/screen/components/ScreenDocumentContext";var BF=()=>({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"),choosePopup:l("Choose a popup")});function cI(e,o,t){if(!e)return"page";if(ah(e))return"popup";if(e.startsWith("/journal/"))return"blog";if(lh(e))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 If(e,o){let t=BF(),r=e.pages.map(m=>({value:Aa(m.slug),label:m.title})),a=o?.pageOptions?o.pageOptions(r):r,n=a.map(m=>m.value),s=e.pages.map(m=>({label:m.title,options:sh(...m.docs).map(x=>({value:ps(m.slug,x.slug),label:x.name}))})).filter(m=>m.options.length>0),i=m=>{switch(m){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(x=>({value:nh(x.slug),label:x.title||x.slug})),placeholder:t.choosePost};case"product":return{type:"select",options:e.products.map(x=>({value:x.href,label:x.name||x.href})),placeholder:t.chooseProduct};case"popup":return{type:"select",options:(e.popups??[]).map(x=>({value:rh(x.slug),label:x.title||x.slug})),placeholder:t.choosePopup};case"custom":return{type:"text"}}},c=th(e.offers).map(m=>({value:m.value,label:l(m.label),target:i(m.value),...m.value==="anchor"?{hint:t.sectionHint}:{},...m.value==="blog"||m.value==="product"||m.value==="popup"?{hideWhenEmpty:!0}:{}}));if(!o)return{kinds:c,rules:{kindOf:m=>cI(m,n),targetOf:m=>m,readFilter:()=>null,withFilter:m=>m}};let d=m=>{let x=o.withFilter(m,null);return o.listingPaths.includes(x)?x:m};return{kinds:c,rules:{kindOf:m=>cI(m,n,{listingPaths:o.listingPaths,targetOf:d}),targetOf:d,readFilter:o.readFilter,withFilter:o.withFilter},filtersFor:m=>o.listingPaths.includes(m)?o.filtersFor(m):null}}import{useEaselSession as hL}from"efficient-easel/screen/lib/session-context";var $=e=>typeof e=="number"&&Number.isFinite(e)?e:void 0;function Ue(e,o){if(typeof e=="string")return e||o;if(e&&typeof e=="object"&&"text"in e){let t=e.text;return pe(t)??o}return o}function fI(e,o){return $(e)??o}function Et(e,o){return typeof e=="boolean"?e:o}function Ps(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 uI=["delay","scroll","exit"],pI=["all","chosen","except"],mI=["visit","days","never","once"],_F=["all","desktop","phone"],DF=["stop","continue"],xI={min:0,max:60},hI={min:10,max:90},II={min:1,max:90},To={autoOpen:!1,trigger:"delay",autoOpenDelaySec:15,scrollPercent:50,showOn:"all",showOnPages:[],devices:"all",hideAfter:"days",hideDays:7,afterSubmit:"stop",startDate:null,endDate:null};function vo(e,o,t){return typeof o=="string"&&e.includes(o)?o:t}function Dr(e,o,t){let r=fI(e,t);return Math.min(o.max,Math.max(o.min,Math.round(r)))}function NF(e){return typeof e.hideAfter=="string"?vo(mI,e.hideAfter,To.hideAfter):e.oncePerSession===!0?"visit":e.oncePerSession===!1?"never":To.hideAfter}function MF(e){return Array.isArray(e)?e.map(o=>typeof o=="string"?o.trim():"").filter(Boolean).map(o=>o.startsWith("/")?o:`/${o}`):[]}function dI(e){if(typeof e!="string")return null;let o=e.trim();return/^\d{4}-\d{2}-\d{2}$/.test(o)?o:null}function gI(e){let o=e??{},t=To;return{autoOpen:Et(o.autoOpen,t.autoOpen),trigger:vo(uI,o.trigger,t.trigger),autoOpenDelaySec:Dr(o.autoOpenDelaySec,xI,t.autoOpenDelaySec),scrollPercent:Dr(o.scrollPercent,hI,t.scrollPercent),showOn:vo(pI,o.showOn,t.showOn),showOnPages:MF(o.showOnPages),devices:vo(_F,o.devices,t.devices),hideAfter:NF(o),hideDays:Dr(o.hideDays,II,t.hideDays),afterSubmit:vo(DF,o.afterSubmit,t.afterSubmit),startDate:dI(o.startDate),endDate:dI(o.endDate)}}import{parseHexColor as HF}from"efficient-shell/format";var Nr="#000000";var gf="popup",zF=Lr,WF=["auto","full"],GF=["inside","outside","none"],UF={min:240,max:1440},$F={min:0,max:100},Da={placement:"center",fullWidth:!1,width:720,height:"auto",tintColor:Nr,tintOpacity:60,outsideClick:!0,closeButton:"inside"};function jF(e,o){let t=typeof e=="string"?e.trim():"";return t&&HF(t)===t.toLowerCase()?t:o}function yI(e,o=Da){let t=e??{},r=o;return{placement:vo(zF,t.placement,r.placement),fullWidth:Et(t.fullWidth,r.fullWidth),width:Dr(t.width,UF,r.width),height:vo(WF,t.height,r.height),tintColor:jF(t.tintColor,r.tintColor),tintOpacity:Dr(t.tintOpacity,$F,r.tintOpacity),outsideClick:Et(t.outsideClick,r.outsideClick),closeButton:vo(GF,t.closeButton,r.closeButton)}}var bI="cart-drawer",mV="cart-drawer",qF={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 xV(e,o){return o===0?e.subtitleEmpty:o===1?e.subtitleOne:e.subtitleMany.replace("{count}",String(o))}function hV(e){let o=e??{},t=qF;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:Ps(o.promises,t.promises),emptyKicker:Ue(o.emptyKicker,t.emptyKicker),emptyBody:Ue(o.emptyBody,t.emptyBody)}}var IV={...Da,width:520,tintOpacity:68};var CI="consent-banner",SV="consent-banner";var KF=[{value:"bar",label:"Bar"},{value:"card",label:"Card"}],CV="Layout",SI={layout:"bar"},VF=e=>KF.some(o=>o.value===e);function wV(e){let o=Ue((e??{}).layout,SI.layout);return{layout:VF(o)?o:SI.layout}}var kV={...Da,placement:"bottom-center",fullWidth:!0,width:440,tintOpacity:0,outsideClick:!1,closeButton:"none"};var YF="consentWords",XF=["eyebrow","notice","accept","reject","choose"];function yf(e){let o=(e??{})[YF];return typeof o=="string"&&XF.includes(o)?o:null}function bf(e){let o=e?.props;return o?yf(o)!==null?!0:Object.values(o).some(t=>Array.isArray(t)&&t.some(r=>r&&typeof r=="object"&&"props"in r&&bf(r))):!1}var ZF=["meta","eyebrow","heading","body","statName","statValue","formEyebrow","formHeading","formIntro","fieldLabel","option","finePrint","dismiss","doneHeading","doneBody"],PV={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"},QF={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"},EV={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 wI(e){let o={};for(let t of ZF){let r=Jo(e[QF[t]]);r&&(o[t]=r)}return o}var kI={heading:"Join our email list",placeholder:"Email address",buttonLabel:"Subscribe"},JF={lead:"We accept"},vI={...JF,methods:[],size:"sm",align:"start",dataSource:"shop-payment-methods"},Mr="site-footer";var FV=Mr,LV={desktop:!0,tablet:!0,mobile:!0},AV={desktop:!1,tablet:!1,mobile:!1},Sf=1,TI=6,RV=Array.from({length:TI-Sf+1},(e,o)=>Sf+o),Es={desktop:6,tablet:3,mobile:2},eL={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}},rr=e=>Math.min(Math.max(Math.round(e),Sf),TI);function BV(e){if(typeof e=="number")return eL[rr(e)]??{desktop:rr(e),tablet:rr(e),mobile:rr(e)};if(e&&typeof e=="object"){let o=e;return{desktop:rr(o.desktop??Es.desktop),tablet:rr(o.tablet??Es.tablet),mobile:rr(o.mobile??Es.mobile)}}return{...Es}}var Cf="subscribe-popup",GV="subscribe-popup",oL=[Cf,Mr,bI,CI];function EI(e){return oL.includes(e)}var tL=["right","left"],rL={metaLabel:"Meta label",issueLabel:"Label",issueNumber:"00",kicker:"Kicker",heading:`Main heading
3
3
  *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:To.autoOpen,autoOpenDelaySec:To.autoOpenDelaySec,formSlug:"",trigger:To.trigger,scrollPercent:To.scrollPercent,showOn:To.showOn,showOnPages:[],hideAfter:To.hideAfter,hideDays:To.hideDays,formSide:"right",valuePanelOnPhone:!1,sectionAccent:void 0,sectionCorners:void 0,sectionCornerSides:void 0,textStyles:{}},Pe=Ue,aL=Et,OI=Ps;function PI(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 nL(e,o){return Array.isArray(e)?OI(e,[]):o}function sL(e,o){return Array.isArray(e)?e.map(t=>{let r=t??{};return{label:Pe(r.label,""),value:Pe(r.value,"")}}).filter(t=>t.label||t.value):o}function $V(e){let o=e??{},t=rL,r=gI(o);return{metaLabel:Pe(o.metaLabel,t.metaLabel),issueLabel:PI(o.issueLabel,t.issueLabel),issueNumber:PI(o.issueNumber,t.issueNumber),kicker:Pe(o.kicker,t.kicker),heading:Pe(o.heading,t.heading),deck:Pe(o.deck,t.deck),stats:sL(o.stats,t.stats),formLabel:Pe(o.formLabel,t.formLabel),formHeading:Pe(o.formHeading,t.formHeading),formIntro:Pe(o.formIntro,t.formIntro),firstNameLabel:Pe(o.firstNameLabel,t.firstNameLabel),firstNamePlaceholder:Pe(o.firstNamePlaceholder,t.firstNamePlaceholder),emailLabel:Pe(o.emailLabel,t.emailLabel),emailPlaceholder:Pe(o.emailPlaceholder,t.emailPlaceholder),interestsLabel:Pe(o.interestsLabel,t.interestsLabel),interests:OI(o.interests,t.interests),frequencyLabel:Pe(o.frequencyLabel,t.frequencyLabel),frequencies:nL(o.frequencies,t.frequencies),submitText:Pe(o.submitText,t.submitText),finePrint:Pe(o.finePrint,t.finePrint),dismissText:Pe(o.dismissText,t.dismissText),emailInvalidText:Pe(o.emailInvalidText,t.emailInvalidText),submitErrorText:Pe(o.submitErrorText,t.submitErrorText),successHeading:Pe(o.successHeading,t.successHeading),successBody:Pe(o.successBody,t.successBody),keepBrowsingText:Pe(o.keepBrowsingText,t.keepBrowsingText),formSlug:typeof o.formSlug=="string"?o.formSlug.trim():t.formSlug,autoOpen:r.autoOpen,autoOpenDelaySec:r.autoOpenDelaySec,trigger:r.trigger,scrollPercent:r.scrollPercent,showOn:r.showOn,showOnPages:r.showOnPages,hideAfter:r.hideAfter,hideDays:r.hideDays,formSide:vo(tL,o.formSide,t.formSide),valuePanelOnPhone:aL(o.valuePanelOnPhone,t.valuePanelOnPhone),sectionAccent:o.sectionAccent,sectionCorners:o.sectionCorners,sectionCornerSides:o.sectionCornerSides,textStyles:wI(o)}}function lL(e,o=Math.random){for(;;){let t=`popup-${Math.floor(o()*2176782336).toString(36).padStart(6,"0")}`;if(!e.has(t))return t}}function iL(e){return{root:{props:{title:e,kind:gf}},content:[],zones:{}}}function FI(e,o,t){return{slug:lL(o,t),title:e,kind:"lightbox",layout:iL(e)}}function wf(e){return e?.root?.props?.kind===gf}function RI(e){let o=new Map;return(t="")=>{let r=iI(),a=o.get(t);if(!a||a.token===null&&r!==null){let n=r||!mL().usesBridgedToken?e(r??"",t).catch(()=>[]):Promise.resolve([]);return o.set(t,{promise:n,token:r}),n}return a.promise}}var IL=RI(async(e,o)=>{let t=o?{siteId:o}:void 0,{pages:r}=He();return r.linkTargets?r.linkTargets(t):(await r.list(t)).map(a=>({id:a.id,slug:a.slug,label:a.label,layout:null}))}),gL=RI(async(e,o)=>await He().blog?.posts(o?{siteId:o}:void 0)??[]);function yL({value:e,onChange:o,label:t="Link",data:r,filters:a}){let n=Fs(()=>If(r,a),[r,a]),s=l(t);return ar(AI,{label:s,icon:ar(fL,{}),children:ar(dL,{value:e,onChange:i=>o(i),kinds:n.kinds,rules:n.rules,filtersFor:n.filtersFor,label:s})})}function BI(){let{siteId:e,capabilities:o}=xL(),{offersCommerce:t,hasBlog:r}=o,[a,n]=Os([]),[s,i]=Os([]),[c,d]=Os([]),[m,x]=Os(null),u=hL().chrome,h=u?.products?.list,g=u?.linkFilters,k=g?void 0:u?.linkRow,P=pL(!0);LI(()=>(P.current=!0,()=>{P.current=!1}),[]),LI(()=>{let I=!0;return IL(e??void 0).then(b=>I&&P.current&&n(b)),r&&gL(e??void 0).then(b=>I&&P.current&&i(b)),t&&h?.().then(b=>I&&P.current&&d(b)),t&&g?g.load(e).catch(()=>null).then(b=>I&&P.current&&x(()=>b)):x(null),()=>{I=!1}},[e,t,r,h,g]);let O=Fs(()=>({pages:a.filter(I=>!EI(I.slug)&&!wf(I.layout)).map(I=>({slug:I.slug,title:I.label,docs:[I.layout]})),popups:a.filter(I=>I.slug===Cf||wf(I.layout)).map(I=>({slug:I.slug,title:I.label})),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]),w=Fs(()=>m?m(O.pages):null,[m,O]);return{data:O,filters:w,pages:a,offersCommerce:t,HostLinkRow:k}}function cY({label:e,icon:o,text:t,onTextChange:r,link:a,onLinkChange:n}){let{data:s,filters:i}=BI(),c=Fs(()=>If(s,i),[s,i]),d=l(e);return ar(AI,{label:d,icon:o,children:ar(uL,{label:d,text:t,onTextChange:r,link:a,onLinkChange:m=>n(m),kinds:c.kinds,rules:c.rules,filtersFor:c.filtersFor})})}function _I({value:e,onChange:o,label:t="Link"}){let r=typeof e=="string"?e:"",{data:a,filters:n,pages:s,offersCommerce:i,HostLinkRow:c}=BI(),d=a.pages.map(x=>Aa(x.slug)),m=i&&c&&(r==="/"||d.includes(r))?c:void 0;return cL("div",{children:[ar(yL,{value:r,onChange:o,label:t,data:a,filters:n}),m&&ar(m,{value:r,onChange:o,pages:s})]})}import{UiIcon as Fg}from"efficient-easel/draw/client";import{phoneKey as PL,tabletKey as EL}from"efficient-easel/draw";import{AUTO_RULES as bL,FOLLOW_RULES as SL,VIEW_DESKTOP_MIN as CL,VIEW_TABLET_MIN as DI,isAuto as wL,resolveViewValue as kL}from"efficient-easel/draw";var vL="v1";function TL(){return vL==="v2"?bL:SL}var NI=.02,uY=`(min-width: ${DI}px) and (max-width: ${CL-NI}px)`,Ls=`(max-width: ${DI-NI}px)`;function MI(e,o,t,r,a=TL()){let n=kL(e,o,t,r,a),s={},i=(c,d)=>!wL(c)||d!=null&&d!==o;return i(t,n.tablet)&&(s.tablet=n.tablet),i(r,n.phone)&&(s.phone=n.phone),s}var Po={min:10,max:200,step:10};function OL(e,o){let t=$(e),r=$(o);if(!(t===void 0&&r===void 0))return{paddingTop:t,paddingBottom:r}}var FL="sf-pad-top-phone",LL="sf-pad-bottom-phone",AL="--sf-pad-t-phone",RL="--sf-pad-b-phone",BL="sf-pad-left-phone",_L="sf-pad-right-phone",DL="--sf-pad-l-phone",NL="--sf-pad-r-phone",ML="sf-pad-top-tablet",HL="sf-pad-bottom-tablet",zL="sf-pad-left-tablet",WL="sf-pad-right-tablet",GL="--sf-pad-t-tablet",UL="--sf-pad-b-tablet",$L="--sf-pad-l-tablet",jL="--sf-pad-r-tablet";function As(e){let o=OL(e.top,e.bottom),t=kf({left:e.left,right:e.right},{top:e.topPhone,bottom:e.bottomPhone,left:e.leftPhone,right:e.rightPhone},{top:e.topTablet,bottom:e.bottomTablet,left:e.leftTablet,right:e.rightTablet},{top:e.top,bottom:e.bottom,left:e.left,right:e.right});return o===void 0&&!t.classes.length&&!Object.keys(t.style).length?null:{className:["sf-section-pad",...t.classes].join(" "),style:{...o,...t.style}}}var qL=[["top","paddingTop",[ML,GL],[FL,AL]],["bottom","paddingBottom",[HL,UL],[LL,RL]],["left","paddingLeft",[zL,$L],[BL,DL]],["right","paddingRight",[WL,jL],[_L,NL]]];function kf(e,o,t={},r=e){let a={},n={},s=[];for(let[i,c,...d]of qL){let m=$(e[i]);m!==void 0&&(a[c]=m);let x=MI("spacing",$(r[i]),$(t[i]),$(o[i]));for(let[u,[h,g]]of[["tablet",d[0]],["phone",d[1]]]){let k=x[u];typeof k=="number"&&(s.push(h),n[g]=`${k}px`)}}return{classes:s,style:{...a,...n}}}function HI(e,o,t){let r=$(e)??t,a=$(o);return r===void 0?a:a===void 0?r:r+a}function Rs(e,o={}){return{top:HI(e.padTop,e.sectionPaddingTop,o.top),bottom:HI(e.padBottom,e.sectionPaddingBottom,o.bottom)}}var vf={top:"sectionPaddingTop",bottom:"sectionPaddingBottom",left:"sectionPaddingLeft",right:"sectionPaddingRight"};function zI(e,o=vf,t=!0){let r={};for(let a of t?["top","bottom","left","right"]:["top","bottom"])r[a]=e[o[a]],r[`${a}Tablet`]=e[EL(o[a])],r[`${a}Phone`]=e[PL(o[a])];return r}function IY(e){return As(e)}function gY(e,o){let t=r=>typeof r=="number"?r+o:void 0;return As({...e,top:t(e.top),bottom:t(e.bottom),topTablet:t(e.topTablet),bottomTablet:t(e.bottomTablet),topPhone:t(e.topPhone),bottomPhone:t(e.bottomPhone)})}import{BUTTON_PAD_KEYS as Bs,buttonBorderOf as KL,buttonFillOpacityOf as VL,buttonPadSidesOf as YL}from"efficient-easel/draw";var XL="px-6 py-4",ZL=4,_s=e=>{let o=new RegExp(`\\bp${e}-(?:\\[(\\d+)px\\]|(\\d+))`).exec(XL);if(!o)throw new Error(`BUTTON_PAD_CLASSES has no p${e}`);return o[1]!==void 0?Number(o[1]):Number(o[2])*ZL},vY={top:_s("y"),right:_s("x"),bottom:_s("y"),left:_s("x")},GI="var(--btn)";function QL(e){let o=e.variant==="ghost",t=VL(e.buttonFillOpacity),r=KL(e.buttonBorder),a=pe(e.buttonColor);return{fillOpacity:t??(o?0:100),border:{width:r?.width??1,color:r?.color??a??(o?"currentColor":GI)},changed:t!==void 0||r!==void 0}}function TY(e){let o=QL(e);if(!o.changed)return null;let t=pe(e.buttonColor)??GI;return{background:o.fillOpacity===0?"transparent":o.fillOpacity===100?t:`color-mix(in srgb, ${t} ${o.fillOpacity}%, transparent)`,borderWidth:o.border.width,borderStyle:"solid",borderColor:o.border.color}}var JL="var(--sf-button-radius, 0)";function PY(e){let o=$(e.buttonCorners),t=Go(e.buttonCornerSides);if(o===void 0&&t===null)return null;let r=o===void 0?JL:`${Math.max(0,o)}px`;return{borderRadius:t===null?r:Vt(r,t)}}function EY(e){let o=a=>YL({top:e[`${Bs.top}${a}`],right:e[`${Bs.right}${a}`],bottom:e[`${Bs.bottom}${a}`],left:e[`${Bs.left}${a}`]})??{},{classes:t,style:r}=kf(o(""),o("Phone"));return Object.keys(r).length?{className:t.join(" "),style:r}:null}var WI="upper";function UI(e,o,t){let r=e&&typeof e=="object"?e:{},a=pe(r.textStyle),n=a?pe(o?.find(m=>m?.id===a)?.name):void 0,s=a?/^(heading|body)-(\d+)$/.exec(a):null,i=a?n||(s?t.styleName({kind:s[1],n:Number(s[2])}):a):t.noStyle,{cases:c}=t,d=pe(r.case)??WI;return`${i} \xB7 ${c[d]??c[WI]}`}import{usePreviewParts as VR}from"efficient-easel/draw/client";import{encodePartId as YR}from"efficient-easel/draw";import{DEFAULT_EASEL_STRINGS as XR,useEaselStrings as ZR}from"efficient-easel/strings";var eA=["auto","fixed","screen"],oA=["px","%"];var tA="var(--sf-header-h, 88px)",Tf={min:40,max:2e3,step:10,fallback:600},Pf={min:10,max:200,step:5,fallback:100},rA="sf-section-minh",$I={base:"--sf-section-minh",small:"--sf-section-minh-s"},qI=e=>typeof e=="string"&&eA.includes(e),aA=e=>typeof e=="string"&&oA.includes(e);function Ds(e){let o=qI(e.sectionHeightMode)?e.sectionHeightMode:"auto",t=o==="screen"?"%":aA(e.sectionHeightUnit)?e.sectionHeightUnit:"px",r=o==="screen"?Pf.fallback:Tf.fallback,a=typeof e.sectionHeightValue=="number"?e.sectionHeightValue:r;return{mode:o,value:a,unit:t}}function KI(e){let{mode:o,value:t,unit:r}=Ds(e);if(o==="auto")return;if(o==="fixed"&&r==="px")return[`${t}px`,null];let a=t/100,n=s=>o==="screen"?`(100${s} - ${tA})`:`100${s}`;return[`calc(${n("vh")} * ${a})`,`calc(${n("svh")} * ${a})`]}function VI(e){let o=KI(e);if(!o)return;let[t,r]=o;return{display:"grid",[$I.base]:t,...r?{[$I.small]:r}:{}}}var FY=new Set(["Hero","HeroSingle","IntroBleed","CategoryBar","DocTabs"]),Hr="Height",nA="sf-section-minh-phone",jI={base:"--sf-section-minh-p",small:"--sf-section-minh-ps"};function Ef(e){return qI(e.sectionHeightModePhone)}function LY(e){return Ds({sectionHeightMode:e.sectionHeightModePhone,sectionHeightValue:e.sectionHeightValuePhone,sectionHeightUnit:e.sectionHeightUnitPhone})}function sA(e){let o=VI(e),t=Ef(e)?KI({sectionHeightMode:e.sectionHeightModePhone,sectionHeightValue:e.sectionHeightValuePhone,sectionHeightUnit:e.sectionHeightUnitPhone})??(o?["auto",null]:void 0):void 0;if(!o&&!t)return null;let r=[rA],a={...o??{}};return t&&(r.push(nA),a[jI.base]=t[0],t[1]&&(a[jI.small]=t[1])),{className:r.join(" "),style:a}}function lA(e){return sA(e)!==null}var iA="grid",AY="h-full",cA="max-[720px]:grid";function YI(e){return lA(e)?VI(e)?iA:cA:""}var Ns="Stick to top",Ot={min:0,max:200,step:4,fallback:0},fA="sf-section-stick",dA="sf-section-stick-phone-on",uA="sf-section-stick-phone-off",XI={desktop:"--sf-stick-distance",phone:"--sf-stick-distance-phone"},_Y=new Set(["CategoryBar","DocTabs","IntroBleed"]);function ZI(e){let o=$(e)??Ot.fallback;return Math.min(Ot.max,Math.max(Ot.min,Math.round(o)))}function Of(e){return typeof e.stickTopPhone=="boolean"}function Ff(e){let o=e.stickTop===!0,t=ZI(e.stickTopDistance),r=Of(e),a=r?e.stickTopPhone===!0:o,n=r?ZI(e.stickTopDistancePhone):t;return{desktop:o,desktopDistance:t,phone:a,phoneDistance:n,ownPhone:r}}function DY(e){let o=Ff(e);if(!o.desktop&&!o.phone)return null;let t=[fA],r={};return o.desktop&&(r[XI.desktop]=`${o.desktopDistance}px`),(o.ownPhone||o.phone!==o.desktop)&&(t.push(o.phone?dA:uA),o.phone&&(r[XI.phone]=`${o.phoneDistance}px`)),o.desktop||t.push("sf-section-stick-desktop-off"),{className:t.join(" "),style:r}}var pA=["column","row","tabs"];var mA={column:"Stacked",row:"One row",tabs:"Tabs"},QI={Flex:pA,HeroGroup:["column","row"]},xA={Flex:"row",HeroGroup:"column"},hA={column:"flex-col",row:"flex-row",tabs:"flex-col"};function Ms(e,o){return QI[e].includes(o)?o:xA[e]}function MY(e,o){return hA[Ms(e,o)]}function JI(e){return QI[e].map(o=>({label:mA[o],value:o}))}var Na={sectionPaddingTop:0,sectionPaddingBottom:0},eg={start:"justify-start",center:"justify-center",between:"justify-between",end:"justify-end"},og={start:"items-start",center:"items-center",end:"items-end",stretch:"items-stretch"};function zY(e,o){let t=typeof e=="string"&&e in eg?eg[e]:"",r=typeof o=="string"&&o in og?og[o]:"";return[t,r].filter(Boolean).join(" ")}function WY(e){return e===!0||e==="wrap"?"flex-wrap":""}var Hs="Block widths",Lf=[{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]},{label:"2 : 3",value:"twoThree",weights:[2,3]}],zr="[&>*]:min-w-0 [&>*]:flex-1 [&>*]:basis-0",IA={equal:zr,bigLeft:`${zr} [&>*:first-child]:min-[800px]:grow-[2]`,bigRight:`${zr} [&>*:last-child]:min-[800px]:grow-[2]`,biggerLeft:`${zr} [&>*:first-child]:min-[800px]:grow-[3]`,biggerRight:`${zr} [&>*:last-child]:min-[800px]:grow-[3]`,twoThree:`${zr} [&>*:first-child]:min-[800px]:grow-[2] [&>*:last-child]:min-[800px]:grow-[3]`};function gA(e){return typeof e=="string"?IA[e]??"":""}var yA="[&>*]:min-[800px]:basis-[content]";function GY(e){return gA(e)===""?yA:""}var tg="Columns",Af=1,rg=3,ag={2:"max-[800px]:flex-wrap [&>*]:max-[800px]:min-w-0 [&>*]:max-[800px]:basis-[calc((100%_-_var(--sf-gap-len-phone,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-phone,var(--sf-gap-len,0px))_*_2)/3)]"},ng=Lf.filter(e=>e.value==="content"||e.value==="equal"),sg="equal",bA="max-[800px]:flex-wrap [&>*]:max-[800px]:min-w-0 [&>*]:max-[800px]:grow-0 [&>*]:max-[800px]:basis-[content]";function UY(e,o){let t=ag[Number(e)];return t?SA(e,o)?bA:t:"max-[800px]:flex-col"}function SA(e,o){return Number(e)in ag&&o==="content"}var lg="Block spacing",Rf=[{label:"Each block",value:"each"},{label:"Gap only",value:"gap"}],CA="sf-box-gap-only";function $Y(e){return e==="gap"?CA:""}var wA=["solid","dashed","dotted"],kA=["top","right","bottom","left"],qY="sf-section-border",KY="sf-section-border-self",vA=/^#(?:[0-9a-f]{3}|[0-9a-f]{4}|[0-9a-f]{6}|[0-9a-f]{8})$/i,ig=e=>typeof e=="number"&&Number.isFinite(e)?`${Math.min(20,Math.max(0,Math.round(e)))}px`:void 0;function cg(e,{phone:o=!1}={}){if(!e||typeof e!="object")return;let t=o?"-phone":"",r={};for(let a of kA){let n=ig(e[a])??ig(e.width);n!==void 0&&(r[`--sf-border-${a}-width${t}`]=n)}return typeof e.style=="string"&&wA.includes(e.style)&&(r[`--sf-border-style${t}`]=e.style),typeof e.color=="string"&&vA.test(e.color)&&(r[`--sf-border-color${t}`]=e.color.toLowerCase()),Object.keys(r).length?r:void 0}function VY(e,o){let t=cg(e),r=cg(o,{phone:!0});return t||r?{...t,...r}:void 0}var Bf="sf.gapContainer",tt={min:-32,max:64,step:2},ug={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},Wr={Grid:24,Flex:24,FooterGroup:16,HeroGroup:0,Events:24,GalleryB:8,ProductGrid:2},TA=new Set(["Events","GalleryB"]);function Gr(e,o,t){if(typeof o=="number"&&Number.isFinite(o)&&o>=tt.min)return o;if(typeof o=="string"){let r=ug[e]?.[o];if(typeof r=="number")return r}return typeof t=="number"&&Number.isFinite(t)?t:Wr[e]}var PA="sf-gap-overlap",EA="--sf-gap-overlap",pg="--sf-block-gap",OA="--sf-block-gap-rem",nr={min:0,max:tt.max,step:tt.step};function FA(e){if(typeof e!="number"||!Number.isFinite(e))return null;let o=Math.min(Math.max(Math.round(e),nr.min),nr.max);return o-o%nr.step}function XY(e){let o=FA(e);return o===null?{}:{[pg]:`${o}px`,[OA]:`${o/16}rem`}}var fg="sf-gap-zone",dg="--sf-gap-len";function _f(e,o){return typeof o=="number"&&Number.isFinite(o)&&o>=tt.min?!0:typeof o=="string"&&typeof ug[e]?.[o]=="number"}var LA="--sf-gap-len-phone",Df={min:0,max:tt.max,step:tt.step};function zs(e){return typeof e=="number"&&Number.isFinite(e)&&e>=Df.min}function Nf(e,o,t,r){return zs(o)?o:Gr(e,t,r)/2}var AA={block:"sf-gap-overlap-block",inline:"sf-gap-overlap-inline",both:"sf-gap-overlap-both"};function ZY(e,o,t,r){let a=zs(r)?{[LA]:`${r}px`}:{};if(!_f(e,o)){let s=`${Wr[e]}px`,i=TA.has(e)?`var(--sf-card-gap, ${s})`:s;return{className:` ${fg}`,style:{[dg]:`var(${pg}, ${i})`,...a}}}let n=Gr(e,o);return n>=0?{className:` ${fg}`,style:{[dg]:`${n}px`,...a}}:{className:` ${PA} ${AA[t]}`,style:{gap:"0px",[EA]:`${-n/2}px`}}}var mg=["transparent","var(--section-bg)","var(--surface)","var(--surface-2)"],xg={transparent:"No fill","var(--section-bg)":"Section band","var(--surface)":"Panels and cards","var(--surface-2)":"Second surface"},Ws="var(--section-bg)",Gs="inherit";function JY(e,o){return e===Gs?Ws:e===void 0?o:Us(e)}var RA=/var\(\s*--(surface-2|surface|line)\s*(?=[,)])/g;function Us(e){return e.replace(RA,"var(--site-$1")}function hg(e,o){return e===Gs?!0:e===void 0&&o===Ws}var Ig=["transparent","var(--wheel-stage)","var(--surface)","var(--surface-2)"],gg={transparent:"No fill","var(--wheel-stage)":"Image stage","var(--surface)":"Panels and cards","var(--surface-2)":"Second surface"},Ur="var(--wheel-stage)",$s="transparent",Ma="inherit";function tX(e,o){return Us(Mf(e,o))}function Mf(e,o){return e===Ma?Ur:e==null?o:e===!0?Ur:e===!1?$s:e}function rX(e){return typeof e=="string"&&e!==Ma?Us(e):Ur}function aX(e){return e!==$s&&e!=="none"&&e!==""}function yg(e,o){return e===Ma||e===!0?!0:e==null?o===Ur:!1}var bg="inherit",js="fixed",Sg=e=>typeof e!="number"&&e!==js,BA="var(--sf-heading-max, 9999px)";function sX(e,o,t,r){if(typeof e=="number")return`${e}px`;if(e===js)return o;let a=r?`var(--size-${r}, ${o})`:o;return t==="heading"?`min(${a}, ${BA})`:a}var _A=["page","full"],Cg=["full","page"],sr={full:"Full width",page:"Content width"},Hf="inherit",DA=e=>typeof e=="string"&&_A.includes(e),NA=e=>e===Hf;function MA(e,o){return NA(e.widthMode)?{mode:"full",inherited:!0}:DA(e.widthMode)?{mode:e.widthMode,inherited:!1}:{mode:o,inherited:o==="full"}}function iX(e){return MA(e,"page").mode==="full"}var HA={Hero:"hero",HeroSingle:"hero",IntroBleed:"scrollOver",SpecStrip:"background",Timeline:"background",Footprint:"background",Prose:"background",ParagraphsA:"background",Cards:"background",KeyFeatures:"background",Chart:"background",Mockup:"background",Testimonials:"background",TitleWithButtons:"background",Countdown:"background",DocMasthead:"background",DocBody:"background",DocMetaCards:"background",Gallery:"background",GalleryB:"background",Reviews:"background",ReviewForm:"background",Form:"background",AppointmentBooking:"background",FAQ:"background",Events:"background",Split:"both",Breadcrumb:"both",Collections:"both",CatalogFilterBar:"both",AlloyWheelsListing:"both",Banner:"contained",Stats:"contained",Logos:"contained",Divider:"contained",OrderSummary:"contained",DeliveryOptions:"contained",PaymentBadges:"contained",CheckoutCTA:"contained",Flex:"contained",Grid:"contained",ContactCards:"contained",MessagingCards:"contained",OpeningHours:"contained",RateTable:"contained",Manifesto:"contentColumn",SectionHeader:"contentFull",ProductHero:"contentFull",ProductGrid:"productGrid",TimelineTrack:"capped",DetailRows:"capped",FitmentTable:"capped",TyreSizes:"capped",TyreFitment:"capped",EuTyreLabel:"capped",BundleOffer:"capped",CompatibleTyres:"capped",RelatedProducts:"capped",ProcessSteps:"capped",StatsParagraph:"capped",Masthead:"capped",FeaturedCover:"capped",LongRead:"capped",Series:"capped",ContactLocations:"capped",FitmentFinder:"capped",SpecTable:"capped",Subscribe:"capped",SubscribeBlogs:"capped",ContactRouting:"capped",SubmitBuild:"capped"};function cX(e){return Object.prototype.hasOwnProperty.call(HA,e)}var wg="siteWidths",zA=e=>e==="full"||e==="content";function qs(e){return zA(e)?e:null}function kg(e,o){return{[wg]:{background:qs(e),content:qs(o)}}}function fX(e){let o=e.editor?.metadata?.[wg];return{background:qs(o?.background),content:qs(o?.content)}}import{jsx as WA}from"react/jsx-runtime";import{createContext as GA,useContext as mX}from"react";var UA=2,xX=UA+1,$A=GA(2);function vg({tier:e,children:o}){return WA($A.Provider,{value:e,children:o})}import{useEaselSession as QR}from"efficient-easel/screen/lib/session-context";import{BOX_GAP as JR,describedAs as Ft,group as Eo,iconOf as za,sharedStyleKinds as Wa}from"efficient-easel/screen/lib/document/box-fields";import{createElement as Tg}from"react";import{SettingsField as jA}from"efficient-easel/panel";import{boxFieldBuilders as qA,describedAs as KA,iconOf as VA}from"efficient-easel/screen/lib/document/box-fields";import{IconPicker as YA}from"efficient-shell/ui";var XA=e=>l(e),$e=qA(XA),rt=$e.slider,at=$e.select,Ks=$e.Segmented,Vs=$e.segmented,CX=$e.alignmentField,wX=$e.alignmentFields,kX=$e.blockAlignmentField,vX=$e.blockAlignmentFields,TX=$e.boxJustifyField,PX=$e.boxAlignField,EX=$e.boxWrapField,Pg=$e.directionField,zf=$e.gapField,OX=$e.placementField,FX=$e.PlacementGridView,LX=$e.positionFields,Ys=$e.sidesPaddingFields;function AX(e,o,t,r,a={}){let n=s=>t.some(i=>i.value===s);return{type:"custom",...KA({},{type:"radio",label:e,options:t.map(s=>s.label===void 0?{value:s.value}:{value:s.value,label:s.label})}),render:({value:s,onChange:i,field:c})=>{let d=t.map(u=>({value:u.value,...u.label===void 0?{}:{label:l(u.label)},icon:u.picture})),m=c?.currentValue,x=a.resolve?a.resolve(s)??r:n(s)?s:n(m)?m:r;return Tg(jA,{label:l(e),icon:VA(o)},Tg(YA,{label:l(e),value:x,options:d,onChange:i,emptyValue:a.emptyValue}))}}}import{TEXT_CONTROL_KINDS as dQ,SCALAR_TEXT_CONTROLS as uQ}from"efficient-easel/draw";function Kr(e,o){return l("{value} from {from}",{value:e,from:o})}function eB(){let{blockGap:e}=oe();return e===null?l("this container's own spacing"):Kr(`${e}px`,l("Styles"))}function oB({inherited:e,onReset:o,label:t}){return y(to,{words:X()?.panel,label:l(t),changed:!e,detail:eB(),onReset:o})}function tB(e){return zf({...JR,builtIn:Wr[e],resolve:(o,t)=>Gr(e,o,t?.siteGap),action:(o,t)=>y(oB,{inherited:!_f(e,o),onReset:()=>t(void 0),label:"Gap"}),mark:{[Bf]:e}})}function rB(e){return Fr(Ne("mobile",{[Bf]:e,type:"custom",render:o=>y(nB,{container:e,...o})}),aB)}var aB={not:{field:"gap",in:Array.from({length:-tt.min},(e,o)=>tt.min+o)}};function rQ(e){return{gap:Ne("desktop",tB(e)),[$r("gap")]:rB(e)}}function nB({container:e,...o}){let[t]=qr("gap"),r=o.field?.siteGap,a=Nf(e,void 0,t,r);return zf({...Df,builtIn:a,resolve:n=>Nf(e,n,t,r),action:(n,s)=>y(to,{words:X()?.panel,label:l("Gap"),changed:zs(n),detail:Kr(`${a}px`,l("Desktop")),onReset:()=>s(void 0)})}).render(o)}function aQ(e){return Pg({offered:JI(e),fallback:Ms(e,void 0),resolve:o=>Ms(e,o)})}function nQ(e,o){return Xx(o?Uc(e,o):[],o)}function sB({inherited:e,onReset:o,label:t}){return y(to,{words:X()?.panel,label:l(t),changed:!e,detail:Kr(l("Full"),l("the page")),onReset:o})}function lr({value:e,onChange:o,label:t,placeholder:r,hint:a,multiline:n,hideable:s=!0,markup:i=!0}){let{text:c,hidden:d}=At(e),m=Qs(null),x=Qs(null),u=w=>o(s?{text:w,hidden:d}:w),h=()=>o({text:c,hidden:!d}),g=s&&d,k=Dg(),P=a?dB(a)?y("span",{className:"sf-hint-keep sf-hint-while-typing",children:l(a)}):y(eh,{children:l(a)}):void 0,O=d?l("Show {label} on the slide",{label:l(t)}):l("Hide {label} on the slide",{label:l(t)});return y(Be,{label:l(t),icon:y(TR,{}),htmlFor:k,className:g?"is-hidden":void 0,hint:P,action:s?y(Js,{content:O,children:y(jg,{"aria-pressed":d,"aria-label":O,onClick:h,children:d?y(Fg,{name:"eye-off",size:14}):y(Fg,{name:"eye",size:14})})}):void 0,children:jr("div",{className:"sf-copybox",children:[i&&y(Jc,{target:n?x:m,value:c,onChange:u}),n?y("textarea",{id:k,ref:x,value:c,placeholder:r===void 0?void 0:l(r),onChange:w=>u(w.target.value)}):y("input",{id:k,ref:m,type:"text",value:c,placeholder:r===void 0?void 0:l(r),onChange:w=>u(w.target.value)})]})})}function sQ(e,o){return{...e,[tR]:o}}function lQ(e){let o=e[nt];if(!o)throw new Error("withOffPage: the field holds no authored text");return{...e,[nt]:{...o,offPage:!0}}}function ol(e){return!e||typeof e!="object"?!1:e[nt]?.offPage===!0}var Kg="sfPanelOnly";function iQ(e){if(!e[nt])throw new Error("withPanelOnly: the field holds no authored text");return{...e,[Kg]:!0}}function Vg(e){return!!e&&typeof e=="object"&&e[Kg]===!0}function cQ(e){let o=e[nt];if(!o)throw new Error("withIdentifier: the field holds no authored text");return{...e,[nt]:{...o,identifier:!0}}}function pQ(e,o){if(!e[nt])throw new Error("inOwnBox: the field holds no authored text");let{[jR]:t,...r}=e;return{...r,[ef]:!0,render:o}}var lB=new Set(KR),el={type:"radio",options:[{value:!0},{value:!1}]},Yg={text:{type:"object",objectFields:{text:{type:"text"},hidden:el}},textarea:{type:"object",objectFields:{text:{type:"textarea"},hidden:el}},plainText:{type:"text"},copyText:{type:"text"},plainTextarea:{type:"textarea"},textList:{type:"array",arrayFields:{text:{type:"text"}}}},ir=(e,o)=>{let t=Ft({...o,[nt]:e},{...Yg[e.control],label:e.label});if(!lB.has(e.control))return t;let r=o.render;return{...qg(t,"authored-copy"),render:a=>y(Nh,{name:a.name,children:r(a)})}},mQ="Everything else on this block comes from the linked post. Unlink it to edit by hand.",iB={field:"source.slug",set:!0},xQ={not:iB},cB="Select a word, then press the highlighter.",fB=new Set([cB]),dB=e=>fB.has(e);function hQ(e,o,t){return ir({control:"text",label:e,placeholder:o,hint:t},{type:"custom",render:({value:r,onChange:a})=>y(lr,{value:r,onChange:a,label:e,placeholder:o,hint:t})})}function IQ(e,o,t){return ir({control:"textarea",label:e,placeholder:o,hint:t},{type:"custom",render:({value:r,onChange:a})=>y(lr,{value:r,onChange:a,label:e,placeholder:o,hint:t,multiline:!0})})}function gQ(e,o,t){return ir({control:"plainText",label:e,placeholder:o,hint:t},{type:"custom",render:({value:r,onChange:a})=>y(lr,{value:r,onChange:a,label:e,placeholder:o,hint:t,hideable:!1,markup:!1})})}function yQ(e,o,t){return ir({control:"copyText",label:e,placeholder:o,hint:t},{type:"custom",render:({value:r,onChange:a})=>y(lr,{value:r,onChange:a,label:e,placeholder:o,hint:t,hideable:!1})})}function bQ(e){return{type:"custom",[eR]:{label:e},...Ft({},{type:"text",label:e}),render:({value:o,onChange:t})=>y(_I,{value:JA(o),onChange:t,label:e})}}function SQ(e,o,t){return ir({control:"plainTextarea",label:e,placeholder:o,hint:t},{type:"custom",render:({value:r,onChange:a})=>y(lr,{value:r,onChange:a,label:e,placeholder:o,hint:t,multiline:!0,hideable:!1})})}var Xg={Design:rR,Animation:nR};function Zg(e,o){return e.includes("Design")?o!=="Design":null}function CQ(e){return{type:"custom",render:()=>y(uB,{text:e})}}function uB({text:e}){return y("p",{className:"sf-note",children:l(e)})}function wQ(e){return st(e)!==null&&e?.tabs!==void 0}var Lg=new Map;function tl(e,o){let t=`${e}\0${o?o.join(""):""}`,r=Lg.get(t)??{type:"custom",tabs:o,[Ng]:{label:e,level:1},bucket:e,marker:!0,render:()=>y(Lt,{})};return Lg.set(t,r),r}var Ag=new Map;function jf(e){let o=Ag.get(e)??{type:"custom",[Ng]:{label:e,level:1},designGroup:e,marker:!0,...e==="Content"?{}:{fold:e},render:()=>y(Lt,{})};return Ag.set(e,o),o}function pB(e){let o=e;return o?.marker===!0&&typeof o.fold=="string"?o.fold:null}function Qg(e,o){return pB(e)===o?e:{...e,marker:!0,fold:o,render:()=>y(Lt,{})}}function Jg(e){let o=e;if(o.marker===!0&&o.fold===void 0)return e;let{fold:t,...r}=e;return{...r,marker:!0,render:()=>y(Lt,{})}}function qf({title:e,children:o}){let[t,r]=Ha(()=>!Wf.has(e));return y(OR,{title:e,open:t,onToggle:a=>{r(a),a?Wf.delete(e):Wf.add(e)},children:o})}var Wf=new Set;function ey({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 jr("div",{className:"sf-swatches",children:[e.map(i=>{let c=r?.[i]?l(r[i]):i;return y(Js,{content:c,children:y(MR,{color:i,selected:o.toLowerCase()===i.toLowerCase(),onClick:()=>t(i),"aria-label":c})},i)}),y("span",{className:"sf-swatch-hex",children:s})]})}function kQ(e,o){return{type:"custom",render:({value:t,onChange:r})=>{let a=hg(t,o);return y(Be,{label:l(e),icon:y(sR,{}),changed:!a,action:y(to,{words:X()?.panel,label:l(e),changed:!a,detail:l("the theme's section background"),onReset:()=>r(Gs)}),children:ey({swatches:mg,current:a?Ws:t??o??"",onPick:r,names:xg})})}}}function mB(e,o){return{type:"custom",render:({value:t,onChange:r})=>{let a=t,n=yg(a,o);return y(Be,{label:l(e),icon:y(Hg,{}),changed:!n,action:y(to,{words:X()?.panel,label:l(e),changed:!n,detail:l("the theme's image stage"),onReset:()=>r(Ma)}),children:ey({swatches:Ig,current:n?Ur:Mf(a,o),onPick:r,names:gg})})}}}function rl(e=t=>t,o){return Wa({_gSectionTheme:Eo(eI),sectionAccent:{type:"custom",render:({value:t,onChange:r})=>y(sI,{value:e(t),onChange:r,followLabel:o})}})}function co({min:e,max:o,step:t,value:r,onChange:a,suffix:n="",readout:s=!0,notch:i,ariaLabel:c,disabled:d=!1}){let m=i!==void 0&&Number.isFinite(i)&&i>=e&&i<=o;return y("div",{className:m?"sf-slider has-notch":"sf-slider",style:m?{"--sf-notch":(i-e)/(o-e)}:void 0,children:y(UR,{min:e,max:o,step:t,value:r,suffix:n||void 0,showInput:s,label:c===void 0?void 0:l(c),disabled:d,size:"sm",boxSize:"md",className:"sf-slider-track",onChange:x=>{x!==null&&x!==r&&a(x)}})})}function oy(e,o){let{min:t,max:r,step:a=1,unsetLabel:n,hint:s,restTrack:i,unsetMark:c,icon:d,unit:m="px"}=o;return{type:"custom",render:({value:x,onChange:u})=>{let h=typeof x=="number"?x:null,g=h===null;return y(Be,{label:l(e),icon:d?za(d):void 0,value:g?c||n===void 0?void 0:l(n):`${h}${m}`,changed:!g,action:c?_g(c,{changed:!g,onReset:()=>u(null)}):y(to,{words:X()?.panel,label:l(e),changed:!g,onReset:()=>u(null)}),hint:typeof s=="string"?l(s):s,children:i?i({min:t,max:r,step:a,px:h,label:e,onChange:u}):co({min:t,max:r,step:a,value:h??t,readout:!1,ariaLabel:e,onChange:u})})}}}var al="Corners";function Kf(e){return{type:"custom",render:({value:o,onChange:t})=>{let r=typeof o=="number"&&Number.isFinite(o)?o:null,a=r!==null;return y(Be,{label:l(al),icon:y(fR,{}),changed:a,action:_g(e.mark,{changed:a,onReset:()=>t(null)}),hint:e.hint,children:y(xB,{tier:e,px:r,onRadius:t})})}}}function qr(e){let o=Br();return[o?.values?.[e],t=>o?.onChange(e,t)]}function ty(){return qg({type:"custom",render:()=>y(qR,{})},"always")}function lf(){let e=Br();return o=>e?.onChangeMany(o)}function xB({tier:e,px:o,onRadius:t}){let r=e.useFollowed(),[a,n]=qr(e.sidesKey),s=Go(a)??[...rs];return y(HR,{label:l(al),value:s,corners:kx,onChange:i=>{let c=Go(i)??[];n(c.length===rs.length?null:c)},radius:o,onRadiusChange:t,radiusMin:go,radiusMax:$t,radiusStep:e.step??1,radiusPlaceholder:String(r)})}function ry(){return ty()}function hB({label:e,changed:o=!1,onReset:t=()=>{}}){let{cornerRadiusPx:r}=oe(),a=typeof r=="number"?`${r}px`:l("not set");return y(to,{words:X()?.panel,label:l(e),changed:o,detail:r==null?l("the built-in corners"):Kr(a,l("Styles")),onReset:t})}function IB(){let{cornerRadiusPx:e}=oe();return typeof e=="number"?e:go}function gB(){return Kf({sidesKey:"sectionCornerSides",useFollowed:IB,mark:y(hB,{label:al}),hint:yB})}var yB="Follows Styles \u25B8 Basics \u25B8 Corners until you set a number here.";function nl(){return Wa({_gShape:Eo("Shape"),sectionCorners:gB(),sectionCornerSides:ry(),sectionBorder:Rg("desktop"),sectionBorderPhone:Rg("mobile")})}var bB=()=>({width:l("Border width"),sides:{top:l("Border top"),right:l("Border right"),bottom:l("Border bottom"),left:l("Border left")},style:l("Border style"),styles:{solid:l("Solid"),dashed:l("Dashed"),dotted:l("Dotted")},color:l("Border color"),unit:"px"});function SB(e){let o=Object.fromEntries(Object.entries(e).filter(([,t])=>t!=null&&t!==""));return Object.keys(o).length?o:void 0}function CB(){let e;try{let o=Ge(oe().theme);e=o.themes[o.selected]?.line}catch{e=void 0}return e||ac.line}function wB({value:e,onChange:o,placeholder:t,presets:r,sides:a=!0,styles:n=!0,above:s={}}){let i=e&&typeof e=="object"?e:{},[c,d]=Ha(()=>a?BR(i,s):!1),m=bB(),x=u=>SB(a&&n?u:{width:u.width,color:u.color,...n?{style:u.style}:{}});return y(Be,{label:l("Border"),icon:y(lR,{}),action:a?y(AR,{each:c,label:l("Each side"),onChange:d}):void 0,children:y(LR,{label:l("Border"),value:i,each:c,onChange:u=>o(x(u)),placeholder:t,presets:r,words:m,styles:n,max:20})})}function kB({value:e,onChange:o,tier:t}){let[r]=qr("sectionBorder"),a=CB(),n=t==="mobile"?r&&typeof r=="object"?r:{}:{};return y(wB,{value:e,onChange:o,placeholder:{sides:RR(n),style:n.style??"solid",color:n.color||a},presets:[a],above:n})}function Rg(e){return Ne(e,{type:"custom",render:({value:o,onChange:t})=>y(kB,{value:o,onChange:t,tier:e})})}function vQ(e){return{type:"custom",render:()=>y(vB,{partKey:e})}}function vB({partKey:e}){let[o]=qr("id"),[t]=qr("_partStyles"),{textStyles:r}=oe(),a=ZR(),n=null;try{n=VR().select}catch{n=null}let s=t&&typeof t=="object"?t[e]:void 0,i=Array.isArray(r)?r:null;return y(ER,{name:l("Text"),preview:UI(s,i,{noStyle:l("No style"),styleName:a.textStyles.styleName,cases:(a.copy.panel??XR.copy.panel).cases}),onOpen:()=>{n&&typeof o=="string"&&n(YR(o,e))}})}function ay(e){let{cornerRadiusPx:o}=oe(),t=typeof o=="number"?o:e,r=null;try{let{appState:n,selectedItem:s}=Uf(c=>c),i=s?.props?.id?String(s.props.id):void 0;r=i?ph(n?.data,i)?.props??null:null}catch{r=null}if(!r)return t;let a=r.sectionCorners;return Tc(a)?a:t}function TB({label:e,changed:o=!1,onReset:t=()=>{}}){let r=ay(go);return y(to,{words:X()?.panel,label:l(e),changed:o,detail:Kr(`${r}px`,l("the section")),onReset:t})}function PB(){return y(Lt,{children:l("Follows the section's Corners until you set a number here.")})}function EB(){return Kf({sidesKey:"cardCornerSides",useFollowed:()=>ay(go),mark:y(TB,{label:al}),hint:y(PB,{})})}function OB(){return{type:"custom",render:()=>y(Lx,{})}}function TQ(){return{_gShape:Eo("Shape"),cardCorners:EB(),cardCornerSides:ry(),cardCornersApplyAll:OB()}}function FB(e=Lf,o=e[0].value){return Ft({type:"custom",render:({value:t,onChange:r})=>{let a=e.find(n=>n.value===t)??e.find(n=>n.value===o)??e[0];return y(Be,{label:l(Hs),icon:y(Mg,{}),value:l(a.label),children:y(WR,{className:"sf-gallery-layouts",label:l(Hs),value:a.value,onChange:r,options:e.map(n=>({value:n.value,label:l(n.label),picture:y("span",{className:"sf-gallery-pic",children:LB(n.weights).map((s,i)=>y("i",{style:{gridColumn:`span ${s}`}},i))})}))})})}},{type:"select",label:Hs,options:e.map(t=>({value:t.value,label:t.label}))})}function LB(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 PQ(){return at(lg,y(hR,{}),Rf,Rf[0].value)}function EQ(){return Ne("mobile",FB(ng,sg))}function OQ(){return Ne("mobile",rt(tg,y(cR,{}),Af,rg,1,Af))}function FQ(e,o,t,r,a,n){return{type:"custom",render:({value:s,onChange:i})=>y(Be,{label:l(e),icon:y(qc,{noun:n}),action:y(to,{words:X()?.panel,label:l(e),changed:!Sg(s),detail:l("the Text style in Styles"),onReset:()=>i(bg),defaultAction:{onPress:()=>i(js),title:l("Keep this section's own built-in size"),icon:y(iR,{})}}),children:co({min:o,max:t,step:r,value:typeof s=="number"?s:a,suffix:"px",ariaLabel:e,onChange:i})})}}function LQ(){return{_gCellWidth:Eo("Cell width"),gridSpan:at("Positions",y(Mg,{}),[{label:"Auto",value:""},...Array.from({length:is},(e,o)=>({label:o===0?"1 position":`${o+1} positions`,value:String(o+1)}))],"")}}function lt(){let e=null;try{e=Uf(o=>o).selectedItem}catch{e=null}return e?.props??{}}function AB({min:e,max:o,step:t,px:r,label:a,onChange:n,desktopKey:s,fallback:i}){let c=lt()[s],d=Is(void 0,c,i);return y(Lt,{children:co({min:e,max:o,step:t,value:Is(r,c,i),readout:!1,ariaLabel:a,notch:d,onChange:n})})}function RB({label:e,desktopKey:o,fallback:t,unit:r="px",changed:a=!1,onReset:n=()=>{}}){let s=lt()[o],i=Is(void 0,s,t);return y(to,{words:X()?.panel,label:l(e),changed:a,detail:l("{value} on desktop",{value:`${i}${r}`}),onReset:n})}function sl(e){return oy(e.label,{icon:e.icon,min:e.min,max:e.max,step:e.step,unit:e.unit,unsetLabel:"Follows Desktop",unsetMark:y(RB,{label:e.label,desktopKey:e.desktopKey,fallback:e.fallback,unit:e.unit}),restTrack:o=>y(AB,{...o,desktopKey:e.desktopKey,fallback:e.fallback})})}var BB={Top:"Padding top",Bottom:"Padding bottom",Left:"Padding left",Right:"Padding right"},_B={Top:$g,Bottom:Wg,Left:Gg,Right:Ug},DB=e=>{let o=_B[e];return y(o,{})};function AQ(e={}){let o=e.keys?.top??"sectionPaddingTop",t=e.keys?.bottom??"sectionPaddingBottom",r=e.group!==!1,a=P=>BB[P],n=P=>rt(a("Top"),y($g,{}),Po.min,Po.max,Po.step,P,"px"),s=(P,O,w,I=Po)=>Ne("mobile",sl({label:a(P),icon:DB(P),desktopKey:O,min:I.min,max:I.max,step:I.step,fallback:w})),i=e.top??Po.min,c=e.bottom??Po.min,d="sectionPaddingLeft",m="sectionPaddingRight",x=e.sideBounds??Po,u=e.side??x.min,h=e.sidePhone??u,g=e.phone===!0,k=P=>g?Ne("desktop",P):P;return Wa({...r?{_gSpacing:Eo("Padding")}:{},[o]:k(n(i)),...g?{[$r(o)]:s("Top",o,i)}:{},...e.only==="top"?{}:{[t]:k(rt(a("Bottom"),y(Wg,{}),Po.min,Po.max,Po.step,c,"px")),...g?{[$r(t)]:s("Bottom",t,c)}:{}},...e.sides?{[d]:k(rt(a("Left"),y(Gg,{}),x.min,x.max,x.step,u,"px")),...g?{[$r(d)]:s("Left",d,h,x)}:{},[m]:k(rt(a("Right"),y(Ug,{}),x.min,x.max,x.step,u,"px")),...g?{[$r(m)]:s("Right",m,h,x)}:{}}:{}})}function RQ(e,o){let t=Object.fromEntries(Object.entries(o).map(([n,s])=>[n,n in e&&st(s)?e[n]:s])),r={},a=!1;for(let[n,s]of Object.entries(e)){if(n in o){a||Object.assign(r,t),a=!0;continue}r[n]=s}return a||Object.assign(r,t),r}var Xs="Width";function ll(e,o=Cg,t=!0){let r=o.map(a=>({label:sr[a],value:a}));return Wa({...t?{_gWidth:Eo(Xs)}:{},widthMode:{type:"custom",render:({onChange:a,field:n})=>y(Be,{label:l(Xs),icon:y(PR,{}),action:t?y(sB,{inherited:n?.inherited??!1,onReset:()=>a(Hf),label:Xs}):void 0,children:Ks({options:r,value:n?.currentValue||e,onChange:a,ariaLabel:Xs})})}})}function il(){let e=r=>({type:"custom",render:({value:a,onChange:n})=>y(Be,{label:Hr,icon:za(y(gR,{})),action:r?r(n):void 0,children:Ks({options:[{label:"Auto",value:"auto"},{label:"Fixed",value:"fixed"},{label:"Screen",value:"screen"}],value:["auto","fixed","screen"].includes(a)?a:"auto",onChange:n,ariaLabel:Hr})})}),o=()=>({type:"custom",render:({value:r,onChange:a,field:n})=>{let s=n?.unit==="%"?"%":"px",i=s==="%"?Pf:Tf;return y("div",{className:"sf-field",children:co({min:i.min,max:i.max,step:i.step,value:typeof r=="number"?r:i.fallback,suffix:s,ariaLabel:Hr,onChange:a})})}}),t=()=>Vs("Unit",y(zg,{}),[{label:"px",value:"px"},{label:"%",value:"%"}],"px");return Wa({_gHeight:Eo(Hr),sectionHeightMode:Ne("desktop",e()),sectionHeightValue:Ne("desktop",o()),sectionHeightUnit:Ne("desktop",t()),sectionHeightModePhone:Ne("mobile",e(r=>y(NB,{onClear:()=>r(void 0)}))),sectionHeightValuePhone:Ne("mobile",o()),sectionHeightUnitPhone:Ne("mobile",t())})}function NB({onClear:e}){let o=lt(),t=Ef(o),r=Ds(o),a=l("{value} on desktop",{value:r.mode==="auto"?l("Auto"):`${r.value}${r.unit}`});return y(to,{words:X()?.panel,label:l(Hr),changed:t,detail:a,onReset:e})}function Vf(){let e=t=>({type:"custom",render:({value:r,onChange:a,id:n,name:s})=>y(MB,{value:r,onChange:a,labelId:`${n??s??"stickTop"}-label`,phone:t})}),o=()=>({type:"custom",render:({value:t,onChange:r})=>y("div",{className:"sf-field",children:co({min:Ot.min,max:Ot.max,step:Ot.step,value:typeof t=="number"?t:Ot.fallback,suffix:"px",ariaLabel:l("Distance from top"),onChange:r})})});return{_gStick:Eo(Ns),stickTop:Ne("desktop",e(!1)),stickTopDistance:Ne("desktop",o()),stickTopPhone:Ne("mobile",e(!0)),stickTopDistancePhone:Ne("mobile",o())}}function MB({value:e,onChange:o,labelId:t,phone:r}){let a=lt(),n=Ff(a),s=r?n.phone:e===!0;return y(Be,{label:l(Ns),labelId:t,icon:za(y(CR,{})),action:jr(Lt,{children:[r?y(to,{words:X()?.panel,label:l(Ns),changed:Of(a),detail:l("{value} on desktop",{value:n.desktop?`${n.desktopDistance}px`:l("Off")}),onReset:()=>o(void 0)}):null,y($f,{checked:s,onChange:o,ariaLabelledBy:t})]})})}var Bg="e.g. about";function cl(){return{_gAnchor:Eo("Anchor"),anchor:ir({control:"plainText",label:"Name",placeholder:Bg},{type:"custom",render:({value:e,onChange:o})=>y(fh,{value:e,onChange:o,nameBox:(t,r)=>y(lr,{value:t,onChange:r,label:"Name",placeholder:Bg,hideable:!1,markup:!1})})})}}function BQ(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 y(Be,{label:l(e),icon:o,htmlFor:i,hint:t===void 0?void 0:l(t),children:y(zR,{id:i,value:Number.isFinite(c)?new Date(c):null,onChange:d=>a(d?d.toISOString():"")})})}}}function ny(e,o,t,r){return{type:"custom",...Ft({},{...el,label:e}),render:({value:a,onChange:n,id:s,name:i})=>{let c=typeof a=="boolean"?a:o,d=`${s??i??e}-label`;return y(Be,{label:l(e),labelId:d,icon:t,hint:r===void 0?void 0:l(r),action:y($f,{checked:c,onChange:n,ariaLabelledBy:d})})}}}function sy(){return{type:"custom",render:({value:e,onChange:o,id:t,name:r})=>{let a=`${String(t??r??"pageBackground")}-colour`;return y(yo,{label:l("Background"),icon:y(SR,{}),id:a,value:Kc(e),onChange:o})}}}function _Q(e,o,t){return{type:"custom",render:({value:r,onChange:a})=>y(yo,{label:l(e),icon:t,value:r||o,onChange:a})}}function DQ(){return{type:"custom",render:({value:e,onChange:o})=>y(HB,{value:typeof e=="string"?e:"",onChange:o})}}function HB({value:e,onChange:o}){let{hex:t,n:r}=WB();return y(es,{label:l("Fill"),icon:y(Hg,{}),value:e,inherited:t,resetTo:Kr(t.toUpperCase(),l("Theme {n} background",{n:r})),onChange:o,onReset:()=>o("")})}function zB(e,o,t){if((e?.content??[]).some(n=>n?.props?.id===o))return Pt(t);let r=mh(e,o);if(r.length===0)return null;let a=Pt(hf(t));if(a!==null)return a;for(let n=r.length-1;n>0;n-=1){let s=Pt(hf(r[n].sectionAccent));if(s!==null)return s}return Pt(r[0].sectionAccent)}function WB(){let e=Ge(oe().theme),[o]=qr("sectionAccent"),t=null;try{let{appState:a,selectedItem:n}=Uf(i=>i),s=n?.props?.id?String(n.props.id):void 0;t=s?zB(a?.data,s,o):null}catch{t=null}let r=t!==null&&e.themes[t]?t:e.selected;return{hex:e.themes[r].background??ac.background,n:r+1}}var GB=[{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 UB({label:e,value:o,onChange:t,points:r=GB}){let a=r.map(n=>({...n,label:l(n.label),...n.title?{title:l(n.title)}:null}));return y(NR,{label:l(e),value:o,points:a,onChange:t})}function NQ(){return ty()}var MQ={top:y(mR,{}),right:y(pR,{}),bottom:y(dR,{}),left:y(uR,{})};function HQ(e,o,t,r,a,n){let s=m=>o.find(x=>x.value===m),i=m=>({value:m,label:"",disabled:!0,title:r}),c=m=>{let x=o.find(h=>h.cell===m);if(!x)return i(`missing-${m}`);let u=n?.[m];return u?{value:x.value,label:x.label,icon:u}:{value:x.value,label:x.label}},d=[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:m,onChange:x})=>{let u=o.some(h=>h.value===m)?m:t;return y(Be,{label:l(e),icon:a,value:s(u)?.label?l(s(u).label):"",children:UB({label:e,value:u,onChange:x,points:d})})}}}function zQ(e,o,t){return{type:"custom",options:o,render:({value:r,onChange:a,field:n})=>y(jh,{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 WQ(e,o={}){return{type:"custom",render:({value:t,onChange:r})=>{let a={value:t,onChange:r,...o};return y(e,{...a})}}}var GQ=[{label:"Image",value:"image"},{label:"Video",value:"video"}];function UQ(e,o,t){let r=Object.keys(kc).map(a=>({label:kc[a],value:a,picture:t[a]}));return{type:"custom",...Ft({},{type:"radio",label:e,options:r.map(a=>({value:a.value,label:a.label}))}),render:({onChange:a})=>y($B,{label:e,icon:o,options:r,onChange:a})}}function $B({label:e,icon:o,options:t,onChange:r}){let a=Br()?.values??{},n=vc(a),s=n==="frame"&&!!vt(a.mediaVideo)&&!vt(a.videoFrame);return y(Be,{label:l(e),icon:za(o),hint:s?l("This video has no frame yet. The slide shows its background colour until one is made."):void 0,children:Ks({options:t,value:n,onChange:r,ariaLabel:e})})}function $Q(e,o,t,r={}){return{type:"custom",[oR]:!0,render:({value:a,onChange:n,name:s})=>y(Uh,{value:a||"",onChange:n,fieldKey:s,label:e,accept:o,placeholder:t,focusKey:r.focus,focusWhen:r.focusWhen,frameKey:r.frame})}}function jB(e){let o=l(e.status??"");return e.ok&&typeof e.lat=="number"&&typeof e.lng=="number"?`${o} \xB7 ${e.lat.toFixed(4)}, ${e.lng.toFixed(4)}`:o}function jQ({value:e,onChange:o,label:t}){let r=e||{},a=!!r.pending,n=a?"var(--ink-faint)":r.ok?"var(--status-success-soft-ink)":"var(--status-danger-soft-ink)",s=!!He(QR()).geocode,i=Dg(),c=(d,m)=>o({...r,[d]:m??void 0});return jr(Lt,{children:[y(Be,{label:l(t),icon:y(Eg,{}),action:s?y(Js,{content:l("Find from the address (OpenStreetMap)"),children:y(jg,{"aria-label":l("Find from the address"),"aria-busy":a||void 0,disabled:a,onClick:()=>o({...r,pending:!0,ok:!1,status:"Finding\u2026"}),children:y(kR,{})})}):void 0,children:s&&r.status?y(Js,{content:jB(r),className:"sf-name-tip",children:y("div",{className:`es-field-hint ${$c}`,style:{margin:0,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",minWidth:0,color:n},children:a?l("Finding\u2026"):l(r.status)})}):null}),y(Be,{label:l("Enter by hand"),labelId:i,icon:y(xR,{}),action:y($f,{checked:!!r.manual,onChange:d=>o({...r,manual:d}),ariaLabelledBy:i})}),r.manual&&y(Be,{label:l("Latitude, longitude"),icon:y(Eg,{}),children:jr("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:8,width:"100%",minWidth:0},children:[y(Og,{value:typeof r.lat=="number"?r.lat:null,onChange:d=>c("lat",d),min:-90,max:90,step:1e-4,placeholder:l("Latitude")}),y(Og,{value:typeof r.lng=="number"?r.lng:null,onChange:d=>c("lng",d),min:-180,max:180,step:1e-4,placeholder:l("Longitude")})]})})]})}function qB(e,o){return o===null||o<0||o>=e.length?"":e[o]?.text??""}function KB(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 VB(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 Yf={label:"Ticker items",icon:y(bR,{})};function qQ(e,o,t,r){return{type:"custom",[nt]:{control:"textList",label:e,placeholder:t,itemKey:"text",rendering:r},...Ft({},{...Yg.textList,label:e}),render:({value:a,onChange:n})=>y(Xf,{label:e,icon:za(o),items:Array.isArray(a)?a:[],placeholder:t,onChange:n,markup:r==="markup"})}}function Xf({label:e,icon:o,items:t,placeholder:r,onChange:a,markup:n=!1}){let s=Qs(null),[i,c]=Ha(null),d=x=>x.map(u=>({text:u?.text??""})),m=x=>{let u=VB(t,x,i);u===null&&(s.current=null),c(u),a(d(x))};return y(_R,{label:l(e),icon:o,noun:l("item"),items:t,onChange:m,newItem:()=>({text:""}),open:null,onOpen:()=>{},renderItem:()=>null,above:n?y(Jc,{target:s,value:qB(t,i),onChange:x=>a(KB(t,i??-1,x)),disabled:i===null,label:i===null?l("Formatting \u2014 click a row first"):l("Formatting \u2014 row {n}",{n:i+1})}):void 0,renderRow:(x,u,h)=>y("input",{type:"text",className:n&&i===u?"sf-list-marking":void 0,value:x?.text??"",placeholder:l(r),"aria-label":l("{label} {n}",{label:l(e),n:u+1}),onChange:g=>h({text:g.target.value}),onFocus:g=>{s.current=g.currentTarget,c(u)}})})}function ly(e,o){let t=`${e.label} \u2014 row ${o+1}`;return ir({control:"plainText",label:t,placeholder:e.placeholder,offPage:e.offPage},{type:"custom",render:({value:r,onChange:a})=>y(lr,{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 iy(e){return{_gCards:Eo("Cards"),coverIndex:at("Cover image",y(yR,{}),Hh,String(1),e?.coverHint??"A card's opening picture \u2014 a card pinned to a finish keeps its own."),imageBackground:mB("Image background",$s),cardImage:ZB(),spinOnHover:ny("Rotate on hover",e?.spinDefault??!0,y(wR,{}))}}function cy(){return{outline:at("Card outline",y(vR,{}),sf,af),indexBadge:at("Card number",y(zg,{}),nf,rf),showBadge:ny("Product badge",!0,y(qc,{noun:"tag"}))}}function fy(e){let o=e?.defaults??{showCardSizes:!0,showCardBuy:!0,showCardPage:!0},t=a=>({...el,label:Zs.find(n=>n.id===a).label}),r=a=>Ft($R(Gf),t(a));return{_gShowOnCard:Eo("Show on a card"),[Gf]:Ft({type:"custom",render:()=>y(YB,{rest:{showCardPrice:!0,showCardFinishes:!0,...o}})},t(Gf)),showCardFinishes:r("showCardFinishes"),showCardSizes:r("showCardSizes"),showCardBuy:r("showCardBuy"),showCardPage:r("showCardPage")}}var Gf="showCardPrice",Zs=[{id:"showCardPrice",label:"Price"},{id:"showCardFinishes",label:"Finish swatches"},{id:"showCardSizes",label:"Sizes"},{id:"showCardBuy",label:"Buy button"},{id:"showCardPage",label:"Page button"}];function YB({rest:e}){let o=lt(),t=lf(),r=s=>typeof o[s]=="boolean"?o[s]:void 0,a=s=>r(s)??e[s],n=Zs.some(({id:s})=>r(s)!==void 0&&r(s)!==e[s]);return y(Zf,{parts:Zs,changed:n,shown:a,onPress:(s,i)=>t({[s]:i}),onReset:()=>t(Object.fromEntries(Zs.map(({id:s})=>[s,void 0])))})}function KQ(e,o="display"){let t=$r(o);return{[o]:Ne("desktop",{type:"custom",render:({value:r,onChange:a})=>y(Zf,{parts:e,changed:xh(r),shown:n=>xs(r,n),onPress:(n,s)=>a(Ih(r,n,s)),onReset:()=>a(void 0)})}),[t]:Ne("mobile",{type:"custom",render:({value:r,onChange:a})=>y(XB,{parts:e,desktopKey:o,value:r,onChange:a})})}}function Zf({parts:e,changed:o,shown:t,onPress:r,onReset:a,detail:n}){let s=l("Display");return y(Be,{label:s,icon:y(aR,{}),changed:o,action:y(to,{words:X()?.panel,label:s,changed:o,detail:n,onReset:a}),children:y(DR,{label:s,items:e.map(i=>({id:i.id,label:l(i.label),shown:t(i.id)})),onChange:r})})}function XB({parts:e,desktopKey:o,value:t,onChange:r}){let a=lt()[o];return y(Zf,{parts:e,changed:hh(t),shown:n=>Yc(a,t,n),onPress:(n,s)=>r(gh(t,n,s)),onReset:()=>r(gs),detail:l("the same as Desktop")})}function ZB(){return oy("Card image",{min:go,max:$t,step:Hx,hint:"Rounds the picture. The card's own corner is in Styles."})}function VQ(){return Kf({sidesKey:"cornerSides",step:zx,useFollowed:()=>go,mark:y(QB,{label:Wx}),hint:l("Rounds the picture. Left alone it stays square.")})}function QB({label:e,changed:o=!1,onReset:t=()=>{}}){return y(to,{words:X()?.panel,label:l(e),changed:o,onReset:t})}function YQ(){return{type:"custom",render:({value:e,onChange:o})=>y(t_,{value:typeof e=="string"?e:"",onChange:o})}}function JB({layout:e,width:o}){return y("span",{"aria-hidden":"true",style:{display:"grid",width:o,gridTemplateColumns:"repeat(12, minmax(0, 1fr))",gridAutoRows:6,gridAutoFlow:"row dense",gap:2},children:jx(e).map(([t,r],a)=>y("i",{className:"block rounded-xs bg-current opacity-60",style:{gridColumn:`span ${t}`,gridRow:`span ${r}`}},a))})}var e_={width:"3.5rem",height:"2.5rem"},o_=200;function t_({value:e,onChange:o}){let[t,r]=Ha(null),[a,n]=Ha(4),s=Qs(null);QA(()=>{let u=s.current;if(!u||typeof ResizeObserver!="function")return;let h=()=>n(u.getBoundingClientRect().width>=o_?4:3);h();let g=new ResizeObserver(h);return g.observe(u),()=>g.disconnect()},[]);let i=e&&e in et?e:"",c=Mc(t,i),d=Mc(t,"").length,m=cs("no-symbol"),x=[{value:"",label:l("Not chosen"),icon:m},...c.map(u=>({value:u,label:l(et[u].label),icon:y(JB,{layout:et[u],width:40})}))];return y(Be,{label:l("Layout"),icon:y(IR,{}),value:i?l(et[i].label):l("Not chosen"),children:y("div",{ref:s,style:{flex:"1 1 auto",minWidth:0},children:y(GR,{label:l("Layout"),value:i,emptyValue:"",options:x,onChange:o,columns:a,cell:e_,header:jr("div",{className:"mb-2 flex flex-col gap-1",style:{minWidth:"11rem"},children:[y("span",{className:"text-2xs text-ink-faint",children:l("Photos in a row")}),y(FR,{options:[{id:"all",label:l("All")},...Ux.map(u=>({id:String(u),label:String(u)}))],value:t===null?"all":String(t),ariaLabel:l("Photos in a row"),onChange:u=>r(u==="all"?null:Number(u))}),y("span",{className:"text-2xs text-ink-faint",children:l("{n} of {total} layouts",{n:d,total:Nc.length})})]})})})})}var s_="Applies to panels, cards, inputs and buttons. Round things \u2014 color swatches, switches, status dots \u2014 stay round.",Qf="Corners";function dy({value:e,onChange:o,showHint:t=!0}){let r=e===null;return fl(a_,{label:l(Qf),icon:fl(n_,{}),value:r?l("Default"):`${e}px`,changed:!r,action:fl(r_,{words:X()?.panel,label:l(Qf),changed:!r,detail:l("the built-in corners"),onReset:()=>o(null)}),hint:t?l(s_):void 0,children:fl(co,{min:go,max:$t,step:1,value:e??go,readout:!1,ariaLabel:l(Qf),onChange:o})})}import{jsx as Ga}from"react/jsx-runtime";import{SettingsDefaultReset as l_,SettingsField as i_}from"efficient-easel/panel";import{IconPicker as c_}from"efficient-shell/ui";import{ShadowIcon as f_}from"efficient-easel/icons";var Jf={none:"None",soft:"Soft",lifted:"Lifted"},d_="Applies to cards \u2014 products, brands, journal entries and filter cells. Round things like swatches and status dots are never shadowed.",u_={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)"};function uy({value:e,onChange:o,showHint:t=!0}){let r=e===null,a=e??ic;return Ga(i_,{label:l("Card shadow"),icon:Ga(f_,{}),value:l(Jf[a]),changed:!r,action:Ga(l_,{words:X()?.panel,label:l("Card shadow"),changed:!r,detail:l(Jf[ic]),onReset:()=>o(null)}),hint:t?l(d_):void 0,children:Ga(c_,{label:l("Card shadow"),value:a,options:Mm.map(n=>({value:n,label:l(Jf[n]),icon:Ga("span",{className:"sf-shadow-chip border border-line bg-surface",style:{boxShadow:u_[n]}})})),onChange:o})})}import{jsx as py}from"react/jsx-runtime";import{ShadowIcon as p_}from"efficient-easel/icons";var m_="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 my({value:e,onChange:o,showHint:t=!0}){let r=e===null;return py(es,{label:l("Shadow color"),icon:py(p_,{}),value:e??"",inherited:fc,resetTo:fc,onChange:o,onReset:()=>o(null),hint:t?l(m_):void 0})}import{jsx as dl}from"react/jsx-runtime";import{SettingsDefaultReset as x_,SettingsField as h_}from"efficient-easel/panel";import{AlignSeparateIcon as I_}from"efficient-easel/icons";var g_="The space between the blocks inside a row, a grid or a box. Default means each one keeps the spacing it already has.",ed="Block gap",y_=Wr.Grid;function xy({value:e,onChange:o,showHint:t=!0}){let r=e===null;return dl(h_,{label:l(ed),labelId:"sf-block-gap",icon:dl(I_,{}),value:r?l("Default"):`${e}px`,changed:!r,action:dl(x_,{words:X()?.panel,label:l(ed),changed:!r,detail:l("each block's own spacing"),onReset:()=>o(null)}),hint:t?l(g_):void 0,children:dl(co,{min:nr.min,max:nr.max,step:nr.step,value:r?y_:e,readout:!1,ariaLabel:l(ed),onChange:o})})}import{jsx as ul}from"react/jsx-runtime";import{SettingsDefaultReset as b_,SettingsField as S_,SettingsSegmented as C_}from"efficient-easel/panel";import{HoverIcon as w_}from"efficient-easel/icons";var od={none:"None",lift:"Lift",highlight:"Highlight"},k_="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 hy({value:e,onChange:o,showHint:t=!0}){let r=e===null,a=e??cc;return ul(S_,{label:l("Hover effect"),icon:ul(w_,{}),value:l(od[a]),changed:!r,action:ul(b_,{words:X()?.panel,label:l("Hover effect"),changed:!r,detail:l(od[cc]),onReset:()=>o(null)}),hint:t?l(k_):void 0,children:ul(C_,{options:Hm.map(n=>({id:n,label:l(od[n])})),value:a,ariaLabel:l("Hover effect"),onChange:o})})}import{jsx as pl}from"react/jsx-runtime";import{SettingsDefaultReset as v_,SettingsField as T_,SettingsSegmented as P_}from"efficient-easel/panel";import{DropIcon as E_}from"efficient-easel/icons";var td="Photography",Iy={shot:"As shot",mono:"Black and white"},rd=[{grayscale:!1,label:Iy.shot},{grayscale:!0,label:Iy.mono}],O_="Black and white photographs return to color on hover. Wheels and tyres keep their real finish either way.";function gy({value:e,onChange:o,showHint:t=!0}){let r=e===null,a=e??!1;return pl(T_,{label:l(td),icon:pl(E_,{}),value:l(rd.find(n=>n.grayscale===a).label),changed:!r,action:pl(v_,{words:X()?.panel,label:l(td),changed:!r,detail:l(rd.find(n=>!n.grayscale).label),onReset:()=>o(null)}),hint:t?l(O_):void 0,children:pl(P_,{options:rd.map(n=>({id:n.grayscale,label:l(n.label)})),value:a,ariaLabel:l(td),onChange:o})})}import{jsx as ad}from"react/jsx-runtime";import{useId as F_}from"react";import{SettingsField as L_,SettingsSwitch as A_}from"efficient-easel/panel";import{ShareIcon as R_}from"efficient-easel/icons";var B_="Share button",__="On every blog post.";function yy({value:e,onChange:o,showHint:t=!0}){let r=F_();return ad(L_,{label:l(B_),labelId:r,icon:ad(R_,{}),action:ad(A_,{checked:e===!0,onChange:o,ariaLabelledBy:r}),hint:t?l(__):void 0})}import{jsx as ml}from"react/jsx-runtime";import{SettingsDefaultReset as K_,SettingsField as V_}from"efficient-easel/panel";import{PaddingXIcon as Y_}from"efficient-easel/icons";var je={min:1e3,max:2e3,step:50,default:1600};function D_(e){return{maxWidth:e,marginInline:"auto",width:"100%"}}var by="--sf-site-width",nd=`var(${by},${je.default}px)`,WJ=`max-w-[${nd}]`,GJ=`max-w-[${je.default}px]`;function N_(e){return typeof e!="number"||!Number.isFinite(e)?je.default:Math.round(Math.min(Math.max(e,je.min),je.max))}function UJ(e){let o=N_(e);return o===je.default?{}:{[by]:`${o}px`}}var jo={min:0,max:80,step:4,default:40},Sy="--sf-site-gutter",Oo=`var(${Sy},${jo.default}px)`,M_=`px-[${Oo}]`;var Rt={md:`min(24px,${Oo})`,sm:`min(20px,${Oo})`,frame:`min(24px,${Oo})`,tabs:`min(16px,${Oo})`},$J=[[`max-[1100px]:px-[${Rt.md}]`,"max-[1100px]:px-6"],[`max-[1100px]:px-[${Rt.tabs}]`,"max-[1100px]:px-4"],[`max-[960px]:px-[${Rt.frame}]`,"max-[960px]:px-6"],[`max-[900px]:px-[${Rt.md}]`,"max-[900px]:px-6"],[`max-[800px]:px-[${Rt.md}]`,"max-[800px]:px-6"],[`max-[720px]:px-[${Rt.sm}]`,"max-[720px]:px-5"],[`max-[800px]:px-[${Rt.sm}]`,"max-[800px]:px-5"],[`max-[640px]:px-[${Rt.sm}]`,"max-[640px]:px-5"],[`min-[800px]:px-[${Oo}]`,"min-[800px]:px-10"],[`max-[720px]:px-[min(24px,${Oo})]`,"max-[720px]:px-6"],[`max-[800px]:-mx-[min(20px,${Oo})]`,"max-[800px]:-mx-5"],[`max-[720px]:-mx-[min(20px,${Oo})]`,"max-[720px]:-mx-5"],[`-mx-[${Oo}]`,"-mx-10"],[M_,"px-10"]];var jJ="mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))]",qJ="mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))]";function H_(e){return typeof e!="number"||!Number.isFinite(e)?jo.default:Math.round(Math.min(Math.max(e,jo.min),jo.max))}function KJ(e){let o=H_(e);return o===jo.default?{}:{[Sy]:`${o}px`}}var Cy=nd,VJ=`max-w-[${Cy}]`,YJ=`max-w-[min(var(--sf-page-cap,${je.default}px),${je.default}px)]`,wy="--sf-hero-cap",z_=`var(${wy},none)`,XJ=`max-w-[${z_}]`,W_="--sf-hero-bleed-m",G_="--sf-hero-bleed-w",U_="--sf-hero-chrome-x",$_="--sf-hero-chrome-cap";function ZJ(e){return e===!0?{[wy]:Cy,[W_]:"auto",[G_]:"100%",[U_]:"24px",[$_]:"none"}:{}}var sd=`calc(${nd} - ${Oo}*2)`,QJ=`max-w-[${sd.replace(/ /g,"_")}]`;var j_="--sf-chrome-cap",q_=`var(${j_},${sd})`,JJ="data-page-width";function eee(e){return e==="full"?"full":null}function oee(e){return e==="full"?null:D_(e==="content"?sd:q_)}function tee(e){if(e==="full")return"full";if(e==="content")return"content"}var ld="Side space",id=jo.default,X_="The room left at the left and right edge of every page.";function ky({value:e,onChange:o,showHint:t=!0}){let r=e===null;return ml(V_,{label:l(ld),labelId:"sf-side-space",icon:ml(Y_,{}),value:`${e??id}px`,changed:!r,action:ml(K_,{words:X()?.panel,label:l(ld),changed:!r,detail:`${id}px`,onReset:()=>o(null)}),hint:t?l(X_):void 0,children:ml(co,{min:jo.min,max:jo.max,step:jo.step,value:e??id,readout:!1,ariaLabel:l(ld),onChange:o})})}import{jsx as cd}from"react/jsx-runtime";import{BACKGROUND_WIDTHS as pee,SettingsBackgroundWidth as Z_,SettingsContentWidth as Q_}from"efficient-easel/panel";var J_="Background width",eD="Content width";var xl=e=>l(sr[e==="content"?"page":"full"]),vy="The width of every section's background.",Ty="The width of every section's content.";function Py({value:e,changed:o,detail:t,onChange:r,onReset:a,hint:n,labelId:s}){return cd(Z_,{value:e,changed:o,detail:t,onChange:r,onReset:a,hint:n?l(n):void 0,labelId:s,words:{label:l(J_),full:xl("full"),content:xl("content")},resetWords:X()?.panel})}function Ey({mode:e,px:o,max:t=je.max,min:r=je.min,changed:a,detail:n,onMode:s,onPx:i,onReset:c,hint:d,labelId:m}){let x=l(eD),u=e!=="full"?cd(co,{min:r,max:t,step:je.step,value:Math.min(Math.max(o,r),t),onChange:i,suffix:"px",ariaLabel:x}):null;return cd(Q_,{mode:e,onMode:s,number:u,changed:a,detail:n,onReset:c,hint:d?l(d):void 0,labelId:m,words:{label:x,full:xl("full"),content:xl("content")},resetWords:X()?.panel})}import{jsx as Sb}from"react/jsx-runtime";import{TextStyleItem as pN,TextStylesGroup as mN}from"efficient-easel/text-styles";import{jsx as lN}from"react/jsx-runtime";import{useState as iN}from"react";import{TextStylesList as cN}from"efficient-easel/text-styles";import{usePreviewDevice as fN}from"efficient-easel/draw/client";import{defaultTextStyles as cb,textStyleCaseCss as oN}from"efficient-easel/text-styles/model";import{parseHexColor as tN}from"efficient-shell/format";import{textStyleCaseCss as dD,textStyleCaseOfCss as uD}from"efficient-easel/draw";import{parseHexColor as pD}from"efficient-shell/format";function fd(e,o){return o?`${e}[${o.index}].${o.rowKey}`:e}function Fo(e){let o=/^([A-Za-z0-9_$]+)\[(\d+)\]\.([A-Za-z0-9_$]+)$/u.exec(e);return o?{key:o[1],row:{index:Number(o[2]),rowKey:o[3]}}:{key:e,row:null}}import{decodePartId as md,encodePartId as bl}from"efficient-easel/draw";import{LINK_FIELD_MARKER as My,SCAFFOLD_FIELD_MARKER as Dy,TEXT_FIELD_MARKER as Sl}from"efficient-easel/draw";import{readHidable as Hy}from"efficient-easel/draw";import{SCALAR_TEXT_CONTROLS as lD}from"efficient-easel/draw";import{TEXT_FIELD_MARKER as sD}from"efficient-easel/draw";import{TEXT_FIELD_MARKER as Oy}from"efficient-easel/draw";import{readHidable as Fy}from"efficient-easel/draw";import{SCALAR_TEXT_CONTROLS as oD}from"efficient-easel/draw";var tD=oD,rD=["text","textarea"],aD=["textarea","plainTextarea"];function nD(e){return!e||typeof e!="object"?null:e[Oy]?.control??null}function Vr(e){let o=nD(e);return o&&tD.includes(o)?o:null}function hl(e){return aD.includes(e)}function Ly(e){return!e||typeof e!="object"?void 0:e[Oy]?.placeholder}function Il(e){return Fy(e).text}function dd(e,o,t){return rD.includes(e)?{text:t,hidden:Fy(o).hidden}:t}function Ay(e,o,t,r){return Il(e[o])===r?null:{...e,[o]:dd(t,e[o],r)}}function gl(e){if(!(!e||typeof e!="object"))return e[sD]}function ud(e){if(!e||typeof e!="object")return null;let o=e.arrayFields;return o&&typeof o=="object"?o:null}function Ry(e,o){if(!Array.isArray(o))return[];let t=gl(e),r=[];if(t?.control==="textList"){let n=t.itemKey??"text";return o.forEach((s,i)=>{let c=pe(s?.[n]);c&&r.push({row:{index:i,rowKey:n},text:c})}),r}let a=ud(e);return a?(o.forEach((n,s)=>{for(let[i,c]of Object.entries(a)){if(!Vr(c))continue;let d=Il(n?.[i])||gl(c)?.placeholder||"";d&&r.push({row:{index:s,rowKey:i},text:d})}}),r):[]}function Ua(e,o){if(Array.isArray(e))return e[o.index]?.[o.rowKey]}function pd(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 By(e,o,t,r,a){let n=Ua(e[o],t);return Il(n)===a?null:pd(e,o,t,dd(r,n,a))}function _y(e,o){return o?`${e} \xB7 row ${o.index+1}`:e}var Lo="data-sf-part",Mee="data-sf-region-part",Hee="data-sf-part-row";function zee(e,o){return`${e}[${o}]`}var Wee="data-sf-part-kind",iD="data-sf-part-style-owner",cD="data-sf-part-style-kind";function Gee(e){for(let o=e;o;o=o.parentElement){let t=o.getAttribute(iD),r=o.getAttribute(cD);if(t&&r)return{owner:t,kind:r};if(o.getAttribute("data-easel-block"))return null}return null}var Ny=2;function Yr(e){return Ra(e).replace(/\s+/gu,"")}function yl(e,o,t){let r=e[Sl];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}=Hy(o);a?t.push(a):r.placeholder&&t.push(r.placeholder);return}if(!e[My]){if(e.type==="text"||e.type==="textarea"){let a=pe(o);a&&t.push(a);return}if(e.arrayFields&&Array.isArray(o)){for(let a of o)for(let[n,s]of Object.entries(e.arrayFields))yl(s,a?.[n],t);return}if(e.objectFields&&o&&typeof o=="object")for(let[a,n]of Object.entries(e.objectFields))yl(n,o[a],t)}}function zy(e){if(!e||typeof e!="object")return!1;let o=e;return o[My]?!1:!!o[Sl]||o.type==="text"||o.type==="textarea"}function Cl(e,o){let t=e[Sl];return t?.label?t.label:typeof e.label=="string"?e.label:o}function xd(e){let o=e.indexOf(" (");return(o>0?e.slice(0,o):e).trim()}function Uee(e,o){if(!e)return[];let t=[];for(let[r,a]of Object.entries(e)){if(!a||typeof a!="object"||Ba(r))continue;let n=a,s=[];yl(n,o?.[r],s),!s.length&&n[Dy]!==void 0&&yl(n,n[Dy],s);let i=Cl(n,r),c=new Set;for(let{row:x,text:u}of Ry(n,o?.[r])){let h=Yr(u);h.length<Ny||(c.add(h),t.push({key:r,label:i,texts:[h],row:x}))}let d=new Set(c),m=[];for(let x of s){let u=Yr(x);u.length<Ny||d.has(u)||(d.add(u),m.push(u))}m.length&&t.push({key:r,label:i,texts:m})}return t}function hd(e){return!e.offPage&&!e.hidden}var fD=lD;function Wy(e,o){if(!o||typeof o!="object"||Ba(e)||Bh(o))return null;let t=o[Sl];return!t||!fD.includes(t.control)?null:t}function $ee(e,o){let t=Wy(e,o);return t!==null&&t.identifier!==!0}function Gy(e,o){if(!e)return[];let t=[];for(let[r,a]of Object.entries(e)){let n=Wy(r,a);if(!n)continue;let{text:s,hidden:i}=Hy(o?.[r]);if(hd({offPage:n.offPage===!0,hidden:!!i}))continue;let c=s||n.placeholder||"",d=Ra(c).replace(/\s+/gu," ").trim();t.push({key:r,label:xd(Cl(a,r)),preview:d,offPage:n.offPage===!0,identifier:n.identifier===!0,hidden:!!i})}return t}var gd="_partStyles",bd="data-sf-part-styled",Xr="data-sf-text-style",mD=/^(heading|body)-[1-7]$/;function Zr(e){return typeof e=="string"&&mD.test(e)}var vl={heading:"heading-1",heading2:"heading-2",heading3:"heading-3",body:"body-1",label:"body-5"};function xD(e){if(!e)return null;for(let[o,t]of Object.entries(vl))if(t===e)return o;return null}function Qy(e){if(Zr(e.textStyle))return e.textStyle;let o=Jo(e.role);return o?vl[o]:void 0}var hD=[400,500,600,700],wl=["left","center","right","justify"],Uy=5,$y=1e3,ID=-5,gD=10,Sd=0,Cd=64,wd=2,jy={size:{min:Uy,max:$y,step:1},sizePhone:{min:Uy,max:$y,step:1},padding:{min:Sd,max:Cd,step:wd}},yD=.05,bD=.01,SD=["line","letter"],CD=.5,wD=2.5,kD=-1,vD=1,TD=0,PD=400,ED=[...new Set(Object.values(uc))];function ja(e){return!e||typeof e!="object"||Array.isArray(e)?null:e}function Jy(e){return ja(e?.[gd])??{}}function Tl(e,o){let t=Jy(e);return Object.hasOwn(t,o)?ja(t[o])??{}:{}}function eb(e,o,t){let r={...Jy(e)};if(OD(t).length?r[o]=t:delete r[o],!Object.keys(r).length){let{[gd]:a,...n}=e;return n}return{...e,[gd]:r}}function OD(e){return Object.entries(e).filter(([,o])=>o!==void 0)}function FD(e){return SD.includes(e)}var $a=(e,o,t)=>Math.min(t,Math.max(o,e));function LD(e,o){if(FD(e)){let t=Math.round(Number(o));return!Number.isFinite(t)||t===0?null:$a(t,ID,gD)}if(e==="lineHeight"){let t=Number(o);return Number.isFinite(t)?Qr($a(t,CD,wD),3):null}if(e==="letterSpacing"){let t=Number(o);return Number.isFinite(t)?Qr($a(t,kD,vD),4):null}if(e==="paragraphSpacing"){let t=Math.round(Number(o));return!Number.isFinite(t)||t<=0?null:$a(t,TD,PD)}if(Object.hasOwn(jy,e)){let{min:t,max:r}=jy[e],a=Math.round(Number(o));return Number.isFinite(a)?$a(a,t,r):null}return e==="italic"?typeof o=="boolean"?o:null:e==="role"||e==="fontRole"?Jo(o)?o:null:e==="sizeToken"?vd(o)?o:null:e==="textStyle"?Zr(o)?o:null:e==="alignPhone"?wl.includes(o)?o:null:o}var AD=["weight","size","sizePhone","line","letter","lineHeight","letterSpacing","paragraphSpacing","padding"];function kd(e){let o=null,t=r=>{o??={...e},delete o[r]};for(let r of AD){let a=e[r];a!==void 0&&!(typeof a=="number"&&Number.isFinite(a))&&t(r)}return e.align!==void 0&&!wl.includes(e.align)&&t("align"),e.alignPhone!==void 0&&!wl.includes(e.alignPhone)&&t("alignPhone"),e.textStyle!==void 0&&!Zr(e.textStyle)&&t("textStyle"),e.sizeToken!==void 0&&!vd(e.sizeToken)&&t("sizeToken"),e.fontRole!==void 0&&!Jo(e.fontRole)&&t("fontRole"),o??e}function vd(e){if(!e||typeof e!="object")return!1;let{step:o,px:t,stepPhone:r,pxPhone:a,fluid:n}=e,s=c=>typeof c=="number"&&Number.isFinite(c)&&c>0,i=c=>typeof c=="string"&&ED.includes(c);return i(o)&&s(t)&&(r===void 0||i(r))&&(a===void 0||s(a))&&(n===void 0||RD(n,t))}function RD(e,o){if(!e||typeof e!="object"||Array.isArray(e))return!1;let{minPx:t,vw:r,...a}=e;return Object.keys(a).length===0&&typeof t=="number"&&Number.isFinite(t)&&t>0&&t<o&&typeof r=="number"&&Number.isFinite(r)&&r>0&&r<=100}function ob(e){return e?.pxPhone&&vd(e)?{step:e.stepPhone??e.step,px:e.pxPhone}:null}function tb({step:e,px:o,fluid:t}){let r=t?`clamp(${t.minPx}px, ${t.vw}vw, ${o}px)`:`${o}px`,a=`var(--size-${e}, ${r})`;return e.startsWith("heading")?`min(${a}, var(--sf-heading-max,9999px))`:a}var BD=[["font","role"],["font","fontRole"],["role","textStyle"],["line","lineHeight"],["letter","letterSpacing"]];function _D(e){let o=[];for(let[t,r]of BD)t===e?o.push(r):r===e&&o.push(t);return o}function Jr(e,o,t,r){let a={...Tl(e,o)},n=r==null?null:LD(t,r);if(n===null)delete a[t];else{a[t]=n;for(let s of _D(t))delete a[s]}return eb(e,o,a)}function rb(e,o){return eb(e,o,{})}function DD(e){return uD(e)??"none"}function ND(e){return dD(e)??""}var qy={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 MD(e,o){return Jo(e.role)||(o?.blockDrawsStyle?null:xD(e.textStyle))}function ab(e,o){return e==="Text"&&o==="text"}var HD={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 zD(e){let o=uc[e],t=HD[o];return t?`var(--size-${o}, ${t})`:`var(--size-${o})`}function Ka(e){let o={};return typeof e.lineHeight=="number"?o.lineHeight=e.lineHeight:e.line&&(o.lineHeight=Qr(WD+e.line*yD,3)),typeof e.letterSpacing=="number"?o.letterSpacingEm=e.letterSpacing:e.letter&&(o.letterSpacingEm=Qr(e.letter*bD,4)),o}var WD=1,cr="--sf-part-para";function Ky(e){e=kd(e);let o={};if(typeof e.sizePhone=="number"&&e.sizePhone>0)o.fontSize=`${e.sizePhone}px`;else{let t=ob(e.sizeToken);t&&(o.fontSize=tb(t))}return e.alignPhone&&(o.textAlign=e.alignPhone),o}function GD(e,o){if(!o)return e;let t=kd(e),r=e;if(typeof t.sizePhone=="number"&&t.sizePhone>0)r={...r,size:t.sizePhone};else{let a=ob(t.sizeToken);a&&(r={...r,size:void 0,sizeToken:a})}return t.alignPhone&&(r={...r,align:t.alignPhone}),r}function kl(e,o,t){e=kd(e);let r=MD(e,t),a=Ka(e),n=e.size?`${e.size}px`:e.sizeToken?tb(e.sizeToken):r?zD(r):"";return{fontFamily:e.font?qD(e.font):e.fontRole?`var(${qy[e.fontRole]})`:r?`var(${qy[r]})`:"",fontWeight:e.weight?String(e.weight):"",fontSize:n,minWidth:n?"0":"",overflowWrap:n?"break-word":"",lineHeight:a.lineHeight!==void 0?String(a.lineHeight):"",letterSpacing:a.letterSpacingEm!==void 0?`${a.letterSpacingEm}em`:"",[cr]:e.paragraphSpacing?`${e.paragraphSpacing}px`:"",textTransform:ND(e.case),textAlign:e.align??"",paddingTop:Vy(e.padding),paddingBottom:Vy(e.padding),color:UD(e.color),fontStyle:e.italic===!0?"italic":e.italic===!1?"normal":""}}var UD=e=>e===void 0||e===""?"":Object.hasOwn(ot,e)?ot[e]:pD(e)===e.toLowerCase()?e:"",Vy=e=>e===void 0?"":`${e}px`,Qr=(e,o)=>Number(e.toFixed(o));function Jee(e,o){let t=Number.parseFloat(e.fontSize)||16,r=Number.parseFloat(e.lineHeight),a=Number.parseFloat(e.letterSpacing),n=Number.parseFloat(e.paddingTop);return{fontKey:o,sizePx:t,weight:$D(Number.parseInt(e.fontWeight,10)),lineRatio:Number.isFinite(r)?Qr(r/t,3):1.2,letterEm:Number.isFinite(a)?Qr(a/t,4):0,align:jD(e.textAlign),case:DD(e.textTransform),paddingPx:Number.isFinite(n)?Math.round(n):0}}function $D(e){return Number.isFinite(e)?hD.reduce((o,t)=>Math.abs(t-e)<Math.abs(o-e)?t:o):400}function jD(e){for(let o of wl)if(o===e)return o;return e==="end"?"right":"left"}function eoe(e,o){let t=Yy(e);if(!t)return"";for(let r of ko)if(Yy(o(r.cssVar))===t)return r.key;return""}var Yy=e=>(e.split(",")[0]??"").replace(/["']/g,"").replace(/\s+/g," ").trim().toLowerCase();function qD(e){let o=Er(e);return o?`var(${o.cssVar})`:""}function ooe(e,o,t,r){return!o||md(o)?.nodeId!==e?null:t.find(a=>r(a.getAttribute("class")))??t[0]??null}function toe(e,o,t=()=>qa,r=i=>i,a=YD,n=!1,s=()=>!1){let i=0;for(let{element:c,partId:d}of e){let m=md(d)?.propKey;if(!m)continue;let x=r(m),u=Object.hasOwn(o,x)?ja(o[x])??{}:{},h=kl(GD(u,n),qa,{blockDrawsStyle:s(m)});Zr(u.textStyle)?c.setAttribute?.(Xr,u.textStyle):c.removeAttribute?.(Xr);let g=Id.some(P=>c.style[P]),k=!1;for(let[P,O]of Object.entries(h))XD(c,P,O),O&&(k=!0);if(g||Id.some(P=>h[P]))for(let P of KD(c,a))for(let O of Id)P.style[O]=h[O]??"";k&&(i+=1)}return i}function KD(e,o){let t=Yr(e.textContent??""),r=[],a=e;for(let n=0;n<VD&&o(a);n+=1){let s=a.parentElement;if(!s||Yr(s.textContent??"")!==t)break;r.push(s),a=s}return r}var VD=8;function YD(e){let o=e;return typeof window>"u"||!o?.ownerDocument?!1:window.getComputedStyle(o).display==="inline"}var qa={fontKey:"",sizePx:16,weight:400,lineRatio:1,letterEm:0,align:"left",case:"none",paddingPx:0};function XD(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===cr&&(t?a.setAttribute?.(Xy,""):a.removeAttribute?.(Xy))}var Xy="data-sf-part-para",ZD=Object.keys(kl({},qa)),yd=new Set(["color","overflowWrap",cr,"fontStyle"]),Id=ZD.filter(e=>!yd.has(e));function nb(e,o,t,r=n=>n,a=()=>!1){let n=new Map;for(let c of e){let d=fd(c.key,c.row);for(let m of c.texts){let x=n.get(m);x?(x.keys.add(c.key),x.partKeys.add(d)):n.set(m,{keys:new Set([c.key]),partKeys:new Set([d])})}}let s=new Map;for(let c of Object.keys(o)){if(!QD(c))continue;let d=ja(o[c])??{},m=kl(d,qa),x=Ky(d),u=Zr(d.textStyle)?d.textStyle:void 0;!Object.values(m).some(Boolean)&&!Object.keys(x).length&&!u||s.set(c,{stamp:Zy(t,c),declarations:m,...Object.keys(x).length?{phone:x}:{},...u?{textStyle:u}:{}})}let i=new Map;for(let[c,{keys:d,partKeys:m}]of n){let x=m.size===1?[...m][0]:d.size===1?[...d][0]:null;if(!x)continue;let u=r(x);if(!Object.hasOwn(o,u))continue;let h=ja(o[u])??{},g=kl(h,qa,{blockDrawsStyle:a(x)}),k=Ky(h),P=Zr(h.textStyle)?h.textStyle:void 0;!Object.values(g).some(Boolean)&&!Object.keys(k).length&&!P||i.set(c,{stamp:Zy(t,x),declarations:g,...Object.keys(k).length?{phone:k}:{},...P?{textStyle:P}:{}})}return i.size||s.size?{rules:i,kindRules:s,drawn:new Set(n.keys())}:null}function QD(e){return e.startsWith("@")}function Td(e,o){return e?.kindRules.get(o)??null}function Zy(e,o){let t=r=>r.replace(/[^A-Za-z0-9_-]+/g,"-");return`${t(e)}~${t(o)}`}function Pd(e){let o=[],t=new Set,r=a=>{let{stamp:n,declarations:s}=a;if(t.has(n))return;t.add(n);let i=Object.entries(s).filter(([,h])=>h!==""),c=h=>h.map(([g,k])=>`${JD(g)}: ${k}`).join("; "),d=`[${bd}="${n}"]`,m=i.filter(([h])=>!yd.has(h)),x=i.filter(([h])=>yd.has(h));m.length&&o.push(`${d}, *:has(> ${d}) { ${c(m)} }`),x.length&&o.push(`${d} { ${c(x)} }`),s[cr]&&(o.push(`*:has(> ${d}) { ${cr}: ${s[cr]} }`),o.push(...Ed(d,`*:has(> ${d})`)));let u=Object.entries(a.phone??{}).filter(([,h])=>h!=="");u.length&&o.push(`@media ${Ls} { ${d}, *:has(> ${d}) { ${c(u)} } }`)};for(let a of e.rules.values())r(a);for(let a of e.kindRules.values())r(a);return o.join(`
4
4
  `)}function Ed(e,o){let t=`var(${cr})`,r=":is([data-sf-bullet], [data-sf-number])";return[`${e} br:not(br + br) { display: block; content: ""; margin-top: ${t} }`,`${e} ${r}:not(:first-child) { margin-top: ${t} }`,`${e} ${r}:not(:last-child) { margin-bottom: ${t} }`,`:is(${o}) + :is(${o}) { margin-top: ${t} }`]}var JD=e=>e.replace(/[A-Z]/g,o=>`-${o.toLowerCase()}`);function sb(e,o){if(!e)return null;let t=Yr(o),r=e.rules.get(t);if(r)return r;if(t.length<eN||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 eN=8;function lb(e){switch(e.id){case"heading-1":return"font-display";case"heading-2":return"font-heading2";case"heading-3":return"font-heading3";case"body-1":return"font-body";case"body-5":return"font-mono";default:return`font-${e.id}`}}var Od=e=>e==="sentence"?"none":void 0,fb=["font","color","size","sizePhone","weight","italic","lineHeight","letterSpacing","paragraphSpacing","letterCase","largestSize"];function qo(e){let o={};for(let t of fb)e[t]!==void 0&&(o[t]=e[t]);return o}function Ld(e,o){let{auto:t,...r}=e,a=new Set(o??[]),n=fb.filter(s=>a.has(s)&&e.values[s]===void 0);return n.length?{...r,auto:n}:r}function db(e){let o=e.fonts,t=e.sizes,r=e.typography,a=Wm(e.compression),n={"heading-1":{font:pe(o.heading),size:$(t.headingLarge),weight:$(r.weight),lineHeight:a.lineHeight,letterSpacing:a.letterSpacing,letterCase:Od(r.case),largestSize:$(r.maxPx)},"heading-2":{font:pe(o.heading2),size:$(t.headingMedium),weight:$(r.weight2),lineHeight:a.lineHeight,letterSpacing:a.letterSpacing,letterCase:Od(r.case2)},"heading-3":{font:pe(o.heading3),size:$(t.headingSmall),weight:$(r.weight3),lineHeight:a.lineHeight,letterSpacing:a.letterSpacing,letterCase:Od(r.case3)},"body-1":{font:pe(o.body),size:$(t.body)},"body-5":{font:pe(o.label),size:$(t.label)}};return cb().map(({id:s,kind:i,name:c})=>({id:s,kind:i,name:c,values:qo(n[s]??{})}))}function Ad(e){return Array.isArray(e)&&e.every(o=>o&&typeof o=="object"&&typeof o.id=="string"&&(o.kind==="heading"||o.kind==="body")&&typeof o.name=="string")?e.map(o=>Ld({...o,values:qo(o.values??{})},Array.isArray(o.auto)?o.auto:void 0)):null}function moe(e){return Ad(e)??[]}function ub(e){return Ad(e)??cb().map(({id:o,kind:t,name:r})=>({id:o,kind:t,name:r,values:{}}))}function Bt(e,o){let t=db(o),r=Ad(e);return r?r.map(a=>{let n={...Fd(t,a.id)};for(let s of a.auto??[])delete n[s];return{...a,values:qo({...n,...a.values})}}):t}var Fd=(e,o)=>e.find(t=>t.id===o)?.values??{},ib=["heading-1","heading-2","heading-3"];function pb({saved:e,old:o,cur:t,next:r,sizeOf:a}){let n=db(o),s=ub(e),i=Bt(s,o),c=[],d=r.map(x=>{let u=t.find(I=>I.id===x.id),h=s.find(I=>I.id===x.id);if(!u||!h)return rN([x],a)[0];let g={...h.values},k=new Set(h.auto??[]),P=x.values,O=u.values,w=[...new Set([...Object.keys(P),...Object.keys(O)])].filter(I=>JSON.stringify(P[I])!==JSON.stringify(O[I]));w.sort((I,b)=>+(I==="letterSpacing")-+(b==="letterSpacing"));for(let I of w){let b=I==="lineSpacing"?"lineHeight":I,v=P[I];if(v===void 0){delete g[b],Fd(n,x.id)[b]!==void 0&&(c.push([x.id,b]),k.add(b));continue}if(k.delete(b),I==="lineSpacing")g.lineHeight=ea(v/100,3);else if(I==="letterSpacing"){let S=i.find(A=>A.id===x.id),E=a({...x,values:qo({...S?.values??{},...g})});g.letterSpacing=E?ea(v/E,4):0}else g[b]=v}return Ld({id:x.id,kind:x.kind,name:x.name,values:qo(g)},k)}),m=o.compression;if(c.some(([x,u])=>(u==="lineHeight"||u==="letterSpacing")&&ib.includes(x))&&jt(m)!=="normal"){for(let x of ib){let u=d.find(g=>g.id===x);if(!u)continue;let h={...u.values};for(let g of["lineHeight","letterSpacing"])c.some(([k,P])=>k===x&&P===g)||h[g]===void 0&&!(u.auto??[]).includes(g)&&(h[g]=Fd(n,x)[g]);u.values=qo(h)}m="normal"}return{saved:d,old:{...o,compression:m}}}function mb(e,o){let t={text_styles:e.saved};return e.old.compression!==o.compression&&(t.heading_compression=jt(e.old.compression)),t}var ea=(e,o)=>Number(e.toFixed(o));function xb(e,o){return e.map(t=>{let{lineHeight:r,letterSpacing:a,...n}=t.values,s={...n};return r!==void 0&&(s.lineSpacing=ea(r*100,1)),a!==void 0&&(s.letterSpacing=ea(a*o(t),2)),{id:t.id,kind:t.kind,name:t.name,values:s}})}function rN(e,o){return e.map(t=>{let{lineSpacing:r,letterSpacing:a,...n}=t.values,s={id:t.id,kind:t.kind,name:t.name,values:qo({...n})},i={...s.values};if(r!==void 0&&(i.lineHeight=ea(r/100,3)),a!==void 0){let c=o({...s,values:{...s.values}});i.letterSpacing=c?ea(a/c,4):0}return{...s,values:qo(i)}})}function xoe(e){let o={fonts:Ta({heading:e.heading_font??void 0,heading2:e.heading_2_font??void 0,heading3:e.heading_3_font??void 0,body:e.body_font??void 0,accent:e.accent_font??void 0,label:e.label_font??void 0}),sizes:lc({headingLarge:e.heading_size_large_px,headingMedium:e.heading_size_medium_px,headingSmall:e.heading_size_small_px,accent:e.accent_size_px,body:e.body_size_px,label:e.label_size_px}),compression:jt(e.heading_compression),typography:Um(e)},t=e.text_styles??null,r=Array.isArray(t)?Rd(Bt(t,o),o):o;return{fonts:Ta(r.fonts),sizes:lc(r.sizes),compression:jt(r.compression),typography:r.typography,textStyles:t}}function Rd(e,o){let t=u=>e.find(h=>h.id===u)?.values??{},r=t("heading-1"),a=t("heading-2"),n=t("heading-3"),s=t("body-1"),i=t("body-5"),c=o.fonts,d=o.sizes,m=o.typography,x=u=>u==="none"?"sentence":"authored";return{fonts:{...c,heading:r.font??c.heading,heading2:a.font??r.font??c.heading2,heading3:n.font??r.font??c.heading3,body:s.font??c.body,label:i.font??c.label},sizes:{...d,headingLarge:r.size??null,headingMedium:a.size??null,headingSmall:n.size??null,body:s.size??null,label:i.size??null},compression:o.compression,typography:{...m,case:x(r.letterCase),weight:r.weight??null,maxPx:r.largestSize??null,weight2:a.weight??null,weight3:n.weight??null,case2:x(a.letterCase),case3:x(n.letterCase)}}}function aN(e){return e==="accent"?"var(--accent)":e==="text"?"var(--fg)":e==="labels"?"var(--fg-dim)":tN(e)===e.toLowerCase()?e:null}function hoe(e){let o=[];for(let t of e){let r=t.values,a=`.${lb(t)}`,n=`[${Xr}="${t.id}"]`,s=`${a}, ${n}`,i=[],c=r.font!==void 0?ko.find(u=>u.key===r.font)?.cssVar:void 0;if(c&&i.push(`font-family: var(${c})`),r.size!==void 0){let u=r.largestSize!==void 0?Math.min(r.size,r.largestSize):r.size;i.push(`font-size: ${u}px`)}let d=r.color!==void 0?aN(r.color):null;d&&i.push(`color: ${d}`),r.italic===!0&&i.push("font-style: italic"),r.weight!==void 0&&i.push(`font-weight: ${r.weight}`);let m=[];r.lineHeight!==void 0&&m.push(`line-height: ${r.lineHeight}`),r.letterSpacing!==void 0&&m.push(`letter-spacing: ${r.letterSpacing}em`),t.kind==="body"&&i.push(...m);let x=oN(r.letterCase);if(x&&t.kind==="body"&&i.push(`text-transform: ${x}`),r.paragraphSpacing&&i.push(`--sf-part-para: ${r.paragraphSpacing}px`),i.length&&o.push(`${s} { ${i.join("; ")} }`),t.kind==="heading"&&m.length&&o.push(`${s}, ${a}:is(h1, h2, h3, h4), ${n}:is(h1, h2, h3, h4) { ${m.join("; ")} }`),t.kind==="heading"&&x&&o.push(`${n}, ${a}:is(h1, h2, h3, h4) { text-transform: ${x} }`),r.paragraphSpacing&&(o.push(`*:has(> ${n}) { --sf-part-para: ${r.paragraphSpacing}px }`),o.push(...Ed(`:is(${s})`,`*:has(> ${n})`))),r.sizePhone!==void 0){let u=nN[t.id],h=[`${s} { font-size: ${r.sizePhone}px }`];u&&h.push(`.sf-themed-content { --size-${u}: ${r.sizePhone}px !important }`),o.push(`@media ${Ls} { ${h.join(" ")} }`)}}return o.join(`