@olonjs/core 1.0.96 → 1.0.97

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.
@@ -223,4 +223,4 @@ React keys must be passed directly to JSX without using spread:
223
223
  `)},Za=function(){var e=parseInt(document.body.getAttribute(tr)||"0",10);return isFinite(e)?e:0},Cm=function(){g.useEffect(function(){return document.body.setAttribute(tr,(Za()+1).toString()),function(){var e=Za()-1;e<=0?document.body.removeAttribute(tr):document.body.setAttribute(tr,e.toString())}},[])},Em=function(e){var t=e.noRelative,r=e.noImportant,n=e.gapMode,o=n===void 0?"margin":n;Cm();var i=g.useMemo(function(){return ym(o)},[o]);return g.createElement(km,{styles:Sm(i,!t,o,r?"":"!important")})},ei=!1;if(typeof window<"u")try{var Fn=Object.defineProperty({},"passive",{get:function(){return ei=!0,!0}});window.addEventListener("test",Fn,Fn),window.removeEventListener("test",Fn,Fn)}catch{ei=!1}var rr=ei?{passive:!1}:!1,jm=function(e){return e.tagName==="TEXTAREA"},Qa=function(e,t){if(!(e instanceof Element))return!1;var r=window.getComputedStyle(e);return r[t]!=="hidden"&&!(r.overflowY===r.overflowX&&!jm(e)&&r[t]==="visible")},Nm=function(e){return Qa(e,"overflowY")},Am=function(e){return Qa(e,"overflowX")},el=function(e,t){var r=t.ownerDocument,n=t;do{typeof ShadowRoot<"u"&&n instanceof ShadowRoot&&(n=n.host);var o=tl(e,n);if(o){var i=rl(e,n),s=i[1],a=i[2];if(s>a)return!0}n=n.parentNode}while(n&&n!==r.body);return!1},Tm=function(e){var t=e.scrollTop,r=e.scrollHeight,n=e.clientHeight;return[t,r,n]},zm=function(e){var t=e.scrollLeft,r=e.scrollWidth,n=e.clientWidth;return[t,r,n]},tl=function(e,t){return e==="v"?Nm(t):Am(t)},rl=function(e,t){return e==="v"?Tm(t):zm(t)},Pm=function(e,t){return e==="h"&&t==="rtl"?-1:1},Om=function(e,t,r,n,o){var i=Pm(e,window.getComputedStyle(t).direction),s=i*n,a=r.target,l=t.contains(a),d=!1,u=s>0,f=0,h=0;do{if(!a)break;var p=rl(e,a),w=p[0],m=p[1],v=p[2],y=m-v-i*w;(w||y)&&tl(e,a)&&(f+=y,h+=w);var k=a.parentNode;a=k&&k.nodeType===Node.DOCUMENT_FRAGMENT_NODE?k.host:k}while(!l&&a!==document.body||l&&(t.contains(a)||t===a));return(u&&Math.abs(f)<1||!u&&Math.abs(h)<1)&&(d=!0),d},Wn=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},nl=function(e){return[e.deltaX,e.deltaY]},ol=function(e){return e&&"current"in e?e.current:e},Im=function(e,t){return e[0]===t[0]&&e[1]===t[1]},Dm=function(e){return`
224
224
  .block-interactivity-`.concat(e,` {pointer-events: none;}
225
225
  .allow-interactivity-`).concat(e,` {pointer-events: all;}
226
- `)},_m=0,nr=[];function Mm(e){var t=g.useRef([]),r=g.useRef([0,0]),n=g.useRef(),o=g.useState(_m++)[0],i=g.useState(Ja)[0],s=g.useRef(e);g.useEffect(function(){s.current=e},[e]),g.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(o));var m=nm([e.lockRef.current],(e.shards||[]).map(ol),!0).filter(Boolean);return m.forEach(function(v){return v.classList.add("allow-interactivity-".concat(o))}),function(){document.body.classList.remove("block-interactivity-".concat(o)),m.forEach(function(v){return v.classList.remove("allow-interactivity-".concat(o))})}}},[e.inert,e.lockRef.current,e.shards]);var a=g.useCallback(function(m,v){if("touches"in m&&m.touches.length===2||m.type==="wheel"&&m.ctrlKey)return!s.current.allowPinchZoom;var y=Wn(m),k=r.current,x="deltaX"in m?m.deltaX:k[0]-y[0],S="deltaY"in m?m.deltaY:k[1]-y[1],C,j=m.target,N=Math.abs(x)>Math.abs(S)?"h":"v";if("touches"in m&&N==="h"&&j.type==="range")return!1;var E=window.getSelection(),D=E&&E.anchorNode,R=D?D===j||D.contains(j):!1;if(R)return!1;var I=el(N,j);if(!I)return!0;if(I?C=N:(C=N==="v"?"h":"v",I=el(N,j)),!I)return!1;if(!n.current&&"changedTouches"in m&&(x||S)&&(n.current=C),!C)return!0;var L=n.current||C;return Om(L,v,m,L==="h"?x:S)},[]),l=g.useCallback(function(m){var v=m;if(!(!nr.length||nr[nr.length-1]!==i)){var y="deltaY"in v?nl(v):Wn(v),k=t.current.filter(function(C){return C.name===v.type&&(C.target===v.target||v.target===C.shadowParent)&&Im(C.delta,y)})[0];if(k&&k.should){v.cancelable&&v.preventDefault();return}if(!k){var x=(s.current.shards||[]).map(ol).filter(Boolean).filter(function(C){return C.contains(v.target)}),S=x.length>0?a(v,x[0]):!s.current.noIsolation;S&&v.cancelable&&v.preventDefault()}}},[]),d=g.useCallback(function(m,v,y,k){var x={name:m,delta:v,target:y,should:k,shadowParent:Rm(y)};t.current.push(x),setTimeout(function(){t.current=t.current.filter(function(S){return S!==x})},1)},[]),u=g.useCallback(function(m){r.current=Wn(m),n.current=void 0},[]),f=g.useCallback(function(m){d(m.type,nl(m),m.target,a(m,e.lockRef.current))},[]),h=g.useCallback(function(m){d(m.type,Wn(m),m.target,a(m,e.lockRef.current))},[]);g.useEffect(function(){return nr.push(i),e.setCallbacks({onScrollCapture:f,onWheelCapture:f,onTouchMoveCapture:h}),document.addEventListener("wheel",l,rr),document.addEventListener("touchmove",l,rr),document.addEventListener("touchstart",u,rr),function(){nr=nr.filter(function(m){return m!==i}),document.removeEventListener("wheel",l,rr),document.removeEventListener("touchmove",l,rr),document.removeEventListener("touchstart",u,rr)}},[]);var p=e.removeScrollBar,w=e.inert;return g.createElement(g.Fragment,null,w?g.createElement(i,{styles:Dm(o)}):null,p?g.createElement(Em,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function Rm(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}const Lm=fm(Xa,Mm);var ti=g.forwardRef(function(e,t){return g.createElement($n,dt({},e,{ref:t,sideCar:Lm}))});ti.classNames=$n.classNames;var $m=[" ","Enter","ArrowUp","ArrowDown"],Fm=[" ","Enter"],Rt="Select",[Un,Bn,Wm]=ip(Rt),[or]=Ar(Rt,[Wm,Qt]),Hn=Qt(),[Um,Ct]=or(Rt),[Bm,Hm]=or(Rt),il=e=>{const{__scopeSelect:t,children:r,open:n,defaultOpen:o,onOpenChange:i,value:s,defaultValue:a,onValueChange:l,dir:d,name:u,autoComplete:f,disabled:h,required:p,form:w}=e,m=Hn(t),[v,y]=g.useState(null),[k,x]=g.useState(null),[S,C]=g.useState(!1),j=ap(d),[N,E]=Dn({prop:n,defaultProp:o??!1,onChange:i,caller:Rt}),[D,R]=Dn({prop:s,defaultProp:a,onChange:l,caller:Rt}),I=g.useRef(null),L=v?w||!!v.closest("form"):!0,[M,Y]=g.useState(new Set),H=Array.from(M).map(U=>U.props.value).join(";");return c.jsx(Go,{...m,children:c.jsxs(Um,{required:p,scope:t,trigger:v,onTriggerChange:y,valueNode:k,onValueNodeChange:x,valueNodeHasChildren:S,onValueNodeHasChildrenChange:C,contentId:Tr(),value:D,onValueChange:R,open:N,onOpenChange:E,dir:j,triggerPointerDownPosRef:I,disabled:h,children:[c.jsx(Un.Provider,{scope:t,children:c.jsx(Bm,{scope:e.__scopeSelect,onNativeOptionAdd:g.useCallback(U=>{Y(B=>new Set(B).add(U))},[]),onNativeOptionRemove:g.useCallback(U=>{Y(B=>{const T=new Set(B);return T.delete(U),T})},[]),children:r})}),L?c.jsxs(El,{"aria-hidden":!0,required:p,tabIndex:-1,name:u,autoComplete:f,value:D,onChange:U=>R(U.target.value),disabled:h,form:w,children:[D===void 0?c.jsx("option",{value:""}):null,Array.from(M)]},H):null]})})};il.displayName=Rt;var sl="SelectTrigger",al=g.forwardRef((e,t)=>{const{__scopeSelect:r,disabled:n=!1,...o}=e,i=Hn(r),s=Ct(sl,r),a=s.disabled||n,l=ke(t,s.onTriggerChange),d=Bn(r),u=g.useRef("touch"),[f,h,p]=Nl(m=>{const v=d().filter(x=>!x.disabled),y=v.find(x=>x.value===s.value),k=Al(v,m,y);k!==void 0&&s.onValueChange(k.value)}),w=m=>{a||(s.onOpenChange(!0),p()),m&&(s.triggerPointerDownPosRef.current={x:Math.round(m.pageX),y:Math.round(m.pageY)})};return c.jsx(On,{asChild:!0,...i,children:c.jsx(we.button,{type:"button",role:"combobox","aria-controls":s.contentId,"aria-expanded":s.open,"aria-required":s.required,"aria-autocomplete":"none",dir:s.dir,"data-state":s.open?"open":"closed",disabled:a,"data-disabled":a?"":void 0,"data-placeholder":jl(s.value)?"":void 0,...o,ref:l,onClick:pe(o.onClick,m=>{m.currentTarget.focus(),u.current!=="mouse"&&w(m)}),onPointerDown:pe(o.onPointerDown,m=>{u.current=m.pointerType;const v=m.target;v.hasPointerCapture(m.pointerId)&&v.releasePointerCapture(m.pointerId),m.button===0&&m.ctrlKey===!1&&m.pointerType==="mouse"&&(w(m),m.preventDefault())}),onKeyDown:pe(o.onKeyDown,m=>{const v=f.current!=="";!(m.ctrlKey||m.altKey||m.metaKey)&&m.key.length===1&&h(m.key),!(v&&m.key===" ")&&$m.includes(m.key)&&(w(),m.preventDefault())})})})});al.displayName=sl;var ll="SelectValue",cl=g.forwardRef((e,t)=>{const{__scopeSelect:r,className:n,style:o,children:i,placeholder:s="",...a}=e,l=Ct(ll,r),{onValueNodeHasChildrenChange:d}=l,u=i!==void 0,f=ke(t,l.onValueNodeChange);return Me(()=>{d(u)},[d,u]),c.jsx(we.span,{...a,ref:f,style:{pointerEvents:"none"},children:jl(l.value)?c.jsx(c.Fragment,{children:s}):i})});cl.displayName=ll;var Vm="SelectIcon",dl=g.forwardRef((e,t)=>{const{__scopeSelect:r,children:n,...o}=e;return c.jsx(we.span,{"aria-hidden":!0,...o,ref:t,children:n||"▼"})});dl.displayName=Vm;var Km="SelectPortal",ul=e=>c.jsx(In,{asChild:!0,...e});ul.displayName=Km;var Lt="SelectContent",fl=g.forwardRef((e,t)=>{const r=Ct(Lt,e.__scopeSelect),[n,o]=g.useState();if(Me(()=>{o(new DocumentFragment)},[]),!r.open){const i=n;return i?Vr.createPortal(c.jsx(pl,{scope:e.__scopeSelect,children:c.jsx(Un.Slot,{scope:e.__scopeSelect,children:c.jsx("div",{children:e.children})})}),i):null}return c.jsx(hl,{...e,ref:t})});fl.displayName=Lt;var nt=10,[pl,Et]=or(Lt),Gm="SelectContentImpl",Ym=Yt("SelectContent.RemoveScroll"),hl=g.forwardRef((e,t)=>{const{__scopeSelect:r,position:n="item-aligned",onCloseAutoFocus:o,onEscapeKeyDown:i,onPointerDownOutside:s,side:a,sideOffset:l,align:d,alignOffset:u,arrowPadding:f,collisionBoundary:h,collisionPadding:p,sticky:w,hideWhenDetached:m,avoidCollisions:v,...y}=e,k=Ct(Lt,r),[x,S]=g.useState(null),[C,j]=g.useState(null),N=ke(t,P=>S(P)),[E,D]=g.useState(null),[R,I]=g.useState(null),L=Bn(r),[M,Y]=g.useState(!1),H=g.useRef(!1);g.useEffect(()=>{if(x)return Ka(x)},[x]),oa();const U=g.useCallback(P=>{const[J,...te]=L().map(Q=>Q.ref.current),[F]=te.slice(-1),ne=document.activeElement;for(const Q of P)if(Q===ne||(Q==null||Q.scrollIntoView({block:"nearest"}),Q===J&&C&&(C.scrollTop=0),Q===F&&C&&(C.scrollTop=C.scrollHeight),Q==null||Q.focus(),document.activeElement!==ne))return},[L,C]),B=g.useCallback(()=>U([E,x]),[U,E,x]);g.useEffect(()=>{M&&B()},[M,B]);const{onOpenChange:T,triggerPointerDownPosRef:X}=k;g.useEffect(()=>{if(x){let P={x:0,y:0};const J=F=>{var ne,Q;P={x:Math.abs(Math.round(F.pageX)-(((ne=X.current)==null?void 0:ne.x)??0)),y:Math.abs(Math.round(F.pageY)-(((Q=X.current)==null?void 0:Q.y)??0))}},te=F=>{P.x<=10&&P.y<=10?F.preventDefault():x.contains(F.target)||T(!1),document.removeEventListener("pointermove",J),X.current=null};return X.current!==null&&(document.addEventListener("pointermove",J),document.addEventListener("pointerup",te,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",J),document.removeEventListener("pointerup",te,{capture:!0})}}},[x,T,X]),g.useEffect(()=>{const P=()=>T(!1);return window.addEventListener("blur",P),window.addEventListener("resize",P),()=>{window.removeEventListener("blur",P),window.removeEventListener("resize",P)}},[T]);const[re,A]=Nl(P=>{const J=L().filter(ne=>!ne.disabled),te=J.find(ne=>ne.ref.current===document.activeElement),F=Al(J,P,te);F&&setTimeout(()=>F.ref.current.focus())}),W=g.useCallback((P,J,te)=>{const F=!H.current&&!te;(k.value!==void 0&&k.value===J||F)&&(D(P),F&&(H.current=!0))},[k.value]),q=g.useCallback(()=>x==null?void 0:x.focus(),[x]),G=g.useCallback((P,J,te)=>{const F=!H.current&&!te;(k.value!==void 0&&k.value===J||F)&&I(P)},[k.value]),me=n==="popper"?ri:ml,se=me===ri?{side:a,sideOffset:l,align:d,alignOffset:u,arrowPadding:f,collisionBoundary:h,collisionPadding:p,sticky:w,hideWhenDetached:m,avoidCollisions:v}:{};return c.jsx(pl,{scope:r,content:x,viewport:C,onViewportChange:j,itemRefCallback:W,selectedItem:E,onItemLeave:q,itemTextRefCallback:G,focusSelectedItem:B,selectedItemText:R,position:n,isPositioned:M,searchRef:re,children:c.jsx(ti,{as:Ym,allowPinchZoom:!0,children:c.jsx(Io,{asChild:!0,trapped:k.open,onMountAutoFocus:P=>{P.preventDefault()},onUnmountAutoFocus:pe(o,P=>{var J;(J=k.trigger)==null||J.focus({preventScroll:!0}),P.preventDefault()}),children:c.jsx(yn,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:i,onPointerDownOutside:s,onFocusOutside:P=>P.preventDefault(),onDismiss:()=>k.onOpenChange(!1),children:c.jsx(me,{role:"listbox",id:k.contentId,"data-state":k.open?"open":"closed",dir:k.dir,onContextMenu:P=>P.preventDefault(),...y,...se,onPlaced:()=>Y(!0),ref:N,style:{display:"flex",flexDirection:"column",outline:"none",...y.style},onKeyDown:pe(y.onKeyDown,P=>{const J=P.ctrlKey||P.altKey||P.metaKey;if(P.key==="Tab"&&P.preventDefault(),!J&&P.key.length===1&&A(P.key),["ArrowUp","ArrowDown","Home","End"].includes(P.key)){let F=L().filter(ne=>!ne.disabled).map(ne=>ne.ref.current);if(["ArrowUp","End"].includes(P.key)&&(F=F.slice().reverse()),["ArrowUp","ArrowDown"].includes(P.key)){const ne=P.target,Q=F.indexOf(ne);F=F.slice(Q+1)}setTimeout(()=>U(F)),P.preventDefault()}})})})})})})});hl.displayName=Gm;var qm="SelectItemAlignedPosition",ml=g.forwardRef((e,t)=>{const{__scopeSelect:r,onPlaced:n,...o}=e,i=Ct(Lt,r),s=Et(Lt,r),[a,l]=g.useState(null),[d,u]=g.useState(null),f=ke(t,N=>u(N)),h=Bn(r),p=g.useRef(!1),w=g.useRef(!0),{viewport:m,selectedItem:v,selectedItemText:y,focusSelectedItem:k}=s,x=g.useCallback(()=>{if(i.trigger&&i.valueNode&&a&&d&&m&&v&&y){const N=i.trigger.getBoundingClientRect(),E=d.getBoundingClientRect(),D=i.valueNode.getBoundingClientRect(),R=y.getBoundingClientRect();if(i.dir!=="rtl"){const ne=R.left-E.left,Q=D.left-ne,xe=N.left-Q,ge=N.width+xe,ze=Math.max(ge,E.width),Oe=window.innerWidth-nt,Be=Xs(Q,[nt,Math.max(nt,Oe-ze)]);a.style.minWidth=ge+"px",a.style.left=Be+"px"}else{const ne=E.right-R.right,Q=window.innerWidth-D.right-ne,xe=window.innerWidth-N.right-Q,ge=N.width+xe,ze=Math.max(ge,E.width),Oe=window.innerWidth-nt,Be=Xs(Q,[nt,Math.max(nt,Oe-ze)]);a.style.minWidth=ge+"px",a.style.right=Be+"px"}const I=h(),L=window.innerHeight-nt*2,M=m.scrollHeight,Y=window.getComputedStyle(d),H=parseInt(Y.borderTopWidth,10),U=parseInt(Y.paddingTop,10),B=parseInt(Y.borderBottomWidth,10),T=parseInt(Y.paddingBottom,10),X=H+U+M+T+B,re=Math.min(v.offsetHeight*5,X),A=window.getComputedStyle(m),W=parseInt(A.paddingTop,10),q=parseInt(A.paddingBottom,10),G=N.top+N.height/2-nt,me=L-G,se=v.offsetHeight/2,P=v.offsetTop+se,J=H+U+P,te=X-J;if(J<=G){const ne=I.length>0&&v===I[I.length-1].ref.current;a.style.bottom="0px";const Q=d.clientHeight-m.offsetTop-m.offsetHeight,xe=Math.max(me,se+(ne?q:0)+Q+B),ge=J+xe;a.style.height=ge+"px"}else{const ne=I.length>0&&v===I[0].ref.current;a.style.top="0px";const xe=Math.max(G,H+m.offsetTop+(ne?W:0)+se)+te;a.style.height=xe+"px",m.scrollTop=J-G+m.offsetTop}a.style.margin=`${nt}px 0`,a.style.minHeight=re+"px",a.style.maxHeight=L+"px",n==null||n(),requestAnimationFrame(()=>p.current=!0)}},[h,i.trigger,i.valueNode,a,d,m,v,y,i.dir,n]);Me(()=>x(),[x]);const[S,C]=g.useState();Me(()=>{d&&C(window.getComputedStyle(d).zIndex)},[d]);const j=g.useCallback(N=>{N&&w.current===!0&&(x(),k==null||k(),w.current=!1)},[x,k]);return c.jsx(Jm,{scope:r,contentWrapper:a,shouldExpandOnScrollRef:p,onScrollButtonChange:j,children:c.jsx("div",{ref:l,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:S},children:c.jsx(we.div,{...o,ref:f,style:{boxSizing:"border-box",maxHeight:"100%",...o.style}})})})});ml.displayName=qm;var Xm="SelectPopperPosition",ri=g.forwardRef((e,t)=>{const{__scopeSelect:r,align:n="start",collisionPadding:o=nt,...i}=e,s=Hn(r);return c.jsx(Yo,{...s,...i,ref:t,align:n,collisionPadding:o,style:{boxSizing:"border-box",...i.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})});ri.displayName=Xm;var[Jm,ni]=or(Lt,{}),oi="SelectViewport",gl=g.forwardRef((e,t)=>{const{__scopeSelect:r,nonce:n,...o}=e,i=Et(oi,r),s=ni(oi,r),a=ke(t,i.onViewportChange),l=g.useRef(0);return c.jsxs(c.Fragment,{children:[c.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:n}),c.jsx(Un.Slot,{scope:r,children:c.jsx(we.div,{"data-radix-select-viewport":"",role:"presentation",...o,ref:a,style:{position:"relative",flex:1,overflow:"hidden auto",...o.style},onScroll:pe(o.onScroll,d=>{const u=d.currentTarget,{contentWrapper:f,shouldExpandOnScrollRef:h}=s;if(h!=null&&h.current&&f){const p=Math.abs(l.current-u.scrollTop);if(p>0){const w=window.innerHeight-nt*2,m=parseFloat(f.style.minHeight),v=parseFloat(f.style.height),y=Math.max(m,v);if(y<w){const k=y+p,x=Math.min(w,k),S=k-x;f.style.height=x+"px",f.style.bottom==="0px"&&(u.scrollTop=S>0?S:0,f.style.justifyContent="flex-end")}}}l.current=u.scrollTop})})})]})});gl.displayName=oi;var bl="SelectGroup",[Zm,Qm]=or(bl),eg=g.forwardRef((e,t)=>{const{__scopeSelect:r,...n}=e,o=Tr();return c.jsx(Zm,{scope:r,id:o,children:c.jsx(we.div,{role:"group","aria-labelledby":o,...n,ref:t})})});eg.displayName=bl;var vl="SelectLabel",tg=g.forwardRef((e,t)=>{const{__scopeSelect:r,...n}=e,o=Qm(vl,r);return c.jsx(we.div,{id:o.id,...n,ref:t})});tg.displayName=vl;var Vn="SelectItem",[rg,xl]=or(Vn),wl=g.forwardRef((e,t)=>{const{__scopeSelect:r,value:n,disabled:o=!1,textValue:i,...s}=e,a=Ct(Vn,r),l=Et(Vn,r),d=a.value===n,[u,f]=g.useState(i??""),[h,p]=g.useState(!1),w=ke(t,k=>{var x;return(x=l.itemRefCallback)==null?void 0:x.call(l,k,n,o)}),m=Tr(),v=g.useRef("touch"),y=()=>{o||(a.onValueChange(n),a.onOpenChange(!1))};if(n==="")throw new Error("A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return c.jsx(rg,{scope:r,value:n,disabled:o,textId:m,isSelected:d,onItemTextChange:g.useCallback(k=>{f(x=>x||((k==null?void 0:k.textContent)??"").trim())},[]),children:c.jsx(Un.ItemSlot,{scope:r,value:n,disabled:o,textValue:u,children:c.jsx(we.div,{role:"option","aria-labelledby":m,"data-highlighted":h?"":void 0,"aria-selected":d&&h,"data-state":d?"checked":"unchecked","aria-disabled":o||void 0,"data-disabled":o?"":void 0,tabIndex:o?void 0:-1,...s,ref:w,onFocus:pe(s.onFocus,()=>p(!0)),onBlur:pe(s.onBlur,()=>p(!1)),onClick:pe(s.onClick,()=>{v.current!=="mouse"&&y()}),onPointerUp:pe(s.onPointerUp,()=>{v.current==="mouse"&&y()}),onPointerDown:pe(s.onPointerDown,k=>{v.current=k.pointerType}),onPointerMove:pe(s.onPointerMove,k=>{var x;v.current=k.pointerType,o?(x=l.onItemLeave)==null||x.call(l):v.current==="mouse"&&k.currentTarget.focus({preventScroll:!0})}),onPointerLeave:pe(s.onPointerLeave,k=>{var x;k.currentTarget===document.activeElement&&((x=l.onItemLeave)==null||x.call(l))}),onKeyDown:pe(s.onKeyDown,k=>{var S;((S=l.searchRef)==null?void 0:S.current)!==""&&k.key===" "||(Fm.includes(k.key)&&y(),k.key===" "&&k.preventDefault())})})})})});wl.displayName=Vn;var Or="SelectItemText",yl=g.forwardRef((e,t)=>{const{__scopeSelect:r,className:n,style:o,...i}=e,s=Ct(Or,r),a=Et(Or,r),l=xl(Or,r),d=Hm(Or,r),[u,f]=g.useState(null),h=ke(t,y=>f(y),l.onItemTextChange,y=>{var k;return(k=a.itemTextRefCallback)==null?void 0:k.call(a,y,l.value,l.disabled)}),p=u==null?void 0:u.textContent,w=g.useMemo(()=>c.jsx("option",{value:l.value,disabled:l.disabled,children:p},l.value),[l.disabled,l.value,p]),{onNativeOptionAdd:m,onNativeOptionRemove:v}=d;return Me(()=>(m(w),()=>v(w)),[m,v,w]),c.jsxs(c.Fragment,{children:[c.jsx(we.span,{id:l.textId,...i,ref:h}),l.isSelected&&s.valueNode&&!s.valueNodeHasChildren?Vr.createPortal(i.children,s.valueNode):null]})});yl.displayName=Or;var kl="SelectItemIndicator",Sl=g.forwardRef((e,t)=>{const{__scopeSelect:r,...n}=e;return xl(kl,r).isSelected?c.jsx(we.span,{"aria-hidden":!0,...n,ref:t}):null});Sl.displayName=kl;var ii="SelectScrollUpButton",ng=g.forwardRef((e,t)=>{const r=Et(ii,e.__scopeSelect),n=ni(ii,e.__scopeSelect),[o,i]=g.useState(!1),s=ke(t,n.onScrollButtonChange);return Me(()=>{if(r.viewport&&r.isPositioned){let a=function(){const d=l.scrollTop>0;i(d)};const l=r.viewport;return a(),l.addEventListener("scroll",a),()=>l.removeEventListener("scroll",a)}},[r.viewport,r.isPositioned]),o?c.jsx(Cl,{...e,ref:s,onAutoScroll:()=>{const{viewport:a,selectedItem:l}=r;a&&l&&(a.scrollTop=a.scrollTop-l.offsetHeight)}}):null});ng.displayName=ii;var si="SelectScrollDownButton",og=g.forwardRef((e,t)=>{const r=Et(si,e.__scopeSelect),n=ni(si,e.__scopeSelect),[o,i]=g.useState(!1),s=ke(t,n.onScrollButtonChange);return Me(()=>{if(r.viewport&&r.isPositioned){let a=function(){const d=l.scrollHeight-l.clientHeight,u=Math.ceil(l.scrollTop)<d;i(u)};const l=r.viewport;return a(),l.addEventListener("scroll",a),()=>l.removeEventListener("scroll",a)}},[r.viewport,r.isPositioned]),o?c.jsx(Cl,{...e,ref:s,onAutoScroll:()=>{const{viewport:a,selectedItem:l}=r;a&&l&&(a.scrollTop=a.scrollTop+l.offsetHeight)}}):null});og.displayName=si;var Cl=g.forwardRef((e,t)=>{const{__scopeSelect:r,onAutoScroll:n,...o}=e,i=Et("SelectScrollButton",r),s=g.useRef(null),a=Bn(r),l=g.useCallback(()=>{s.current!==null&&(window.clearInterval(s.current),s.current=null)},[]);return g.useEffect(()=>()=>l(),[l]),Me(()=>{var u;const d=a().find(f=>f.ref.current===document.activeElement);(u=d==null?void 0:d.ref.current)==null||u.scrollIntoView({block:"nearest"})},[a]),c.jsx(we.div,{"aria-hidden":!0,...o,ref:t,style:{flexShrink:0,...o.style},onPointerDown:pe(o.onPointerDown,()=>{s.current===null&&(s.current=window.setInterval(n,50))}),onPointerMove:pe(o.onPointerMove,()=>{var d;(d=i.onItemLeave)==null||d.call(i),s.current===null&&(s.current=window.setInterval(n,50))}),onPointerLeave:pe(o.onPointerLeave,()=>{l()})})}),ig="SelectSeparator",sg=g.forwardRef((e,t)=>{const{__scopeSelect:r,...n}=e;return c.jsx(we.div,{"aria-hidden":!0,...n,ref:t})});sg.displayName=ig;var ai="SelectArrow",ag=g.forwardRef((e,t)=>{const{__scopeSelect:r,...n}=e,o=Hn(r),i=Ct(ai,r),s=Et(ai,r);return i.open&&s.position==="popper"?c.jsx(qo,{...o,...n,ref:t}):null});ag.displayName=ai;var lg="SelectBubbleInput",El=g.forwardRef(({__scopeSelect:e,value:t,...r},n)=>{const o=g.useRef(null),i=ke(n,o),s=Jh(t);return g.useEffect(()=>{const a=o.current;if(!a)return;const l=window.HTMLSelectElement.prototype,u=Object.getOwnPropertyDescriptor(l,"value").set;if(s!==t&&u){const f=new Event("change",{bubbles:!0});u.call(a,t),a.dispatchEvent(f)}},[s,t]),c.jsx(we.select,{...r,style:{...Ba,...r.style},ref:i,defaultValue:t})});El.displayName=lg;function jl(e){return e===""||e===void 0}function Nl(e){const t=_t(e),r=g.useRef(""),n=g.useRef(0),o=g.useCallback(s=>{const a=r.current+s;t(a),(function l(d){r.current=d,window.clearTimeout(n.current),d!==""&&(n.current=window.setTimeout(()=>l(""),1e3))})(a)},[t]),i=g.useCallback(()=>{r.current="",window.clearTimeout(n.current)},[]);return g.useEffect(()=>()=>window.clearTimeout(n.current),[]),[r,o,i]}function Al(e,t,r){const o=t.length>1&&Array.from(t).every(d=>d===t[0])?t[0]:t,i=r?e.indexOf(r):-1;let s=cg(e,Math.max(i,0));o.length===1&&(s=s.filter(d=>d!==r));const l=s.find(d=>d.textValue.toLowerCase().startsWith(o.toLowerCase()));return l!==r?l:void 0}function cg(e,t){return e.map((r,n)=>e[(t+n)%e.length])}var dg=il,Tl=al,ug=cl,fg=dl,pg=ul,zl=fl,hg=gl,Pl=wl,mg=yl,gg=Sl;const bg=dg,vg=ug,Ol=g.forwardRef(({className:e,children:t,...r},n)=>c.jsxs(Tl,{ref:n,className:oe("flex h-8 w-full items-center justify-between gap-2 rounded-md border border-zinc-800 bg-black px-3 py-1.5 text-left text-xs font-medium text-white outline-none","hover:bg-zinc-900 focus-visible:ring-2 focus-visible:ring-blue-500/80 focus-visible:ring-inset focus-visible:border-zinc-600","disabled:pointer-events-none disabled:opacity-50 [&>span]:line-clamp-1 [&>span]:flex [&>span]:items-center [&>span]:gap-2",e),style:{boxShadow:"none",WebkitBoxShadow:"none",MozBoxShadow:"none"},...r,children:[t,c.jsx(fg,{asChild:!0,children:c.jsx(Jr,{className:"h-3 w-3 shrink-0 text-zinc-400",strokeWidth:2})})]}));Ol.displayName=Tl.displayName;const Il=g.forwardRef(({className:e,children:t,position:r="popper",...n},o)=>c.jsx(pg,{children:c.jsx(zl,{ref:o,className:oe("relative z-[9999] max-h-96 min-w-[8rem] overflow-hidden rounded-md border border-zinc-800 bg-zinc-950 text-white shadow-lg","data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95","data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",r==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",e),position:r,...n,children:c.jsx(hg,{className:oe("p-1",r==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:t})})}));Il.displayName=zl.displayName;const Dl=g.forwardRef(({className:e,children:t,...r},n)=>c.jsxs(Pl,{ref:n,className:oe("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-xs outline-none","focus:bg-zinc-800 focus:text-white data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...r,children:[c.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:c.jsx(gg,{children:c.jsx(so,{className:"h-3 w-3",strokeWidth:2})})}),c.jsx(mg,{children:t})]}));Dl.displayName=Pl.displayName;const _l=g.createContext(null);function Ml(){const e=g.useContext(_l);if(!e)throw new Error("Dialog components must be used within Dialog");return e}function Rl({open:e,onOpenChange:t,children:r}){const[n,o]=g.useState(!1),i=e!==void 0,s=i?e:n,a=g.useCallback(d=>{i||o(d),t==null||t(d)},[i,t]),l=g.useMemo(()=>({open:s,onOpenChange:a}),[s,a]);return c.jsx(_l.Provider,{value:l,children:r})}function xg({asChild:e,children:t}){const{onOpenChange:r}=Ml(),n=g.Children.only(t);return e&&g.isValidElement(n)?g.cloneElement(n,{onClick:o=>{var i,s;(s=(i=n.props).onClick)==null||s.call(i,o),r(!0)}}):c.jsx("button",{type:"button",onClick:()=>r(!0),children:t})}function Ll({className:e,children:t,preventCloseOnBackdropClick:r,...n}){const{open:o,onOpenChange:i}=Ml();if(g.useEffect(()=>{const a=l=>{l.key==="Escape"&&i(!1)};return o&&(document.addEventListener("keydown",a),document.body.style.overflow="hidden"),()=>{document.removeEventListener("keydown",a),document.body.style.overflow=""}},[o,i]),!o)return null;const s=a=>{a.preventDefault(),a.stopPropagation()};return bt.createPortal(c.jsxs(c.Fragment,{children:[c.jsx("div",{className:"fixed inset-0 z-[9998] bg-black/60","aria-hidden":!0,onClick:()=>!r&&i(!1),onDragOver:s,onDrop:s}),c.jsx("div",{role:"dialog","aria-modal":!0,className:oe("fixed left-1/2 top-1/2 z-[9999] w-[calc(100%-2rem)] max-w-lg -translate-x-1/2 -translate-y-1/2 rounded-lg border border-zinc-700 bg-zinc-900 p-4 shadow-xl",e),onClick:a=>a.stopPropagation(),...n,children:t})]}),document.body)}function $l({className:e,...t}){return c.jsx("div",{className:oe("flex flex-col gap-1.5 pb-4",e),...t})}function wg({className:e,...t}){return c.jsx("div",{className:oe("flex justify-end gap-2 pt-4",e),...t})}function Fl({className:e,...t}){return c.jsx("h2",{className:oe("text-sm font-semibold text-white",e),...t})}function Wl({className:e,...t}){return c.jsx("p",{className:oe("text-xs text-zinc-400",e),...t})}const qe=g.forwardRef(({className:e,variant:t="default",size:r="default",asChild:n=!1,...o},i)=>{const s="inline-flex items-center justify-center gap-1.5 whitespace-nowrap rounded-md font-medium transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:shrink-0 cursor-pointer",a={default:"bg-primary text-primary-foreground shadow-lg shadow-primary/20 hover:bg-primary/90",outline:"border border-zinc-700 bg-zinc-900 text-zinc-200 hover:bg-zinc-800 hover:border-zinc-600",ghost:"text-zinc-500 hover:text-zinc-200 hover:bg-zinc-800",destructive:"bg-destructive/15 text-destructive hover:bg-destructive/25"},l={sm:"h-7 px-2.5 text-[11px]",default:"h-8 px-3 py-1.5 text-xs",lg:"h-9 px-5 text-sm",icon:"h-8 w-8","icon-sm":"h-7 w-7","icon-xs":"h-6 w-6"},d=n?Qf:"button";return c.jsx(d,{ref:i,type:"button",className:oe(s,a[t],l[r],e),...o})});qe.displayName="Button";const yg=["library","upload","url"];function kg({library:e,selectedId:t,onSelect:r}){const[n,o]=b.useState(""),[i,s]=b.useState("all"),a=["all",...new Set(e.flatMap(d=>d.tags??[]))],l=e.filter(d=>{const u=i==="all"||(d.tags??[]).includes(i),f=!n||(d.alt??"").toLowerCase().includes(n.toLowerCase());return u&&f});return c.jsxs("div",{className:"space-y-4",children:[c.jsxs("div",{className:"relative",children:[c.jsx($d,{size:14,className:"absolute left-3 top-1/2 -translate-y-1/2 text-zinc-600 pointer-events-none"}),c.jsx(Ao,{value:n,onChange:d=>o(d.target.value),placeholder:"Cerca immagini...",className:"pl-9 h-8 text-xs bg-zinc-900/50 border-zinc-800"})]}),c.jsx("div",{className:"flex flex-wrap gap-1.5",children:a.map(d=>c.jsx("button",{type:"button",onClick:()=>s(d),className:oe("px-2.5 py-1 rounded text-[10px] font-medium border transition-colors",i===d?"border-blue-500 bg-blue-500/20 text-blue-400":"border-zinc-700 text-zinc-500 hover:border-zinc-600 hover:text-zinc-400"),children:d==="all"?"Tutte":d},d))}),l.length>0?c.jsx("div",{className:"grid grid-cols-3 gap-2.5 max-h-[45vh] overflow-y-auto",children:l.map(d=>{const u=t===d.id;return c.jsxs("button",{type:"button",onClick:()=>r(u?null:d.id),className:oe("group relative aspect-[4/3] rounded-lg overflow-hidden","ring-1 transition-all duration-150",u?"ring-blue-500 ring-2 ring-offset-1 ring-offset-zinc-900":"ring-zinc-800 hover:ring-zinc-600 hover:scale-[1.02]"),children:[c.jsx("img",{src:d.url,alt:d.alt,loading:"lazy",className:oe("w-full h-full object-cover transition-[filter] duration-150",u?"brightness-[0.6]":"brightness-[0.85] group-hover:brightness-100")}),c.jsx("div",{className:oe("absolute inset-x-0 bottom-0 px-2 py-1.5","bg-gradient-to-t from-black/70 to-transparent","opacity-0 group-hover:opacity-100 transition-opacity",u&&"opacity-100"),children:c.jsx("span",{className:"text-[10px] text-white font-medium leading-tight line-clamp-2",children:d.alt})}),u&&c.jsx("div",{className:"absolute top-2 right-2 w-6 h-6 rounded-full bg-blue-600 flex items-center justify-center",children:c.jsx(so,{size:14,className:"text-white"})})]},d.id)})}):c.jsx("div",{className:"text-center py-12 text-zinc-600 text-xs",children:"Nessuna immagine in libreria. Configura assets.assetsManifest nel tenant (es. da public/assets)."})]})}function Sg({preview:e,onPreviewChange:t,onAssetUpload:r}){const[n,o]=b.useState(!1),i=b.useRef(null),s=b.useCallback(async u=>{if(fetch("http://127.0.0.1:7588/ingest/86d71502-47e1-433c-9b6d-5a1390d00813",{method:"POST",headers:{"Content-Type":"application/json","X-Debug-Session-Id":"34bba5"},body:JSON.stringify({sessionId:"34bba5",location:"ImagePickerDialog.tsx:handleFile",message:"handleFile called",data:{fileName:u.name,hasOnAssetUpload:!!r},timestamp:Date.now(),hypothesisId:"H5"})}).catch(()=>{}),!u.type.startsWith("image/"))return;if(r){try{const h=await r(u);fetch("http://127.0.0.1:7588/ingest/86d71502-47e1-433c-9b6d-5a1390d00813",{method:"POST",headers:{"Content-Type":"application/json","X-Debug-Session-Id":"34bba5"},body:JSON.stringify({sessionId:"34bba5",location:"ImagePickerDialog.tsx:handleFile",message:"onAssetUpload resolved",data:{url:h==null?void 0:h.slice(0,50)},timestamp:Date.now(),hypothesisId:"H2,H5"})}).catch(()=>{}),t({name:u.name,size:u.size,dataUrl:h})}catch{const h=new FileReader;h.onload=p=>{var w;t({name:u.name,size:u.size,dataUrl:(w=p.target)==null?void 0:w.result})},h.readAsDataURL(u)}return}const f=new FileReader;f.onload=h=>{var p;t({name:u.name,size:u.size,dataUrl:(p=h.target)==null?void 0:p.result})},f.readAsDataURL(u)},[t,r]),a=b.useCallback(u=>{var h,p;u.preventDefault(),u.stopPropagation(),o(!1);const f=(p=(h=u.dataTransfer)==null?void 0:h.files)==null?void 0:p[0];f&&s(f)},[s]),l=b.useCallback(u=>{u.preventDefault(),u.stopPropagation(),o(!0)},[]),d=b.useCallback(u=>{var h;const f=(h=u.target.files)==null?void 0:h[0];f&&s(f)},[s]);return c.jsxs("div",{onDragOver:l,onDragEnter:l,onDragLeave:u=>{u.preventDefault(),u.stopPropagation(),o(!1)},onDrop:a,onClick:()=>{var u;return!e&&((u=i.current)==null?void 0:u.click())},className:oe("rounded-xl border-2 border-dashed transition-all min-h-[240px]","flex flex-col items-center justify-center overflow-hidden cursor-pointer relative",n?"border-blue-500/50 bg-blue-500/[0.04]":e?"border-zinc-800 bg-transparent cursor-default":"border-zinc-800 bg-white/[0.01] hover:border-zinc-600 hover:bg-white/[0.02]"),children:[e?c.jsxs(c.Fragment,{children:[c.jsx("img",{src:e.dataUrl,alt:"Upload preview",className:"w-full max-h-[320px] object-contain"}),c.jsxs("div",{className:"absolute bottom-0 inset-x-0 bg-gradient-to-t from-black/80 to-transparent p-4 flex items-center justify-between",children:[c.jsxs("div",{children:[c.jsx("p",{className:"text-xs font-medium text-white",children:e.name}),c.jsxs("p",{className:"text-[10px] text-zinc-400",children:[(e.size/1024).toFixed(1)," KB"]})]}),c.jsx(qe,{type:"button",variant:"ghost",className:"text-zinc-400 hover:text-red-400 hover:bg-red-500/10 h-8 w-8 p-0",onClick:u=>{u.stopPropagation(),t(null)},children:c.jsx(Qr,{size:14})})]})]}):c.jsxs(c.Fragment,{children:[c.jsx("div",{className:"w-12 h-12 rounded-xl bg-blue-500/10 flex items-center justify-center text-blue-500 mb-3",children:c.jsx(is,{size:22})}),c.jsx("p",{className:"text-sm font-medium text-white mb-1",children:"Trascina un'immagine qui"}),c.jsx("p",{className:"text-[11px] text-zinc-500 mb-3",children:"oppure clicca per selezionare un file"}),c.jsx("span",{className:"text-[10px] text-zinc-600 bg-white/[0.03] px-3 py-1 rounded",children:"PNG, JPG, WebP — max 5MB"})]}),c.jsx("input",{ref:i,type:"file",accept:"image/*",className:"hidden",onChange:d})]})}function Cg({urlPreview:e,onUrlPreviewChange:t}){const[r,n]=b.useState(""),[o,i]=b.useState(!1),s=()=>{if(r.trim())try{new URL(r),t(r),i(!1)}catch{i(!0),t(null)}};return c.jsxs("div",{className:"space-y-4",children:[c.jsxs("div",{children:[c.jsx(Dt,{className:"block text-[10px] font-bold uppercase tracking-[0.08em] text-zinc-500 mb-1.5",children:"URL immagine"}),c.jsxs("div",{className:"flex gap-2",children:[c.jsx(Ao,{value:r,onChange:a=>{n(a.target.value),i(!1)},onKeyDown:a=>a.key==="Enter"&&s(),placeholder:"https://images.unsplash.com/photo-...",className:oe("h-8 text-xs bg-zinc-900/50 border-zinc-800",o&&"border-red-500/50")}),c.jsx(qe,{type:"button",variant:"outline",onClick:s,className:"shrink-0 h-8",children:"Anteprima"})]}),o&&c.jsx("p",{className:"text-[11px] text-red-400 mt-1.5",children:"URL non valido. Inserisci un URL completo (https://…)"})]}),e?c.jsxs("div",{className:"rounded-lg overflow-hidden ring-1 ring-zinc-800",children:[c.jsx("img",{src:e,alt:"URL preview",className:"w-full max-h-[320px] object-contain bg-black/30",onError:()=>{i(!0),t(null)}}),c.jsxs("div",{className:"px-3.5 py-2.5 bg-white/[0.02] border-t border-zinc-800 flex items-center gap-2",children:[c.jsx(so,{size:14,className:"text-emerald-400"}),c.jsx("span",{className:"text-[11px] text-zinc-500",children:"Immagine caricata correttamente"})]})]}):o?null:c.jsxs("div",{className:"flex flex-col items-center py-12 text-zinc-600",children:[c.jsx(ns,{size:32,className:"mb-3 opacity-40"}),c.jsx("p",{className:"text-xs",children:"Incolla un URL e premi Anteprima per verificare"})]})]})}const Eg=({open:e,onOpenChange:t,onSelect:r})=>{const{assets:n}=pr(),o=(n==null?void 0:n.assetsManifest)??[],[i,s]=b.useState("library"),[a,l]=b.useState(null),[d,u]=b.useState(null),[f,h]=b.useState(null);b.useEffect(()=>{e&&(s("library"),l(null),u(null),h(null))},[e]),b.useEffect(()=>{if(!e||i!=="upload")return;const y=()=>{fetch("http://127.0.0.1:7588/ingest/86d71502-47e1-433c-9b6d-5a1390d00813",{method:"POST",headers:{"Content-Type":"application/json","X-Debug-Session-Id":"34bba5"},body:JSON.stringify({sessionId:"34bba5",location:"ImagePickerDialog.tsx:beforeunload",message:"beforeunload fired",data:{},timestamp:Date.now(),hypothesisId:"H1"})}).catch(()=>{})};return window.addEventListener("beforeunload",y),()=>window.removeEventListener("beforeunload",y)},[e,i]),b.useEffect(()=>{if(!e||i!=="upload")return;const y=x=>{x.preventDefault()},k={capture:!0};return document.addEventListener("dragover",y,k),document.addEventListener("drop",y,k),window.addEventListener("dragover",y,k),window.addEventListener("drop",y,k),()=>{document.removeEventListener("dragover",y,k),document.removeEventListener("drop",y,k),window.removeEventListener("dragover",y,k),window.removeEventListener("drop",y,k)}},[e,i]);const p=i==="library"&&a!=null||i==="upload"&&d!=null||i==="url"&&f!=null,w=()=>{if(i==="library"&&a){const y=o.find(k=>k.id===a);y&&r({url:y.url,alt:y.alt})}else i==="upload"&&d?r({url:d.dataUrl,alt:d.name}):i==="url"&&f&&r({url:f,alt:""});setTimeout(()=>t(!1),0)},m=i==="library"&&a?"1 immagine selezionata":i==="upload"&&d?d.name:i==="url"&&f?"URL pronto":"Nessuna selezione",v=y=>{y.preventDefault(),y.stopPropagation()};return c.jsx(Rl,{open:e,onOpenChange:t,children:c.jsxs(Ll,{className:"max-w-2xl p-0 gap-0 max-h-[90vh] flex flex-col",preventCloseOnBackdropClick:i==="upload",onDragOver:v,onDrop:v,children:[c.jsxs($l,{className:"px-5 py-4 flex flex-row items-start justify-between gap-4 border-b border-zinc-800",children:[c.jsxs("div",{className:"flex items-center gap-3",children:[c.jsx("div",{className:"p-1.5 rounded-lg bg-blue-500/15 text-blue-500",children:c.jsx(Zr,{size:18})}),c.jsxs("div",{children:[c.jsx(Fl,{children:"Image Picker"}),c.jsx(Wl,{children:"Scegli dalla libreria, carica dal disco o inserisci un link"})]})]}),c.jsx("button",{type:"button",onClick:()=>t(!1),className:"p-1.5 rounded text-zinc-500 hover:text-white hover:bg-zinc-800 transition-colors","aria-label":"Chiudi",children:c.jsx(Ut,{size:18})})]}),c.jsx("div",{className:"flex border-b border-zinc-800",children:yg.map(y=>c.jsxs("button",{type:"button",onClick:()=>s(y),className:oe("flex items-center gap-2 px-4 py-3 text-xs font-medium border-b-2 transition-colors",i===y?"border-blue-500 text-blue-400":"border-transparent text-zinc-500 hover:text-zinc-300"),children:[y==="library"&&c.jsx(Zr,{size:14}),y==="upload"&&c.jsx(is,{size:14}),y==="url"&&c.jsx(ns,{size:14}),y==="library"?"Libreria":y==="upload"?"Upload":"URL"]},y))}),c.jsxs("div",{className:"flex-1 overflow-y-auto p-5 min-h-0",children:[i==="library"&&c.jsx(kg,{library:o,selectedId:a,onSelect:l}),i==="upload"&&c.jsx(Sg,{preview:d,onPreviewChange:u,onAssetUpload:n==null?void 0:n.onAssetUpload}),i==="url"&&c.jsx(Cg,{urlPreview:f,onUrlPreviewChange:h})]}),c.jsxs(wg,{className:"px-5 py-4 border-t border-zinc-800 flex-row justify-between",children:[c.jsx("span",{className:"text-[10px] uppercase tracking-[0.05em] text-zinc-600",children:m}),c.jsxs("div",{className:"flex gap-2",children:[c.jsx(qe,{type:"button",variant:"outline",size:"sm",onClick:()=>t(!1),children:"Annulla"}),c.jsx(qe,{type:"button",size:"sm",disabled:!p,onClick:w,className:oe(!p&&"opacity-40"),children:"Inserisci immagine"})]})]})]})})},Ul=(e,t="default")=>{if(e.startsWith("http")||e.startsWith("data:")||e.startsWith("#")||e.startsWith("/assets/"))return e;if(e.startsWith("assets/"))return`/${e}`;if(e.startsWith("/uploaded-assets/"))return e;if(!/\.(jpg|jpeg|png|gif|svg|pdf|webp|mp4|webm|ogg)$/i.test(e))return e.startsWith("/")?e:`/${e}`;const n=e.replace(/^\//,"");return`/assets/${t}/${n}`},jg=({value:e,onChange:t,label:r="IMAGE",className:n})=>{const{tenantId:o="default"}=pr(),[i,s]=b.useState(!1),[a,l]=b.useState(!1),d=!!(e!=null&&e.url),u=e!=null&&e.url?Ul(e.url,o):"",f=p=>{t(p),s(!1)},h=p=>{p.stopPropagation(),t({url:"",alt:""})};return c.jsxs("div",{className:oe("space-y-1.5",n),children:[c.jsx(Dt,{className:"text-[9px] uppercase font-black tracking-widest text-zinc-500",children:r}),d?c.jsxs("div",{role:"button",tabIndex:0,onClick:()=>s(!0),onKeyDown:p=>p.key==="Enter"&&s(!0),onMouseEnter:()=>l(!0),onMouseLeave:()=>l(!1),className:oe("relative rounded-lg overflow-hidden cursor-pointer","ring-1 ring-zinc-800 transition-all",a&&"ring-blue-500/40"),children:[c.jsx("img",{src:u,alt:(e==null?void 0:e.alt)??"",className:"w-full h-40 object-cover block",onError:p=>{p.target.style.display="none"}}),c.jsx("div",{className:oe("absolute inset-0 flex items-center justify-center gap-2 transition-all duration-150",a?"bg-black/50":"bg-black/0"),children:a&&c.jsxs(c.Fragment,{children:[c.jsxs("div",{className:"flex items-center gap-1.5 bg-white/15 backdrop-blur-md rounded-lg px-3.5 py-2 text-white text-xs font-medium",children:[c.jsx(Ld,{size:13}),c.jsx("span",{children:"Cambia"})]}),c.jsx(qe,{type:"button",variant:"ghost",className:"h-8 w-8 p-0 bg-red-500/15 backdrop-blur-md text-red-300 hover:text-red-200 hover:bg-red-500/25",onClick:h,children:c.jsx(Qr,{size:13})})]})}),c.jsx("div",{className:"px-2.5 py-1.5 bg-black/50 text-[10px] text-zinc-500 truncate",children:((e==null?void 0:e.url)??"").length>50?"…"+((e==null?void 0:e.url)??"").slice(-47):(e==null?void 0:e.url)??""})]}):c.jsxs("button",{type:"button",onClick:()=>s(!0),className:oe("w-full rounded-lg border-2 border-dashed border-zinc-800 py-7","flex flex-col items-center gap-2","bg-white/[0.01] transition-all","hover:border-blue-500/30 hover:bg-blue-500/[0.03]","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-blue-500"),children:[c.jsx("div",{className:"w-9 h-9 rounded-lg bg-blue-500/10 flex items-center justify-center text-blue-500",children:c.jsx(Zr,{size:18})}),c.jsx("span",{className:"text-xs text-zinc-400 font-medium",children:"Clicca per aggiungere un'immagine"}),c.jsx("span",{className:"text-[10px] text-zinc-600",children:"Libreria · Upload · URL"})]}),c.jsx(Eg,{open:i,onOpenChange:s,onSelect:f})]})},Bl=[{name:"layers",Icon:lo},{name:"github",Icon:Md},{name:"arrow-right",Icon:zd},{name:"box",Icon:Od},{name:"terminal",Icon:Ud},{name:"chevron-right",Icon:Id},{name:"menu",Icon:Rd},{name:"x",Icon:Ut},{name:"sparkles",Icon:Wd},{name:"zap",Icon:Hd}],Kn=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1 $2").replace(/[_-]+/g," ").replace(/\s+/g," ").trim().replace(/\b\w/g,t=>t.toUpperCase()),ir={"ui:text":({label:e,value:t,onChange:r})=>c.jsxs("div",{className:"grid w-full items-center gap-2 mb-4",children:[c.jsx(Dt,{className:"text-[11px] font-semibold tracking-[0.02em] text-zinc-300",children:Kn(e)}),c.jsx(Ao,{type:"text",className:"h-9 text-[13px] bg-zinc-900/50 border-zinc-700 focus-visible:ring-blue-600",value:t||"",onChange:n=>r(n.target.value)})]}),"ui:textarea":({label:e,value:t,onChange:r})=>c.jsxs("div",{className:"grid w-full gap-2 mb-4",children:[c.jsx(Dt,{className:"text-[11px] font-semibold tracking-[0.02em] text-zinc-300",children:Kn(e)}),c.jsx(Xf,{className:"min-h-[96px] text-[13px] bg-zinc-900/50 border-zinc-700 focus-visible:ring-blue-600 resize-none",value:t||"",onChange:n=>r(n.target.value)})]}),"ui:select":({label:e,value:t,onChange:r,options:n=[]})=>c.jsxs("div",{className:"grid w-full gap-2 mb-4",children:[c.jsx(Dt,{className:"text-[11px] font-semibold tracking-[0.02em] text-zinc-300",children:Kn(e)}),c.jsxs(bg,{value:t||"",onValueChange:r,children:[c.jsx(Ol,{className:"w-full h-9 text-[13px] bg-zinc-900/50 border-zinc-700 focus:ring-blue-600",children:c.jsx(vg,{placeholder:"Select..."})}),c.jsx(Il,{className:"dark",children:n.map(o=>c.jsx(Dl,{value:o,className:"text-[13px]",children:o},o))})]})]}),"ui:checkbox":({label:e,value:t,onChange:r})=>c.jsxs("div",{className:"flex items-center space-x-2 mb-4 p-2.5 rounded border border-zinc-700/60 bg-zinc-900/20",children:[c.jsx(Jf,{id:e,checked:!!t,onCheckedChange:n=>r(n===!0)}),c.jsx(Dt,{htmlFor:e,className:"text-[13px] font-medium cursor-pointer select-none text-zinc-200",children:Kn(e)})]}),"ui:image-picker":({label:e,value:t,onChange:r})=>{const n=t!=null&&typeof t=="object"&&"url"in t?{url:String(t.url??""),alt:String(t.alt??"")}:{url:typeof t=="string"?t:"",alt:""},o=i=>{r(i)};return c.jsx("div",{className:"mb-4",children:c.jsx(jg,{label:e,value:n,onChange:o})})},"ui:icon-picker":({label:e,value:t,onChange:r})=>{const[n,o]=b.useState(!1),i=Bl.find(s=>s.name===(t||""));return c.jsxs("div",{className:"grid w-full gap-1.5 mb-4",children:[c.jsx(Dt,{className:"text-[9px] uppercase font-black tracking-widest text-zinc-500",children:e}),c.jsxs(Rl,{open:n,onOpenChange:o,children:[c.jsx(xg,{asChild:!0,children:c.jsx(qe,{variant:"outline",className:"w-full h-9 rounded-md border border-zinc-800 bg-zinc-900/50 hover:bg-zinc-800/50 flex items-center gap-2 text-left",children:i?c.jsxs(c.Fragment,{children:[c.jsx(i.Icon,{size:16,className:"text-zinc-400 shrink-0"}),c.jsx("span",{className:"text-[11px] text-zinc-300 capitalize truncate",children:i.name})]}):c.jsxs(c.Fragment,{children:[c.jsx(Zr,{size:16,className:"text-zinc-500 shrink-0"}),c.jsx("span",{className:"text-[11px] text-zinc-500",children:"Choose icon..."})]})})}),c.jsxs(Ll,{className:"sm:max-w-[280px] p-4",children:[c.jsxs($l,{children:[c.jsx(Fl,{className:"text-sm",children:"Choose icon"}),c.jsx(Wl,{className:"text-xs",children:"Click an icon to select it."})]}),c.jsx("div",{className:"grid grid-cols-5 gap-2 py-2",children:Bl.map(({name:s,Icon:a})=>c.jsx("button",{type:"button",onClick:()=>{r(s),o(!1)},className:oe("flex items-center justify-center w-10 h-10 rounded-md border transition-colors",t===s?"border-blue-500 bg-blue-500/20 text-blue-400":"border-zinc-800 bg-zinc-900/50 hover:bg-zinc-800/50 text-zinc-400 hover:text-zinc-200"),title:s,children:c.jsx(a,{size:20})},s))})]})]})]})}},li=e=>{if(e instanceof Ne.z.ZodOptional||e instanceof Ne.z.ZodDefault)return li(e._def.innerType);if(e instanceof Ne.z.ZodObject){const t={id:crypto.randomUUID()};for(const r in e.shape)r!=="id"&&(t[r]=li(e.shape[r]));return t}return e instanceof Ne.z.ZodArray?[]:e instanceof Ne.z.ZodString?"":e instanceof Ne.z.ZodNumber?0:e instanceof Ne.z.ZodBoolean?!1:e instanceof Ne.z.ZodEnum?e._def.values[0]:null},Gn=e=>e instanceof Ne.z.ZodOptional||e instanceof Ne.z.ZodDefault||e instanceof Ne.z.ZodNullable?Gn(e._def.innerType):e,Hl=e=>{var n;const t=e;if(typeof e.description=="string"&&e.description.length>0)return e.description;if(typeof((n=t._def)==null?void 0:n.description)=="string"&&t._def.description.length>0)return t._def.description;const r=Gn(e);return r!==e?Hl(r):null},Yn=(e,t)=>e&&!t?"opacity-10":"opacity-100",sr=(e,t)=>e!=null&&t.toLowerCase()===e.toLowerCase(),ci=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1 $2").replace(/[_-]+/g," ").replace(/\s+/g," ").trim().replace(/\b\w/g,t=>t.toUpperCase()),Ir=({schema:e,data:t,onChange:r,keys:n,expandedItemPath:o,onSidebarExpandedItemChange:i})=>{const s=e.shape,a=n!=null?Object.keys(s).filter(f=>n.includes(f)):Object.keys(s),l=o==null?void 0:o[0],d=(l==null?void 0:l.fieldKey)??null,u=d!=null;return c.jsx("div",{className:"space-y-4",children:a.map(f=>{const h=s[f];if(!h)return null;const p=Gn(h),w=Hl(h)||"ui:text",m=t[f];if(w==="ui:editorial-markdown")return null;if(w==="ui:image-picker"&&p instanceof Ne.z.ZodObject){const S=sr(d,f),C=ir["ui:image-picker"]||ir["ui:text"];return c.jsx("div",{className:`transition-opacity duration-200 ${Yn(u,S)}`,...S?{"data-jp-focused-field":f}:{},children:c.jsx(C,{label:f,value:m,onChange:j=>r({...t,[f]:j})})},f)}if(p instanceof Ne.z.ZodObject){const S=m||{},C=sr(d,f);return c.jsxs("div",{className:`group/obj mb-6 p-4 border border-zinc-800 rounded-lg bg-zinc-900/20 hover:border-zinc-700 transition-[border-color,opacity] duration-200 ${Yn(u,C)}`,...C?{"data-jp-focused-field":f}:{},children:[c.jsxs("div",{className:"flex items-center gap-2 mb-4",children:[c.jsx("div",{className:"w-1 h-3 bg-blue-500 rounded-full"}),c.jsx("h4",{className:"text-[11px] font-semibold text-zinc-300 tracking-[0.02em]",children:ci(f)})]}),c.jsx(Ir,{schema:p,data:S,onChange:j=>r({...t,[f]:j}),expandedItemPath:o&&sr(l==null?void 0:l.fieldKey,f)?o.slice(1):void 0})]},f)}if(p instanceof Ne.z.ZodArray){const S=Array.isArray(m)?m:[],C=Gn(p.element),j=(R,I)=>{if(I<0||I>=S.length)return;const L=[...S],[M]=L.splice(R,1);L.splice(I,0,M),r({...t,[f]:L})},N=sr(d,f),D=sr(l==null?void 0:l.fieldKey,f)?l==null?void 0:l.itemId:void 0;return c.jsxs("div",{className:`mb-8 transition-opacity duration-200 ${Yn(u,N)}`,...N?{"data-jp-focused-field":f}:{},children:[c.jsxs("div",{className:"flex items-center justify-between mb-3",children:[c.jsxs("label",{className:"text-[12px] font-semibold text-zinc-300 tracking-[0.01em]",children:[ci(f)," (",S.length,")"]}),c.jsxs("button",{type:"button",onClick:()=>{const R=li(C);r({...t,[f]:[...S,R]})},className:"flex items-center gap-1 px-2.5 py-1.5 bg-blue-600/10 hover:bg-blue-600/20 text-blue-400 rounded text-[11px] font-semibold transition-colors",children:[c.jsx(co,{size:12})," Add Item"]})]}),c.jsx("div",{className:"space-y-2",children:S.map((R,I)=>{const L=R,M=L.id||`legacy-${I}`,Y=(typeof L.title=="string"?L.title:null)||(typeof L.label=="string"?L.label:null)||(typeof L.name=="string"?L.name:null)||(typeof L.content=="string"?L.content:null)||(typeof L.text=="string"?L.text:null)||`${ci(f)} #${I+1}`,H=D,U=String(L.id??M),B=H!=null&&String(H)===U,T=B&&o&&o.length>1?o.slice(1):void 0,X=u&&N&&H!=null&&!B;return c.jsx(Ng,{itemId:U,openItemId:H!=null?String(H):void 0,isFaded:X,index:I,isFirst:I===0,isLast:I===S.length-1,label:Y,onExpandedChange:i?re=>i(re?{fieldKey:f,itemId:U}:null):void 0,onRemove:()=>{const re=S.filter((A,W)=>W!==I);r({...t,[f]:re})},onMoveUp:()=>j(I,I-1),onMoveDown:()=>j(I,I+1),children:C instanceof Ne.z.ZodObject?c.jsx(Ir,{schema:C,data:L||{},expandedItemPath:T,onChange:re=>{const A=[...S];A[I]=re,r({...t,[f]:A})}}):c.jsx("div",{className:"text-[10px] text-red-400",children:"Primitive arrays not supported."})},M)})})]},f)}const v=w in ir?w:"ui:text",y=ir[v]||ir["ui:text"],k=p instanceof Ne.z.ZodEnum?p._def.values:void 0,x=sr(d,f);return c.jsx("div",{className:`transition-opacity duration-200 ${Yn(u,x)}`,...x?{"data-jp-focused-field":f}:{},children:c.jsx(y,{label:f,value:m,options:k,onChange:S=>r({...t,[f]:S})})},f)})})},Ng=({itemId:e,openItemId:t,isFaded:r=!1,label:n,onExpandedChange:o,onRemove:i,onMoveUp:s,onMoveDown:a,isFirst:l,isLast:d,children:u})=>{const f=t!=null&&String(t)===String(e),[h,p]=b.useState(f);b.useEffect(()=>{t!=null&&(f&&!h&&p(!0),!f&&h&&p(!1))},[t,f,h]);const w=()=>{const v=!h;p(v),o==null||o(v)},m=f&&h;return c.jsxs("div",{className:`border border-zinc-800 rounded-md bg-zinc-900/40 overflow-hidden transition-opacity duration-200 ${r?"opacity-10":"opacity-100"}`,...m?{"data-jp-expanded-item":e}:{},children:[c.jsxs("div",{className:"flex items-center justify-between px-3 py-2 bg-zinc-900/60",children:[c.jsx("div",{className:"flex items-center gap-2 flex-1 min-w-0",children:c.jsxs("button",{type:"button",onClick:w,className:"flex items-center gap-2 text-[12px] font-semibold text-zinc-200 tracking-[0.01em] truncate",children:[h?c.jsx(ao,{size:12,className:"shrink-0"}):c.jsx(Jr,{size:12,className:"shrink-0"}),c.jsx("span",{className:"truncate",children:n})]})}),c.jsxs("div",{className:"flex items-center gap-1 shrink-0 ml-2",children:[c.jsx("button",{type:"button",disabled:l,onClick:s,className:"text-zinc-500 hover:text-blue-400 disabled:opacity-20 p-1 transition-colors",children:c.jsx(Pd,{size:12})}),c.jsx("button",{type:"button",disabled:d,onClick:a,className:"text-zinc-500 hover:text-blue-400 disabled:opacity-20 p-1 transition-colors",children:c.jsx(Td,{size:12})}),c.jsx("div",{className:"w-px h-3 bg-zinc-800 mx-1"}),c.jsx("button",{type:"button",onClick:i,className:"text-zinc-600 hover:text-red-500 transition-colors p-1",children:c.jsx(Qr,{size:12})})]})]}),h&&c.jsx("div",{className:"p-4 border-t border-zinc-800 bg-black/20",children:u})]})};function Ag(e,t){return g.useReducer((r,n)=>t[r][n]??r,e)}var Dr=e=>{const{present:t,children:r}=e,n=Tg(t),o=typeof r=="function"?r({present:n.isPresent}):g.Children.only(r),i=ke(n.ref,zg(o));return typeof r=="function"||n.isPresent?g.cloneElement(o,{ref:i}):null};Dr.displayName="Presence";function Tg(e){const[t,r]=g.useState(),n=g.useRef(null),o=g.useRef(e),i=g.useRef("none"),s=e?"mounted":"unmounted",[a,l]=Ag(s,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return g.useEffect(()=>{const d=qn(n.current);i.current=a==="mounted"?d:"none"},[a]),Me(()=>{const d=n.current,u=o.current;if(u!==e){const h=i.current,p=qn(d);e?l("MOUNT"):p==="none"||(d==null?void 0:d.display)==="none"?l("UNMOUNT"):l(u&&h!==p?"ANIMATION_OUT":"UNMOUNT"),o.current=e}},[e,l]),Me(()=>{if(t){let d;const u=t.ownerDocument.defaultView??window,f=p=>{const m=qn(n.current).includes(CSS.escape(p.animationName));if(p.target===t&&m&&(l("ANIMATION_END"),!o.current)){const v=t.style.animationFillMode;t.style.animationFillMode="forwards",d=u.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=v)})}},h=p=>{p.target===t&&(i.current=qn(n.current))};return t.addEventListener("animationstart",h),t.addEventListener("animationcancel",f),t.addEventListener("animationend",f),()=>{u.clearTimeout(d),t.removeEventListener("animationstart",h),t.removeEventListener("animationcancel",f),t.removeEventListener("animationend",f)}}else l("ANIMATION_END")},[t,l]),{isPresent:["mounted","unmountSuspended"].includes(a),ref:g.useCallback(d=>{n.current=d?getComputedStyle(d):null,r(d)},[])}}function qn(e){return(e==null?void 0:e.animationName)||"none"}function zg(e){var n,o;let t=(n=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:n.get,r=t&&"isReactWarning"in t&&t.isReactWarning;return r?e.ref:(t=(o=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:o.get,r=t&&"isReactWarning"in t&&t.isReactWarning,r?e.props.ref:e.props.ref||e.ref)}var[Xn]=Ar("Tooltip",[Qt]),Jn=Qt(),Vl="TooltipProvider",Pg=700,di="tooltip.open",[Og,ui]=Xn(Vl),Kl=e=>{const{__scopeTooltip:t,delayDuration:r=Pg,skipDelayDuration:n=300,disableHoverableContent:o=!1,children:i}=e,s=g.useRef(!0),a=g.useRef(!1),l=g.useRef(0);return g.useEffect(()=>{const d=l.current;return()=>window.clearTimeout(d)},[]),c.jsx(Og,{scope:t,isOpenDelayedRef:s,delayDuration:r,onOpen:g.useCallback(()=>{window.clearTimeout(l.current),s.current=!1},[]),onClose:g.useCallback(()=>{window.clearTimeout(l.current),l.current=window.setTimeout(()=>s.current=!0,n)},[n]),isPointerInTransitRef:a,onPointerInTransitChange:g.useCallback(d=>{a.current=d},[]),disableHoverableContent:o,children:i})};Kl.displayName=Vl;var _r="Tooltip",[Ig,Mr]=Xn(_r),Gl=e=>{const{__scopeTooltip:t,children:r,open:n,defaultOpen:o,onOpenChange:i,disableHoverableContent:s,delayDuration:a}=e,l=ui(_r,e.__scopeTooltip),d=Jn(t),[u,f]=g.useState(null),h=Tr(),p=g.useRef(0),w=s??l.disableHoverableContent,m=a??l.delayDuration,v=g.useRef(!1),[y,k]=Dn({prop:n,defaultProp:o??!1,onChange:N=>{N?(l.onOpen(),document.dispatchEvent(new CustomEvent(di))):l.onClose(),i==null||i(N)},caller:_r}),x=g.useMemo(()=>y?v.current?"delayed-open":"instant-open":"closed",[y]),S=g.useCallback(()=>{window.clearTimeout(p.current),p.current=0,v.current=!1,k(!0)},[k]),C=g.useCallback(()=>{window.clearTimeout(p.current),p.current=0,k(!1)},[k]),j=g.useCallback(()=>{window.clearTimeout(p.current),p.current=window.setTimeout(()=>{v.current=!0,k(!0),p.current=0},m)},[m,k]);return g.useEffect(()=>()=>{p.current&&(window.clearTimeout(p.current),p.current=0)},[]),c.jsx(Go,{...d,children:c.jsx(Ig,{scope:t,contentId:h,open:y,stateAttribute:x,trigger:u,onTriggerChange:f,onTriggerEnter:g.useCallback(()=>{l.isOpenDelayedRef.current?j():S()},[l.isOpenDelayedRef,j,S]),onTriggerLeave:g.useCallback(()=>{w?C():(window.clearTimeout(p.current),p.current=0)},[C,w]),onOpen:S,onClose:C,disableHoverableContent:w,children:r})})};Gl.displayName=_r;var fi="TooltipTrigger",Yl=g.forwardRef((e,t)=>{const{__scopeTooltip:r,...n}=e,o=Mr(fi,r),i=ui(fi,r),s=Jn(r),a=g.useRef(null),l=ke(t,a,o.onTriggerChange),d=g.useRef(!1),u=g.useRef(!1),f=g.useCallback(()=>d.current=!1,[]);return g.useEffect(()=>()=>document.removeEventListener("pointerup",f),[f]),c.jsx(On,{asChild:!0,...s,children:c.jsx(we.button,{"aria-describedby":o.open?o.contentId:void 0,"data-state":o.stateAttribute,...n,ref:l,onPointerMove:pe(e.onPointerMove,h=>{h.pointerType!=="touch"&&!u.current&&!i.isPointerInTransitRef.current&&(o.onTriggerEnter(),u.current=!0)}),onPointerLeave:pe(e.onPointerLeave,()=>{o.onTriggerLeave(),u.current=!1}),onPointerDown:pe(e.onPointerDown,()=>{o.open&&o.onClose(),d.current=!0,document.addEventListener("pointerup",f,{once:!0})}),onFocus:pe(e.onFocus,()=>{d.current||o.onOpen()}),onBlur:pe(e.onBlur,o.onClose),onClick:pe(e.onClick,o.onClose)})})});Yl.displayName=fi;var pi="TooltipPortal",[Dg,_g]=Xn(pi,{forceMount:void 0}),ql=e=>{const{__scopeTooltip:t,forceMount:r,children:n,container:o}=e,i=Mr(pi,t);return c.jsx(Dg,{scope:t,forceMount:r,children:c.jsx(Dr,{present:r||i.open,children:c.jsx(In,{asChild:!0,container:o,children:n})})})};ql.displayName=pi;var ar="TooltipContent",Xl=g.forwardRef((e,t)=>{const r=_g(ar,e.__scopeTooltip),{forceMount:n=r.forceMount,side:o="top",...i}=e,s=Mr(ar,e.__scopeTooltip);return c.jsx(Dr,{present:n||s.open,children:s.disableHoverableContent?c.jsx(Jl,{side:o,...i,ref:t}):c.jsx(Mg,{side:o,...i,ref:t})})}),Mg=g.forwardRef((e,t)=>{const r=Mr(ar,e.__scopeTooltip),n=ui(ar,e.__scopeTooltip),o=g.useRef(null),i=ke(t,o),[s,a]=g.useState(null),{trigger:l,onClose:d}=r,u=o.current,{onPointerInTransitChange:f}=n,h=g.useCallback(()=>{a(null),f(!1)},[f]),p=g.useCallback((w,m)=>{const v=w.currentTarget,y={x:w.clientX,y:w.clientY},k=Wg(y,v.getBoundingClientRect()),x=Ug(y,k),S=Bg(m.getBoundingClientRect()),C=Vg([...x,...S]);a(C),f(!0)},[f]);return g.useEffect(()=>()=>h(),[h]),g.useEffect(()=>{if(l&&u){const w=v=>p(v,u),m=v=>p(v,l);return l.addEventListener("pointerleave",w),u.addEventListener("pointerleave",m),()=>{l.removeEventListener("pointerleave",w),u.removeEventListener("pointerleave",m)}}},[l,u,p,h]),g.useEffect(()=>{if(s){const w=m=>{const v=m.target,y={x:m.clientX,y:m.clientY},k=(l==null?void 0:l.contains(v))||(u==null?void 0:u.contains(v)),x=!Hg(y,s);k?h():x&&(h(),d())};return document.addEventListener("pointermove",w),()=>document.removeEventListener("pointermove",w)}},[l,u,s,d,h]),c.jsx(Jl,{...e,ref:i})}),[Rg,Lg]=Xn(_r,{isInside:!1}),$g=tp("TooltipContent"),Jl=g.forwardRef((e,t)=>{const{__scopeTooltip:r,children:n,"aria-label":o,onEscapeKeyDown:i,onPointerDownOutside:s,...a}=e,l=Mr(ar,r),d=Jn(r),{onClose:u}=l;return g.useEffect(()=>(document.addEventListener(di,u),()=>document.removeEventListener(di,u)),[u]),g.useEffect(()=>{if(l.trigger){const f=h=>{const p=h.target;p!=null&&p.contains(l.trigger)&&u()};return window.addEventListener("scroll",f,{capture:!0}),()=>window.removeEventListener("scroll",f,{capture:!0})}},[l.trigger,u]),c.jsx(yn,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:i,onPointerDownOutside:s,onFocusOutside:f=>f.preventDefault(),onDismiss:u,children:c.jsxs(Yo,{"data-state":l.stateAttribute,...d,...a,ref:t,style:{...a.style,"--radix-tooltip-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-tooltip-content-available-width":"var(--radix-popper-available-width)","--radix-tooltip-content-available-height":"var(--radix-popper-available-height)","--radix-tooltip-trigger-width":"var(--radix-popper-anchor-width)","--radix-tooltip-trigger-height":"var(--radix-popper-anchor-height)"},children:[c.jsx($g,{children:n}),c.jsx(Rg,{scope:r,isInside:!0,children:c.jsx(Qh,{id:l.contentId,role:"tooltip",children:o||n})})]})})});Xl.displayName=ar;var Zl="TooltipArrow",Fg=g.forwardRef((e,t)=>{const{__scopeTooltip:r,...n}=e,o=Jn(r);return Lg(Zl,r).isInside?null:c.jsx(qo,{...o,...n,ref:t})});Fg.displayName=Zl;function Wg(e,t){const r=Math.abs(t.top-e.y),n=Math.abs(t.bottom-e.y),o=Math.abs(t.right-e.x),i=Math.abs(t.left-e.x);switch(Math.min(r,n,o,i)){case i:return"left";case o:return"right";case r:return"top";case n:return"bottom";default:throw new Error("unreachable")}}function Ug(e,t,r=5){const n=[];switch(t){case"top":n.push({x:e.x-r,y:e.y+r},{x:e.x+r,y:e.y+r});break;case"bottom":n.push({x:e.x-r,y:e.y-r},{x:e.x+r,y:e.y-r});break;case"left":n.push({x:e.x+r,y:e.y-r},{x:e.x+r,y:e.y+r});break;case"right":n.push({x:e.x-r,y:e.y-r},{x:e.x-r,y:e.y+r});break}return n}function Bg(e){const{top:t,right:r,bottom:n,left:o}=e;return[{x:o,y:t},{x:r,y:t},{x:r,y:n},{x:o,y:n}]}function Hg(e,t){const{x:r,y:n}=e;let o=!1;for(let i=0,s=t.length-1;i<t.length;s=i++){const a=t[i],l=t[s],d=a.x,u=a.y,f=l.x,h=l.y;u>n!=h>n&&r<(f-d)*(n-u)/(h-u)+d&&(o=!o)}return o}function Vg(e){const t=e.slice();return t.sort((r,n)=>r.x<n.x?-1:r.x>n.x?1:r.y<n.y?-1:r.y>n.y?1:0),Kg(t)}function Kg(e){if(e.length<=1)return e.slice();const t=[];for(let n=0;n<e.length;n++){const o=e[n];for(;t.length>=2;){const i=t[t.length-1],s=t[t.length-2];if((i.x-s.x)*(o.y-s.y)>=(i.y-s.y)*(o.x-s.x))t.pop();else break}t.push(o)}t.pop();const r=[];for(let n=e.length-1;n>=0;n--){const o=e[n];for(;r.length>=2;){const i=r[r.length-1],s=r[r.length-2];if((i.x-s.x)*(o.y-s.y)>=(i.y-s.y)*(o.x-s.x))r.pop();else break}r.push(o)}return r.pop(),t.length===1&&r.length===1&&t[0].x===r[0].x&&t[0].y===r[0].y?t:t.concat(r)}var Gg=Kl,Yg=Gl,qg=Yl,Xg=ql,Ql=Xl;const Jg=Gg,Rr=Yg,Lr=qg,lr=g.forwardRef(({className:e,sideOffset:t=4,...r},n)=>c.jsx(Xg,{children:c.jsx(Ql,{ref:n,sideOffset:t,className:oe("z-50 rounded-md bg-zinc-800 px-2.5 py-1.5 text-[11px] text-zinc-200 shadow-md","animate-in fade-in-0 zoom-in-95",e),...r})}));lr.displayName=Ql.displayName;var Zn="Popover",[ec]=Ar(Zn,[Qt]),$r=Qt(),[Zg,jt]=ec(Zn),tc=e=>{const{__scopePopover:t,children:r,open:n,defaultOpen:o,onOpenChange:i,modal:s=!1}=e,a=$r(t),l=g.useRef(null),[d,u]=g.useState(!1),[f,h]=Dn({prop:n,defaultProp:o??!1,onChange:i,caller:Zn});return c.jsx(Go,{...a,children:c.jsx(Zg,{scope:t,contentId:Tr(),triggerRef:l,open:f,onOpenChange:h,onOpenToggle:g.useCallback(()=>h(p=>!p),[h]),hasCustomAnchor:d,onCustomAnchorAdd:g.useCallback(()=>u(!0),[]),onCustomAnchorRemove:g.useCallback(()=>u(!1),[]),modal:s,children:r})})};tc.displayName=Zn;var rc="PopoverAnchor",Qg=g.forwardRef((e,t)=>{const{__scopePopover:r,...n}=e,o=jt(rc,r),i=$r(r),{onCustomAnchorAdd:s,onCustomAnchorRemove:a}=o;return g.useEffect(()=>(s(),()=>a()),[s,a]),c.jsx(On,{...i,...n,ref:t})});Qg.displayName=rc;var nc="PopoverTrigger",oc=g.forwardRef((e,t)=>{const{__scopePopover:r,...n}=e,o=jt(nc,r),i=$r(r),s=ke(t,o.triggerRef),a=c.jsx(we.button,{type:"button","aria-haspopup":"dialog","aria-expanded":o.open,"aria-controls":o.contentId,"data-state":cc(o.open),...n,ref:s,onClick:pe(e.onClick,o.onOpenToggle)});return o.hasCustomAnchor?a:c.jsx(On,{asChild:!0,...i,children:a})});oc.displayName=nc;var hi="PopoverPortal",[e0,t0]=ec(hi,{forceMount:void 0}),ic=e=>{const{__scopePopover:t,forceMount:r,children:n,container:o}=e,i=jt(hi,t);return c.jsx(e0,{scope:t,forceMount:r,children:c.jsx(Dr,{present:r||i.open,children:c.jsx(In,{asChild:!0,container:o,children:n})})})};ic.displayName=hi;var cr="PopoverContent",sc=g.forwardRef((e,t)=>{const r=t0(cr,e.__scopePopover),{forceMount:n=r.forceMount,...o}=e,i=jt(cr,e.__scopePopover);return c.jsx(Dr,{present:n||i.open,children:i.modal?c.jsx(n0,{...o,ref:t}):c.jsx(o0,{...o,ref:t})})});sc.displayName=cr;var r0=Yt("PopoverContent.RemoveScroll"),n0=g.forwardRef((e,t)=>{const r=jt(cr,e.__scopePopover),n=g.useRef(null),o=ke(t,n),i=g.useRef(!1);return g.useEffect(()=>{const s=n.current;if(s)return Ka(s)},[]),c.jsx(ti,{as:r0,allowPinchZoom:!0,children:c.jsx(ac,{...e,ref:o,trapFocus:r.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:pe(e.onCloseAutoFocus,s=>{var a;s.preventDefault(),i.current||(a=r.triggerRef.current)==null||a.focus()}),onPointerDownOutside:pe(e.onPointerDownOutside,s=>{const a=s.detail.originalEvent,l=a.button===0&&a.ctrlKey===!0,d=a.button===2||l;i.current=d},{checkForDefaultPrevented:!1}),onFocusOutside:pe(e.onFocusOutside,s=>s.preventDefault(),{checkForDefaultPrevented:!1})})})}),o0=g.forwardRef((e,t)=>{const r=jt(cr,e.__scopePopover),n=g.useRef(!1),o=g.useRef(!1);return c.jsx(ac,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:i=>{var s,a;(s=e.onCloseAutoFocus)==null||s.call(e,i),i.defaultPrevented||(n.current||(a=r.triggerRef.current)==null||a.focus(),i.preventDefault()),n.current=!1,o.current=!1},onInteractOutside:i=>{var l,d;(l=e.onInteractOutside)==null||l.call(e,i),i.defaultPrevented||(n.current=!0,i.detail.originalEvent.type==="pointerdown"&&(o.current=!0));const s=i.target;((d=r.triggerRef.current)==null?void 0:d.contains(s))&&i.preventDefault(),i.detail.originalEvent.type==="focusin"&&o.current&&i.preventDefault()}})}),ac=g.forwardRef((e,t)=>{const{__scopePopover:r,trapFocus:n,onOpenAutoFocus:o,onCloseAutoFocus:i,disableOutsidePointerEvents:s,onEscapeKeyDown:a,onPointerDownOutside:l,onFocusOutside:d,onInteractOutside:u,...f}=e,h=jt(cr,r),p=$r(r);return oa(),c.jsx(Io,{asChild:!0,loop:!0,trapped:n,onMountAutoFocus:o,onUnmountAutoFocus:i,children:c.jsx(yn,{asChild:!0,disableOutsidePointerEvents:s,onInteractOutside:u,onEscapeKeyDown:a,onPointerDownOutside:l,onFocusOutside:d,onDismiss:()=>h.onOpenChange(!1),children:c.jsx(Yo,{"data-state":cc(h.open),role:"dialog",id:h.contentId,...p,...f,ref:t,style:{...f.style,"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}})})})}),lc="PopoverClose",i0=g.forwardRef((e,t)=>{const{__scopePopover:r,...n}=e,o=jt(lc,r);return c.jsx(we.button,{type:"button",...n,ref:t,onClick:pe(e.onClick,()=>o.onOpenChange(!1))})});i0.displayName=lc;var s0="PopoverArrow",a0=g.forwardRef((e,t)=>{const{__scopePopover:r,...n}=e,o=$r(r);return c.jsx(qo,{...o,...n,ref:t})});a0.displayName=s0;function cc(e){return e?"open":"closed"}var l0=tc,c0=oc,d0=ic,dc=sc;const u0=l0,f0=c0,uc=g.forwardRef(({className:e,align:t="start",sideOffset:r=6,...n},o)=>c.jsx(d0,{children:c.jsx(dc,{ref:o,align:t,sideOffset:r,className:oe("z-50 w-[var(--radix-popover-trigger-width)] rounded-lg border border-zinc-700/80 bg-zinc-950 p-1 text-white shadow-xl shadow-black/30","data-[state=open]:animate-in data-[state=closed]:animate-out","data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0","data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95","data-[side=bottom]:slide-in-from-top-2",e),...n})}));uc.displayName=dc.displayName;const fc=e=>e?e.charAt(0).toUpperCase()+e.slice(1):"Select page",p0=({pageSlugs:e,currentSlug:t,onPageChange:r,sectionCount:n,onNewPage:o,className:i,currentPageLabel:s})=>{const[a,l]=b.useState(!1),d=s??fc(t),u=f=>{r(f),l(!1)};return c.jsx("div",{className:oe("mx-3 mt-2 mb-2",i),children:c.jsxs(u0,{open:a,onOpenChange:l,children:[c.jsx(f0,{asChild:!0,children:c.jsxs("button",{type:"button","aria-haspopup":"listbox","aria-label":`Select page, current: ${d}`,className:oe("flex items-center gap-2 w-full pl-3 pr-4 py-2 rounded-lg border text-left transition-all duration-150 cursor-pointer","bg-transparent border-zinc-800 text-zinc-400 hover:text-zinc-200 hover:bg-zinc-800/50 hover:border-zinc-700","data-[state=open]:bg-zinc-950 data-[state=open]:border-zinc-800 data-[state=open]:text-zinc-100","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-zinc-950"),children:[c.jsx(_d,{size:14,className:"shrink-0 text-zinc-500","aria-hidden":!0}),c.jsx("span",{className:"text-xs font-medium flex-1 truncate",children:d}),c.jsx(Jr,{size:13,className:"shrink-0 text-zinc-500","aria-hidden":!0})]})}),c.jsxs(uc,{align:"start",sideOffset:4,className:"min-w-[var(--radix-popover-trigger-width)] bg-zinc-950 border-zinc-800 p-1",role:"listbox","aria-label":"Page list",children:[e.map(f=>{const h=f===t,p=fc(f);return c.jsxs("button",{type:"button",role:"option","aria-selected":h,onClick:()=>u(f),className:oe("flex items-center justify-between w-full px-2.5 py-2 rounded-md text-xs transition-colors cursor-pointer",h?"bg-primary/10 text-primary font-semibold":"text-zinc-400 hover:bg-zinc-800 hover:text-zinc-200"),children:[c.jsx("span",{children:p}),n!=null&&c.jsxs("span",{className:"text-[10px] text-zinc-600 tabular-nums","aria-hidden":!0,children:[n,"s"]})]},f)}),o!=null&&c.jsx("div",{className:"border-t border-zinc-800 mt-1 pt-1",children:c.jsxs("button",{type:"button",onClick:()=>{o(),l(!1)},className:"flex items-center gap-1.5 w-full px-2.5 py-2 rounded-md text-[11px] text-zinc-600 hover:text-zinc-300 hover:bg-zinc-800 transition-colors cursor-pointer","aria-label":"New page",children:[c.jsx(co,{size:12,"aria-hidden":!0}),c.jsx("span",{children:"New page"})]})})]})]})})},mi=new Set(["anchorId","paddingTop","paddingBottom","theme","container"]),pc=new Set(["ui:editorial-markdown"]),hc=e=>e instanceof Ne.z.ZodOptional||e instanceof Ne.z.ZodDefault||e instanceof Ne.z.ZodNullable?hc(e._def.innerType):e,gi=e=>{var i;if(!e)return"";const t=e,r=typeof e.description=="string"?e.description:null;if(r)return r;const n=typeof((i=t._def)==null?void 0:i.description)=="string"?t._def.description:null;if(n)return n;const o=hc(e);return o!==e?gi(o):""},bi=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1 $2").replace(/[_-]+/g," ").replace(/\s+/g," ").trim().replace(/\b\w/g,t=>t.toUpperCase()),h0={activationConstraint:{distance:8}},m0={activationConstraint:{delay:200,tolerance:5}};function vi({layer:e,opts:t,dragHandleProps:r}){const{isSelected:n,isActive:o,isDragging:i,canDelete:s,onSelect:a,onOpenSettings:l,onDelete:d}=t,u=!!r;return c.jsxs("div",{className:oe("group flex items-center gap-2 pl-1 pr-2 py-2.5 rounded-lg text-left transition-all duration-200 cursor-pointer border-l-2",n?"bg-primary/[0.08] border-primary":o?"bg-zinc-800/30 border-emerald-500/60":"border-transparent hover:bg-zinc-800/40",i&&"opacity-50 shadow-lg",u?"cursor-grab active:cursor-grabbing":"cursor-default"),children:[u?c.jsx("span",{className:"shrink-0 w-5 flex items-center justify-center opacity-0 group-hover:opacity-100 transition-opacity duration-150 cursor-grab touch-none","aria-label":"Trascina per riordinare",...r,children:c.jsx(rs,{size:12,className:"text-zinc-600"})}):c.jsx("span",{className:"shrink-0 w-5 flex items-center justify-center opacity-0 group-hover:opacity-100 pointer-events-none",children:c.jsx(rs,{size:12,className:"text-zinc-600/50"})}),c.jsxs("button",{type:"button",onClick:a,className:"flex-1 min-w-0 text-left",children:[c.jsxs("div",{className:"flex items-center gap-1.5",children:[c.jsx("span",{className:oe("text-xs font-bold uppercase tracking-[0.06em] truncate",n?"text-primary":"text-zinc-500"),children:e.type}),o&&c.jsx("span",{className:"w-1.5 h-1.5 rounded-full bg-emerald-500 shrink-0","aria-hidden":!0})]}),c.jsx("span",{className:"text-[11px] text-zinc-600 block truncate leading-snug mt-0.5",children:e.title??`${e.type} section`})]}),c.jsxs("div",{className:"flex items-center gap-0.5 opacity-0 group-hover:opacity-100 transition-opacity duration-150",children:[c.jsxs(Rr,{children:[c.jsx(Lr,{asChild:!0,children:c.jsx(qe,{variant:"ghost",size:"icon-xs",className:"text-zinc-600 hover:text-zinc-300",onClick:f=>{f.stopPropagation(),l(f)},children:c.jsx(Fd,{size:12})})}),c.jsx(lr,{children:"Settings"})]}),s&&c.jsxs(Rr,{children:[c.jsx(Lr,{asChild:!0,children:c.jsx(qe,{variant:"ghost",size:"icon-xs",className:"text-zinc-600 hover:text-destructive",onClick:f=>{f.stopPropagation(),d()},children:c.jsx(Qr,{size:12})})}),c.jsx(lr,{children:"Delete section"})]})]})]})}function g0({layer:e,opts:t}){const{attributes:r,listeners:n,setNodeRef:o,transform:i,transition:s,isDragging:a}=Vf({id:e.id,disabled:!t.canReorder}),l={transform:xt.Transform.toString(i),transition:s};return c.jsx("div",{ref:o,style:l,className:oe(a&&"z-10"),children:c.jsx(vi,{layer:e,opts:{...t,isDragging:a},dragHandleProps:t.canReorder?{...r,...n,"aria-roledescription":"elemento trascinabile"}:void 0})})}const mc=({selectedSection:e,pageData:t,allSectionsData:r=[],onUpdate:n,onUpdateSection:o,onClose:i,expandedItemPath:s=null,onReorderSection:a,allLayers:l=[],activeSectionId:d,onRequestScrollToSection:u,onDeleteSection:f,onAddSection:h,hasChanges:p=!1,onSaveToFile:w,onHotSave:m,saveSuccessFeedback:v=!1,hotSaveSuccessFeedback:y=!1,hotSaveInProgress:k=!1,showLegacySave:x=!0,showHotSave:S=!1,onResetToFile:C,showResetToFile:j=!1,pageSlugs:N=[],currentSlug:E="home",onPageChange:D})=>{const{schemas:R}=pr(),[I,L]=b.useState(!0),[M,Y]=b.useState(null),[H,U]=b.useState(null),[B,T]=b.useState(null),[X,re]=b.useState(null),A=b.useRef(null),W=b.useRef(null),q=gu(go(So,h0),go(zs,m0),go(yo,{coordinateGetter:Yf})),G=b.useDeferredValue(e),me=e!=null&&(G==null?void 0:G.id)!==e.id,se=s&&s.length>0?s:B?[B]:null,P=se!=null&&se.length?{fieldKey:se[se.length-1].fieldKey,itemId:se[se.length-1].itemId}:null,J=b.useRef(s);b.useEffect(()=>{J.current!=null&&s==null&&T(null),J.current=s},[s]),b.useEffect(()=>{(e==null?void 0:e.id)!=null&&L(!1)},[e==null?void 0:e.id]);const te=()=>{const _=requestAnimationFrame(()=>{requestAnimationFrame(()=>{const ee=A.current;ee&&ee.scrollTo({top:0,behavior:"smooth"})})});return()=>cancelAnimationFrame(_)},F=b.useRef(I);b.useEffect(()=>{if(I&&!F.current){const _=te();return F.current=I,_}F.current=I},[I]),b.useEffect(()=>{if(!P)return;const _=A.current;if(!_)return;const ee=requestAnimationFrame(()=>{const ie=_.querySelector("[data-jp-expanded-item]")??_.querySelector("[data-jp-focused-field]");ie&&ie.scrollIntoView({behavior:"smooth",block:"start"})});return()=>cancelAnimationFrame(ee)},[P]);const ne=_=>{L(!1),u==null||u(_)},Q=()=>{L(_=>{const ee=!_;return ee&&te(),ee})},xe=(_,ee)=>{ee.stopPropagation(),r.length>0&&o?re(_):(L(!1),u==null||u(_))};b.useEffect(()=>{if(X==null)return;const _=ee=>{ee.key==="Escape"&&re(null)};return window.addEventListener("keydown",_),()=>window.removeEventListener("keydown",_)},[X]);const ge=_=>{M===_?(f==null||f(_),Y(null)):(Y(_),setTimeout(()=>Y(null),3e3))},ze=b.useMemo(()=>l.filter(_=>_.scope==="local").map(_=>_.id),[l]),Oe=!!a&&ze.length>0,Be=_=>{U(_.active.id)},Nt=_=>{U(null);const{active:ee,over:ie}=_;if(!ie||ee.id===ie.id||!a)return;const fe=l.findIndex(Ee=>Ee.id===ee.id),Ie=l.findIndex(Ee=>Ee.id===ie.id);if(fe===-1||Ie===-1)return;const ye=fe<Ie?Ie:Ie-1;a(ee.id,ye)},Xe=e?t.sections.find(_=>_.id===e.id):void 0,He=G?t.sections.find(_=>_.id===G.id):void 0,Ve=G?R[G.type]:void 0,mt=b.useMemo(()=>{if(!Ve)return!1;const _=Ve.shape,ee=Object.keys(_).filter(ie=>!mi.has(ie));return ee.length===0?!1:ee.every(ie=>pc.has(gi(_[ie])))},[Ve]);b.useEffect(()=>{(e==null?void 0:e.id)!=null&&mt&&L(!0)},[e==null?void 0:e.id,mt]);const ot=l.length>0&&(I||!e),At=E?E.charAt(0).toUpperCase()+E.slice(1):"Select page",Wr=b.useMemo(()=>{const _=[];let ee=null;for(const ie of l){const fe=ie.type.toUpperCase(),Ie=ee!==null&&(ee==="HEADER"&&fe!=="HEADER"||ee!=="HEADER"&&ee!=="FOOTER"&&fe==="FOOTER");_.push({layer:ie,showSeparatorAbove:Ie}),ee=fe}return _},[l]);return c.jsx(Jg,{children:c.jsxs("aside",{className:"relative w-full h-full bg-zinc-950 border-l border-zinc-800 flex flex-col shadow-2xl shrink-0 min-w-0 animate-in slide-in-from-right duration-300",children:[c.jsxs("div",{className:"flex items-center justify-between px-4 py-3 border-b border-zinc-800 shrink-0",children:[c.jsxs("div",{className:"min-w-0",children:[c.jsx("h2",{className:"text-sm font-bold text-white",children:"Inspector"}),c.jsx("p",{className:"text-[10px] tracking-[0.06em] text-zinc-600 mt-0.5",children:e?c.jsxs(c.Fragment,{children:[c.jsx("span",{className:"text-primary font-bold",children:e.type}),c.jsx("span",{className:"text-zinc-700 mx-1.5",children:"|"}),c.jsx("span",{className:"uppercase",children:e.scope})]}):c.jsxs("span",{className:"text-zinc-600",children:[At," · ",l.length," sections"]})})]}),c.jsx(qe,{variant:"ghost",size:"icon-sm",onClick:i,"aria-label":"Close Inspector",children:c.jsx(Ut,{size:14})})]}),N.length>0&&D&&c.jsx(p0,{pageSlugs:N,currentSlug:E,onPageChange:D,sectionCount:l.length,currentPageLabel:At}),l.length>0&&c.jsxs("div",{className:"flex items-center gap-2 px-4 py-2 border-t border-zinc-800/50",children:[c.jsxs("button",{type:"button",onClick:Q,className:"flex items-center gap-2 flex-1 cursor-pointer min-w-0 text-left","aria-expanded":ot,"aria-label":ot?"Collapse Page Layers":"Expand Page Layers",children:[c.jsx(lo,{size:14,className:"text-zinc-500 shrink-0"}),c.jsx("span",{className:"text-[11px] font-semibold tracking-[0.04em] text-zinc-400",children:"Page Layers"}),c.jsxs("span",{className:"text-[10px] text-zinc-600",children:["(",l.length,")"]}),c.jsx(ao,{size:13,className:oe("ml-auto text-zinc-600 transition-transform duration-200 shrink-0",!I&&"rotate-180")})]}),h!=null&&c.jsxs(Rr,{children:[c.jsx(Lr,{asChild:!0,children:c.jsx(qe,{variant:"ghost",size:"icon-sm",className:"text-zinc-500 hover:text-primary",onClick:h,children:c.jsx(co,{size:14})})}),c.jsx(lr,{children:"Add section"})]})]}),c.jsx("div",{className:"relative flex-1 min-h-0 min-w-0 flex flex-col overflow-hidden",children:c.jsxs("div",{ref:A,className:"min-h-0 min-w-0 flex-1 overflow-y-auto overflow-x-hidden flex flex-col",role:"region","aria-label":"Inspector content",children:[c.jsx("div",{className:"flex flex-col min-h-0",children:ot&&c.jsxs("div",{className:"py-1",children:[c.jsxs(hf,{sensors:q,collisionDetection:xu,modifiers:[Of],onDragStart:Be,onDragEnd:Nt,accessibility:{announcements:{onDragStart:()=>"Sezione presa in carico. Usa i tasti freccia per spostare, Spazio per rilasciare.",onDragOver:({over:_})=>_?`Posizione ${ze.indexOf(String(_.id))+1} di ${ze.length}.`:void 0,onDragEnd:({over:_})=>_?"Sezione rilasciata in nuova posizione.":"Riposizionamento annullato.",onDragCancel:()=>"Riposizionamento annullato."}},children:[c.jsx(Lf,{items:ze,strategy:Mf,children:c.jsx("div",{className:"px-2 space-y-0.5",children:Wr.map(({layer:_,showSeparatorAbove:ee})=>c.jsxs(b.Fragment,{children:[ee&&c.jsx("div",{className:"mx-3 border-t border-zinc-800/60 my-1"}),_.scope==="local"&&Oe?c.jsx(g0,{layer:_,opts:{isSelected:(e==null?void 0:e.id)===_.id,isActive:d===_.id,isDragging:!1,canReorder:!0,canDelete:!!f,deleteConfirm:M===_.id,onSelect:()=>ne(_.id),onDelete:()=>ge(_.id),onOpenSettings:ie=>xe(_.id,ie)}}):c.jsx("div",{children:c.jsx(vi,{layer:_,opts:{isSelected:(e==null?void 0:e.id)===_.id,isActive:d===_.id,isDragging:!1,canDelete:_.scope==="local"&&!!f,deleteConfirm:M===_.id,onSelect:()=>ne(_.id),onDelete:()=>ge(_.id),onOpenSettings:ie=>xe(_.id,ie)}})})]},_.id))})}),c.jsx(Pf,{dropAnimation:{duration:200,easing:"cubic-bezier(0.18, 0.67, 0.6, 1.22)"},children:H?(()=>{const _=l.find(ee=>ee.id===H);return _?c.jsx("div",{className:"px-2 w-full max-w-[var(--inspector-width,280px)]",children:c.jsx(vi,{layer:_,opts:{isSelected:!1,isActive:!1,isDragging:!0,canDelete:!1,deleteConfirm:!1,onSelect:()=>{},onDelete:()=>{},onOpenSettings:()=>{}},dragHandleProps:{"aria-hidden":!0}})}):null})():null})]}),M&&c.jsxs("div",{className:"flex items-center gap-2 py-2 px-3 mt-1 mx-2 rounded-md bg-amber-500/10 border border-amber-500/30",children:[c.jsx(Dd,{size:12,className:"text-amber-500 shrink-0"}),c.jsx("p",{className:"text-[10px] text-amber-500 font-medium",children:"Click delete again to confirm"})]})]})}),P&&Xe&&(()=>{const _=Xe.data||{};let ee;if(se&&se.length>0){let ie=_;for(const ye of se){const Ee=ie==null?void 0:ie[ye.fieldKey];ye.itemId!=null&&Array.isArray(Ee)?ie=Ee.find(O=>String(O==null?void 0:O.id)===String(ye.itemId))??null:ie=Ee}const fe=ie||{},Ie=P.fieldKey;ee=(typeof fe.name=="string"?fe.name:null)??(typeof fe.title=="string"?fe.title:null)??(typeof fe.label=="string"?fe.label:null)??bi(Ie)}else{const ie=P.fieldKey;if(P.itemId!=null){const ye=(Array.isArray(_[ie])?_[ie]:[]).find(Ee=>String(Ee==null?void 0:Ee.id)===String(P.itemId))||{};ee=(typeof ye.name=="string"?ye.name:null)??(typeof ye.title=="string"?ye.title:null)??(typeof ye.label=="string"?ye.label:null)??bi(ie)}else ee=bi(ie)}return c.jsxs("div",{className:"px-4 py-2 border-b border-zinc-800 bg-zinc-900/50",children:[c.jsx("p",{className:"text-[10px] font-bold uppercase tracking-widest text-zinc-500",children:"Editing"}),c.jsx("p",{className:"text-xs font-medium text-white truncate mt-0.5",children:ee})]})})(),c.jsx("div",{className:"flex-1 p-4",onFocusCapture:()=>e!=null&&L(!1),children:e?me?c.jsxs("div",{className:"space-y-4 animate-pulse",role:"status","aria-label":"Loading form",children:[c.jsx("div",{className:"h-4 w-3/4 rounded bg-zinc-800"}),c.jsx("div",{className:"h-10 rounded bg-zinc-800/80"}),c.jsx("div",{className:"h-10 rounded bg-zinc-800/80"}),c.jsx("div",{className:"h-20 rounded bg-zinc-800/80"}),c.jsx("div",{className:"h-10 rounded bg-zinc-800/60"})]}):Ve?(()=>{const ee=Object.keys(Ve.shape).filter(fe=>!mi.has(fe)&&!pc.has(gi(Ve.shape[fe]))),ie=(He==null?void 0:He.data)||{};return ee.length===0?c.jsx("p",{className:"text-xs text-zinc-500",children:"Inline editorial section: edit content directly on the canvas."}):c.jsx(Ir,{schema:Ve,data:ie,onChange:fe=>n(fe),keys:ee,expandedItemPath:se,onSidebarExpandedItemChange:T})})():c.jsxs("div",{className:"text-xs text-red-400 p-4 border border-dashed border-red-900/30 rounded bg-red-900/10",children:["No schema found for ",(G==null?void 0:G.type)??e.type]}):c.jsx("p",{className:"text-xs text-zinc-600 text-center py-10",children:"Select a layer above or on the stage to edit."})})]})}),c.jsx("div",{className:"px-4 py-2.5 border-t border-zinc-800 bg-zinc-900/50 flex items-center justify-between gap-3 opacity-100 shrink-0",children:(x&&w!=null||S&&m!=null||C!=null)&&c.jsxs(c.Fragment,{children:[c.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[c.jsx("div",{className:oe("w-2 h-2 rounded-full transition-colors duration-300 shrink-0",p?"bg-amber-500 shadow-[0_0_8px_rgba(245,158,11,0.5)]":"bg-emerald-500")}),c.jsx("span",{className:oe("text-sm font-medium transition-colors duration-300 truncate",v||y?"text-emerald-400":p?"text-amber-500":"text-zinc-500"),children:v||y?"Saved":p?"Unsaved Changes":"All Changes Saved"})]}),x&&w!=null&&c.jsxs(Rr,{children:[c.jsx(Lr,{asChild:!0,children:c.jsxs(qe,{size:"default",disabled:!p,className:"h-9 min-w-[156px] px-5 text-sm gap-2 ml-auto",onClick:_=>{_.preventDefault(),_.stopPropagation(),w()},children:[c.jsx(os,{size:14}),c.jsx("span",{children:"Save"})]})}),c.jsx(lr,{children:"Save to file"})]}),S&&m!=null&&c.jsxs(Rr,{children:[c.jsx(Lr,{asChild:!0,children:c.jsxs(qe,{size:"default",disabled:!p||k,className:"h-9 min-w-[156px] px-5 text-sm gap-2 ml-auto",onClick:_=>{_.preventDefault(),_.stopPropagation(),m()},children:[c.jsx(os,{size:14}),c.jsx("span",{children:k?"Saving...":"Hot Save"})]})}),c.jsx(lr,{children:"Hot save to edge"})]}),C!=null&&j&&c.jsx("button",{type:"button",onClick:C,className:"shrink-0 flex items-center gap-1.5 px-2 py-1 rounded text-[11px] font-medium transition-all border border-zinc-700 bg-zinc-900 text-zinc-400 hover:bg-zinc-800 hover:border-zinc-600 hover:text-zinc-300",title:"Ripristina la pagina dal file (elimina le modifiche in memoria)",children:c.jsx("span",{children:"Ripristina da file"})})]})}),X!=null&&r.length>0&&o!=null&&(()=>{const _=r.find(O=>O.id===X),ee=l.find(O=>O.id===X);if(!_)return null;const ie=(ee==null?void 0:ee.scope)==="global"?"global":"local",fe=_.type,Ie=R[fe],Ee=(Ie?Object.keys(Ie.shape):[]).filter(O=>mi.has(O)),z=_.data??{};return Ee.length===0?c.jsx("div",{className:"fixed inset-0 z-[100] flex items-center justify-center bg-black/60 p-4",role:"dialog","aria-modal":"true","aria-labelledby":"section-settings-modal-title",onClick:()=>re(null),children:c.jsxs("div",{ref:W,className:"relative rounded-lg border border-zinc-700 bg-zinc-900 shadow-xl max-w-md w-full overflow-hidden",onClick:O=>O.stopPropagation(),children:[c.jsxs("div",{className:"flex items-center justify-between px-4 py-3 border-b border-zinc-800",children:[c.jsxs("h2",{id:"section-settings-modal-title",className:"text-sm font-bold text-white",children:["Settings — ",fe]}),c.jsx("button",{type:"button",onClick:()=>re(null),className:"p-1.5 rounded text-zinc-500 hover:text-white hover:bg-zinc-800 transition-colors","aria-label":"Close settings",children:c.jsx(Ut,{size:18})})]}),c.jsx("div",{className:"p-4",children:c.jsx("p",{className:"text-xs text-zinc-500",children:"No settings fields for this section."})})]})}):c.jsx("div",{className:"fixed inset-0 z-[100] flex items-center justify-center bg-black/60 p-4",role:"dialog","aria-modal":"true","aria-labelledby":"section-settings-modal-title",onClick:O=>O.target===O.currentTarget&&re(null),children:c.jsxs("div",{ref:W,className:"relative rounded-lg border border-zinc-700 bg-zinc-900 shadow-xl max-w-md w-full max-h-[85vh] flex flex-col overflow-hidden",onClick:O=>O.stopPropagation(),children:[c.jsxs("div",{className:"flex items-center justify-between px-4 py-3 border-b border-zinc-800 shrink-0",children:[c.jsxs("h2",{id:"section-settings-modal-title",className:"text-sm font-bold text-white",children:["Settings — ",fe]}),c.jsx("button",{type:"button",onClick:()=>re(null),className:"p-1.5 rounded text-zinc-500 hover:text-white hover:bg-zinc-800 transition-colors","aria-label":"Close settings (Escape)",children:c.jsx(Ut,{size:18})})]}),c.jsx("div",{className:"flex-1 overflow-y-auto p-4 custom-scrollbar",children:c.jsx(Ir,{schema:Ie,data:z,onChange:O=>{const $={..._.data,...O};o(X,ie,fe,$)},keys:Ee})})]})})})()]})})},gc=({draft:e,globalDraft:t,menuConfig:r,themeConfig:n,slug:o,selectedId:i,scrollToSectionId:s,onScrollRequested:a})=>{const l=b.useRef(null),d=b.useCallback(()=>{var u;(u=l.current)!=null&&u.contentWindow&&l.current.contentWindow.postMessage({type:ve.UPDATE_DRAFTS,draft:e,globalDraft:t,menuConfig:r,themeConfig:n},"*")},[e,t,r,n]);return b.useEffect(()=>{d()},[d]),b.useEffect(()=>{const u=f=>{f.data.type===ve.STAGE_READY&&d()};return window.addEventListener("message",u),()=>window.removeEventListener("message",u)},[d]),b.useEffect(()=>{var u;(u=l.current)!=null&&u.contentWindow&&l.current.contentWindow.postMessage({type:ve.SYNC_SELECTION,selectedId:i},"*")},[i]),b.useEffect(()=>{var u;!s||!((u=l.current)!=null&&u.contentWindow)||(l.current.contentWindow.postMessage({type:ve.REQUEST_SCROLL_TO_SECTION,sectionId:s},"*"),a==null||a())},[s,a]),c.jsx("div",{className:"w-full h-full bg-background overflow-hidden",children:c.jsx("iframe",{ref:l,src:`/admin/preview/${o}`,className:"w-full h-full border-none",title:"JsonPages Stage"})})},xi=new Set;function b0(e){return e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").replace(/[_\s]+/g,"-").toLowerCase()}function bc(e,t=[],r={}){return Object.entries(e).forEach(([n,o])=>{const i=[...t,b0(n)];if(typeof o=="string"||typeof o=="number"){r[`--theme-${i.join("-")}`]=String(o);return}o&&typeof o=="object"&&!Array.isArray(o)&&bc(o,i,r)}),r}function We(e,t,r,n){n&&(e[t]=`var(${r})`)}function v0(e){const t=bc(e.tokens),r={...t};return We(r,"--theme-primary","--theme-colors-primary",t["--theme-colors-primary"]),We(r,"--theme-secondary","--theme-colors-secondary",t["--theme-colors-secondary"]),We(r,"--theme-accent","--theme-colors-accent",t["--theme-colors-accent"]),We(r,"--theme-background","--theme-colors-background",t["--theme-colors-background"]),We(r,"--theme-surface","--theme-colors-surface",t["--theme-colors-surface"]),We(r,"--theme-surface-alt","--theme-colors-surface-alt",t["--theme-colors-surface-alt"]),We(r,"--theme-text","--theme-colors-text",t["--theme-colors-text"]),We(r,"--theme-text-muted","--theme-colors-text-muted",t["--theme-colors-text-muted"]),We(r,"--theme-border","--theme-colors-border",t["--theme-colors-border"]),We(r,"--theme-font-primary","--theme-typography-font-family-primary",t["--theme-typography-font-family-primary"]),We(r,"--theme-font-mono","--theme-typography-font-family-mono",t["--theme-typography-font-family-mono"]),We(r,"--theme-font-display","--theme-typography-font-family-display",t["--theme-typography-font-family-display"]),We(r,"--theme-radius-sm","--theme-border-radius-sm",t["--theme-border-radius-sm"]),We(r,"--theme-radius-md","--theme-border-radius-md",t["--theme-border-radius-md"]),We(r,"--theme-radius-lg","--theme-border-radius-lg",t["--theme-border-radius-lg"]),r}const Qn={setTheme:e=>{const t=document.documentElement,r=v0(e);xi.forEach(n=>{t.style.removeProperty(n)}),xi.clear(),Object.entries(r).forEach(([n,o])=>{t.style.setProperty(n,o),xi.add(n)})}};function x0(e,t){if(!t)return e;const r=e[e.length-1];return r&&r.itemId==null&&r.fieldKey===t?e:[...e,{fieldKey:t}]}function vc(e,t){var i,s,a;const r=[];let n=null,o=e;for(;o&&o!==t;){const l=(i=o.getAttribute)==null?void 0:i.call(o,"data-jp-item-id"),d=(s=o.getAttribute)==null?void 0:s.call(o,"data-jp-item-field");if(l&&d&&r.push({fieldKey:d,itemId:l}),n==null){const u=(a=o.getAttribute)==null?void 0:a.call(o,"data-jp-field");u&&(n=u)}o=o.parentElement}return r.reverse(),x0(r,n)}const w0='[data-jp-ignore-select="true"],[data-jp-interactive="true"],.ProseMirror,[contenteditable="true"],button,input,textarea,select,[role="button"],[role="menuitem"]',y0="[data-jp-field],[data-jp-item-id],[data-jp-item-field]",xc=()=>{var h;const[e,t]=b.useState(null),[r,n]=b.useState(null),[o,i]=b.useState({main:[]}),[s,a]=b.useState(null),[l,d]=b.useState(null);if(b.useEffect(()=>{const p=w=>{var m;if(!(w.origin!==window.location.origin||w.source!==window.parent)&&(w.data.type===ve.UPDATE_DRAFTS&&(t(w.data.draft),n(w.data.globalDraft),(m=w.data.menuConfig)!=null&&m.main&&i({main:w.data.menuConfig.main}),w.data.themeConfig&&Qn.setTheme(w.data.themeConfig)),w.data.type===ve.SYNC_SELECTION&&a(w.data.selectedId),w.data.type===ve.REQUEST_SCROLL_TO_SECTION&&d(w.data.sectionId??null),w.data.type===ve.REQUEST_INLINE_FLUSH)){const v=typeof w.data.requestId=="string"?w.data.requestId:null;window.dispatchEvent(new CustomEvent(ve.REQUEST_INLINE_FLUSH,{detail:{requestId:v}})),setTimeout(()=>{window.parent.postMessage({type:ve.INLINE_FLUSHED,requestId:v},window.location.origin)},0)}};return window.addEventListener("message",p),window.parent.postMessage({type:ve.STAGE_READY},"*"),()=>window.removeEventListener("message",p)},[]),b.useEffect(()=>{const p=v=>!!v.closest(y0),w=v=>!!(v.closest('[data-jp-ignore-select="true"]')||v.closest(w0)&&!p(v)||v.closest("a[href]")&&!p(v)),m=v=>{var M,Y,H;const y=v.target;if(w(y)){y.closest("a[href]")&&v.preventDefault();return}const k=v.clientX,x=v.clientY;let S=null,C=y;for(;C&&C!==document.body;){const U=(M=C.getAttribute)==null?void 0:M.call(C,"data-section-id"),B=(Y=C.getAttribute)==null?void 0:Y.call(C,"data-section-type"),T=(H=C.getAttribute)==null?void 0:H.call(C,"data-section-scope");if(U&&B&&T){S=C;break}C=C.parentElement}if(!S)return;v.preventDefault(),v.stopPropagation();const j=S.getAttribute("data-section-id"),N=S.getAttribute("data-section-type"),E=S.getAttribute("data-section-scope");if(!j||!N||!E)return;const D={id:j,type:N,scope:E};if(y===S){window.parent.postMessage({type:ve.SECTION_SELECT,section:D},"*");return}const R=document.elementFromPoint(k,x)??y;if(!R||!S.contains(R)){window.parent.postMessage({type:ve.SECTION_SELECT,section:D},"*");return}if(R===S){window.parent.postMessage({type:ve.SECTION_SELECT,section:D},"*");return}let I=vc(R,S);if(I.length===0&&R){let U=null;const B=T=>{var re,A;const X=T.getBoundingClientRect();if(X.left<=k&&k<=X.right&&X.top<=x&&x<=X.bottom){for(let W=0;W<T.children.length;W++)B(T.children[W]);((re=T.getAttribute)!=null&&re.call(T,"data-jp-item-id")||(A=T.getAttribute)!=null&&A.call(T,"data-jp-field"))&&(U=T)}};B(R),U&&(I=vc(U,S))}const L={type:ve.SECTION_SELECT,section:D};I.length>0&&(L.itemPath=I),window.parent.postMessage(L,"*")};return document.addEventListener("click",m,!0),()=>document.removeEventListener("click",m,!0)},[]),b.useEffect(()=>{if(!l)return;const p=setTimeout(()=>d(null),600);return()=>clearTimeout(p)},[l]),!e||!r)return c.jsx("div",{className:"flex items-center justify-center h-screen w-full bg-zinc-950 text-zinc-500 font-mono text-xs uppercase tracking-widest animate-pulse",children:"Waiting for Studio Signal..."});const u={main:rn((h=r.header)==null?void 0:h.data,o.main)},f=p=>{window.parent.postMessage({type:ve.ACTIVE_SECTION_CHANGED,activeSectionId:p},"*")};return c.jsx(Xr,{mode:"studio",children:c.jsx("div",{className:"jp-ice-active",children:c.jsx(fo,{pageConfig:e,siteConfig:r,menuConfig:u,selectedId:s,scrollToSectionId:l,onActiveSectionChange:f})})})};function k0(e){return e.split("-").map(t=>t.charAt(0).toUpperCase()+t.slice(1).toLowerCase()).join(" ")}const wc=({open:e,onClose:t,sectionTypes:r,sectionTypeLabels:n,onSelect:o})=>{if(b.useEffect(()=>{if(!e)return;const s=a=>{a.key==="Escape"&&t()};return window.addEventListener("keydown",s),()=>window.removeEventListener("keydown",s)},[e,t]),!e)return null;const i=s=>(n==null?void 0:n[s])??k0(s);return c.jsxs("div",{className:"fixed inset-0 z-[100] flex items-center justify-center p-4",role:"dialog","aria-modal":"true","aria-labelledby":"jp-add-section-title",children:[c.jsx("div",{className:"absolute inset-0 bg-zinc-950/80 backdrop-blur-sm",onClick:t,"aria-hidden":"true"}),c.jsxs("div",{className:"relative w-full max-w-md max-h-[85vh] flex flex-col rounded-xl border border-zinc-700 bg-zinc-900 shadow-2xl overflow-hidden",children:[c.jsxs("div",{className:"flex items-center justify-between px-5 py-4 border-b border-zinc-800 shrink-0",children:[c.jsxs("div",{className:"flex items-center gap-2",children:[c.jsx("div",{className:"p-1.5 rounded-lg bg-blue-500/20 text-blue-400",children:c.jsx(lo,{size:18})}),c.jsx("h2",{id:"jp-add-section-title",className:"text-sm font-bold text-white",children:"Add section"})]}),c.jsx("button",{type:"button",onClick:t,className:"p-1.5 rounded-md text-zinc-400 hover:text-white hover:bg-zinc-800 transition-colors","aria-label":"Close",children:c.jsx(Ut,{size:18})})]}),c.jsx("div",{className:"flex-1 overflow-y-auto p-4",children:r.length===0?c.jsx("p",{className:"text-xs text-zinc-500 text-center py-8",children:"No section types available. Configure addableSectionTypes or schemas."}):c.jsx("ul",{className:"grid gap-2",role:"listbox",children:r.map(s=>c.jsx("li",{role:"option",children:c.jsxs("button",{type:"button",onClick:()=>{o(s),t()},className:oe("w-full flex items-center gap-3 px-4 py-3 rounded-lg text-left","border border-zinc-700/80 bg-zinc-800/50","hover:border-blue-500/40 hover:bg-zinc-800 transition-colors","focus:outline-none focus:ring-2 focus:ring-blue-500/50 focus:ring-offset-2 focus:ring-offset-zinc-900"),children:[c.jsx("span",{className:"flex items-center justify-center w-9 h-9 rounded-md bg-zinc-700/80 text-zinc-400 text-xs font-mono shrink-0",children:s}),c.jsx("span",{className:"text-sm font-medium text-zinc-200",children:i(s)})]})},s))})}),c.jsx("div",{className:"px-5 py-3 border-t border-zinc-800 shrink-0",children:c.jsx("p",{className:"text-[10px] text-zinc-500 uppercase tracking-wider",children:"Choose a section type to add to the bottom of this page"})})]})]})},yc=()=>c.jsxs("div",{style:{"--local-bg":"var(--color-background)","--local-text":"var(--color-text)","--local-text-muted":"var(--color-text-muted)","--local-primary":"var(--color-primary)","--local-radius-md":"var(--radius-md)"},className:"min-h-screen flex flex-col items-center justify-center bg-[var(--local-bg)] px-6",children:[c.jsx("h1",{className:"text-6xl font-bold text-[var(--local-text)] mb-4",children:"404"}),c.jsx("p",{className:"text-xl text-[var(--local-text-muted)] mb-8",children:"Page not found"}),c.jsx("a",{href:"/",className:"inline-flex items-center gap-2 px-6 py-3 rounded-[var(--local-radius-md)] bg-[var(--local-primary)] text-[var(--local-bg)] font-semibold text-sm hover:opacity-90 transition-opacity",children:"Back to Home"})]});function wi(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function kc(e){return e==null?e:JSON.parse(JSON.stringify(e))}function Sc(){if(typeof window>"u")return null;const e=window;return e.__olonWebMcpTools__||(e.__olonWebMcpTools__=new Map),e.__olonWebMcpTools__}function yi(e){return`update-${e}`}function Cc(e){return e.startsWith("update-")?e.slice(7):null}function Ec(e){return{type:"object",additionalProperties:!1,properties:{slug:{type:"string"},sectionId:{type:"string"},scope:{type:"string",enum:["local","global"],default:"local"},data:{type:"object",description:`Full replacement payload validated against the "${e}" section schema.`},itemPath:{type:"array",description:"Optional root-to-leaf path for targeted field updates.",items:{type:"object",additionalProperties:!1,properties:{fieldKey:{type:"string"},itemId:{type:"string"}},required:["fieldKey"]}},fieldKey:{type:"string",description:"Shorthand for a top-level scalar field update when itemPath is omitted."},value:{description:"Value written to the targeted field or array item."}},required:["sectionId"],oneOf:[{required:["data"]},{required:["itemPath","value"]},{required:["fieldKey","value"]}]}}function ki(e,t,r){if(t.length===0)throw new Error("Selection path is empty.");const n=kc(e);let o=n;for(let i=0;i<t.length;i+=1){const s=t[i],a=i===t.length-1;if(!wi(o))throw new Error(`Cannot navigate path segment "${s.fieldKey}" on a non-object value.`);if(s.itemId!=null){const l=o[s.fieldKey];if(!Array.isArray(l))throw new Error(`Field "${s.fieldKey}" is not an array.`);const d=l.findIndex(u=>wi(u)&&String(u.id??"")===String(s.itemId));if(d===-1)throw new Error(`Array item "${s.itemId}" not found under "${s.fieldKey}".`);if(a)return l[d]=r,n;o=l[d];continue}if(a)return o[s.fieldKey]=r,n;o=o[s.fieldKey]}return n}function Si(e,t){if(t.data&&wi(t.data))return kc(t.data);if(Array.isArray(t.itemPath)&&t.itemPath.length>0)return ki(e,t.itemPath,t.value);if(typeof t.fieldKey=="string"&&t.fieldKey.trim().length>0)return ki(e,[{fieldKey:t.fieldKey}],t.value);throw new Error('WebMCP mutation requires either "data", "itemPath", or "fieldKey".')}async function jc(e){if(e.startsWith("olon://pages/")){const t=e.replace("olon://pages/",""),r=window.location.pathname.replace(/\/admin(\/.*)?$/,"").replace(/\/$/,""),n=await fetch(`${r}/pages/${t}.json`);if(!n.ok)throw new Error(`Resource not found: ${e} (at ${r}/pages/${t}.json)`);return await n.json()}throw new Error(`Unsupported URI scheme: ${e}`)}function eo(){if(typeof window>"u"||typeof navigator>"u")return;const e=Sc();if(!e)return;const t=navigator;t.modelContext||(t.modelContext={}),t.modelContext.registerTool=function(r){e.set(r.name,r)},t.modelContext.unregisterTool=function(r){e.delete(r)},t.modelContext.readResource=jc,t.modelContextTesting||(t.modelContextTesting={}),t.modelContextTesting.listTools=function(){return Array.from(e.values()).map(({execute:r,...n})=>n)},t.modelContextTesting.executeTool=async function(r,n){const o=e.get(r);if(!o)throw new Error(`Unknown WebMCP tool: ${r}`);const i=n?JSON.parse(n):{},s=await o.execute(i);return JSON.stringify(s)},t.modelContextTesting.readResource=async function(r){const n=await jc(r);return JSON.stringify(n)}}function Nc(e){var n,o;if(typeof navigator>"u")return()=>{};eo();const t=navigator,r=Sc();return!t.modelContext||!r?()=>{}:((o=(n=t.modelContext).registerTool)==null||o.call(n,e),r.set(e.name,e),()=>{var i,s;r.delete(e.name),(s=(i=t.modelContext)==null?void 0:i.unregisterTool)==null||s.call(i,e.name)})}const S0='/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-200:oklch(88.5% .062 18.334);--color-red-300:oklch(80.8% .114 19.571);--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-900:oklch(39.6% .141 25.723);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-500:oklch(76.9% .188 70.08);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-zinc-100:oklch(96.7% .001 286.375);--color-zinc-200:oklch(92% .004 286.32);--color-zinc-300:oklch(87.1% .006 286.286);--color-zinc-400:oklch(70.5% .015 286.067);--color-zinc-500:oklch(55.2% .016 285.938);--color-zinc-600:oklch(44.2% .017 285.786);--color-zinc-700:oklch(37% .013 285.805);--color-zinc-800:oklch(27.4% .006 286.033);--color-zinc-900:oklch(21% .006 285.885);--color-zinc-950:oklch(14.1% .005 285.823);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-md:28rem;--container-lg:32rem;--container-2xl:42rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-6xl:3.75rem;--text-6xl--line-height:1;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-black:900;--tracking-tight:-.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--blur-sm:8px;--blur-md:12px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-background:var(--background);--color-foreground:var(--foreground);--color-primary:var(--primary);--color-primary-foreground:var(--primary-foreground);--color-destructive:var(--destructive);--color-ring:var(--ring)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border)}body{background-color:var(--background);color:var(--foreground);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing)*0)}.inset-x-0{inset-inline:calc(var(--spacing)*0)}.top-0{top:calc(var(--spacing)*0)}.top-1\\/2{top:50%}.top-2{top:calc(var(--spacing)*2)}.right-0{right:calc(var(--spacing)*0)}.right-2{right:calc(var(--spacing)*2)}.bottom-0{bottom:calc(var(--spacing)*0)}.left-0{left:calc(var(--spacing)*0)}.left-1\\/2{left:50%}.left-2{left:calc(var(--spacing)*2)}.left-3{left:calc(var(--spacing)*3)}.z-0{z-index:0}.z-10{z-index:10}.z-50,.z-\\[50\\]{z-index:50}.z-\\[60\\]{z-index:60}.z-\\[70\\]{z-index:70}.z-\\[100\\]{z-index:100}.z-\\[9998\\]{z-index:9998}.z-\\[9999\\]{z-index:9999}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.m-4{margin:calc(var(--spacing)*4)}.mx-1{margin-inline:calc(var(--spacing)*1)}.mx-1\\.5{margin-inline:calc(var(--spacing)*1.5)}.mx-2{margin-inline:calc(var(--spacing)*2)}.mx-3{margin-inline:calc(var(--spacing)*3)}.my-1{margin-block:calc(var(--spacing)*1)}.mt-0\\.5{margin-top:calc(var(--spacing)*.5)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-1\\.5{margin-top:calc(var(--spacing)*1.5)}.mt-2{margin-top:calc(var(--spacing)*2)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-1\\.5{margin-bottom:calc(var(--spacing)*1.5)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-auto{margin-left:auto}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.aspect-\\[4\\/3\\]{aspect-ratio:4/3}.size-4{width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.h-1\\.5{height:calc(var(--spacing)*1.5)}.h-2{height:calc(var(--spacing)*2)}.h-3{height:calc(var(--spacing)*3)}.h-3\\.5{height:calc(var(--spacing)*3.5)}.h-4{height:calc(var(--spacing)*4)}.h-6{height:calc(var(--spacing)*6)}.h-7{height:calc(var(--spacing)*7)}.h-8{height:calc(var(--spacing)*8)}.h-9{height:calc(var(--spacing)*9)}.h-10{height:calc(var(--spacing)*10)}.h-12{height:calc(var(--spacing)*12)}.h-20{height:calc(var(--spacing)*20)}.h-40{height:calc(var(--spacing)*40)}.h-\\[var\\(--radix-select-trigger-height\\)\\]{height:var(--radix-select-trigger-height)}.h-full{height:100%}.h-screen{height:100vh}.max-h-96{max-height:calc(var(--spacing)*96)}.max-h-\\[45vh\\]{max-height:45vh}.max-h-\\[85vh\\]{max-height:85vh}.max-h-\\[90vh\\]{max-height:90vh}.max-h-\\[320px\\]{max-height:320px}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-16{min-height:calc(var(--spacing)*16)}.min-h-\\[18px\\]{min-height:18px}.min-h-\\[96px\\]{min-height:96px}.min-h-\\[240px\\]{min-height:240px}.min-h-screen{min-height:100vh}.w-1{width:calc(var(--spacing)*1)}.w-1\\.5{width:calc(var(--spacing)*1.5)}.w-2{width:calc(var(--spacing)*2)}.w-3{width:calc(var(--spacing)*3)}.w-3\\.5{width:calc(var(--spacing)*3.5)}.w-3\\/4{width:75%}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-7{width:calc(var(--spacing)*7)}.w-8{width:calc(var(--spacing)*8)}.w-9{width:calc(var(--spacing)*9)}.w-10{width:calc(var(--spacing)*10)}.w-12{width:calc(var(--spacing)*12)}.w-\\[calc\\(100\\%-2rem\\)\\]{width:calc(100% - 2rem)}.w-\\[var\\(--radix-popover-trigger-width\\)\\]{width:var(--radix-popover-trigger-width)}.w-full{width:100%}.w-px{width:1px}.w-screen{width:100vw}.max-w-2xl{max-width:var(--container-2xl)}.max-w-\\[280px\\]{max-width:280px}.max-w-\\[var\\(--inspector-width\\,280px\\)\\]{max-width:var(--inspector-width,280px)}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.min-w-0{min-width:calc(var(--spacing)*0)}.min-w-\\[8rem\\]{min-width:8rem}.min-w-\\[18px\\]{min-width:18px}.min-w-\\[156px\\]{min-width:156px}.min-w-\\[var\\(--radix-popover-trigger-width\\)\\]{min-width:var(--radix-popover-trigger-width)}.min-w-\\[var\\(--radix-select-trigger-width\\)\\]{min-width:var(--radix-select-trigger-width)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.-translate-x-1\\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-0\\.5{--tw-translate-x:calc(var(--spacing)*.5);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-3{--tw-translate-x:calc(var(--spacing)*3);translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-1\\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.cursor-col-resize{cursor:col-resize}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize-none{resize:none}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-nowrap{flex-wrap:nowrap}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0{gap:calc(var(--spacing)*0)}.gap-0\\.5{gap:calc(var(--spacing)*.5)}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-2\\.5{gap:calc(var(--spacing)*2.5)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}:where(.space-y-0\\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*2)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-x-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-\\[inherit\\]{border-radius:inherit}.rounded-\\[var\\(--local-radius-md\\)\\]{border-radius:var(--local-radius-md)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-none{--tw-border-style:none;border-style:none}.border-solid{--tw-border-style:solid;border-style:solid}.border-amber-500\\/20{border-color:#f99c0033}@supports (color:color-mix(in lab,red,red)){.border-amber-500\\/20{border-color:color-mix(in oklab,var(--color-amber-500)20%,transparent)}}.border-amber-500\\/30{border-color:#f99c004d}@supports (color:color-mix(in lab,red,red)){.border-amber-500\\/30{border-color:color-mix(in oklab,var(--color-amber-500)30%,transparent)}}.border-blue-500{border-color:var(--color-blue-500)}.border-blue-500\\/50{border-color:#3080ff80}@supports (color:color-mix(in lab,red,red)){.border-blue-500\\/50{border-color:color-mix(in oklab,var(--color-blue-500)50%,transparent)}}.border-blue-600{border-color:var(--color-blue-600)}.border-emerald-500\\/60{border-color:#00bb7f99}@supports (color:color-mix(in lab,red,red)){.border-emerald-500\\/60{border-color:color-mix(in oklab,var(--color-emerald-500)60%,transparent)}}.border-primary{border-color:var(--color-primary)}.border-red-500\\/20{border-color:#fb2c3633}@supports (color:color-mix(in lab,red,red)){.border-red-500\\/20{border-color:color-mix(in oklab,var(--color-red-500)20%,transparent)}}.border-red-500\\/50{border-color:#fb2c3680}@supports (color:color-mix(in lab,red,red)){.border-red-500\\/50{border-color:color-mix(in oklab,var(--color-red-500)50%,transparent)}}.border-red-900\\/30{border-color:#82181a4d}@supports (color:color-mix(in lab,red,red)){.border-red-900\\/30{border-color:color-mix(in oklab,var(--color-red-900)30%,transparent)}}.border-transparent{border-color:#0000}.border-zinc-700{border-color:var(--color-zinc-700)}.border-zinc-700\\/60{border-color:#3f3f4699}@supports (color:color-mix(in lab,red,red)){.border-zinc-700\\/60{border-color:color-mix(in oklab,var(--color-zinc-700)60%,transparent)}}.border-zinc-700\\/80{border-color:#3f3f46cc}@supports (color:color-mix(in lab,red,red)){.border-zinc-700\\/80{border-color:color-mix(in oklab,var(--color-zinc-700)80%,transparent)}}.border-zinc-800{border-color:var(--color-zinc-800)}.border-zinc-800\\/50{border-color:#27272a80}@supports (color:color-mix(in lab,red,red)){.border-zinc-800\\/50{border-color:color-mix(in oklab,var(--color-zinc-800)50%,transparent)}}.border-zinc-800\\/60{border-color:#27272a99}@supports (color:color-mix(in lab,red,red)){.border-zinc-800\\/60{border-color:color-mix(in oklab,var(--color-zinc-800)60%,transparent)}}.border-l-transparent{border-left-color:#0000}.bg-\\[var\\(--color-background\\)\\]{background-color:var(--color-background)}.bg-\\[var\\(--local-bg\\)\\]{background-color:var(--local-bg)}.bg-\\[var\\(--local-primary\\)\\]{background-color:var(--local-primary)}.bg-amber-500{background-color:var(--color-amber-500)}.bg-amber-500\\/5{background-color:#f99c000d}@supports (color:color-mix(in lab,red,red)){.bg-amber-500\\/5{background-color:color-mix(in oklab,var(--color-amber-500)5%,transparent)}}.bg-amber-500\\/10{background-color:#f99c001a}@supports (color:color-mix(in lab,red,red)){.bg-amber-500\\/10{background-color:color-mix(in oklab,var(--color-amber-500)10%,transparent)}}.bg-background{background-color:var(--color-background)}.bg-black{background-color:var(--color-black)}.bg-black\\/0{background-color:#0000}@supports (color:color-mix(in lab,red,red)){.bg-black\\/0{background-color:color-mix(in oklab,var(--color-black)0%,transparent)}}.bg-black\\/20{background-color:#0003}@supports (color:color-mix(in lab,red,red)){.bg-black\\/20{background-color:color-mix(in oklab,var(--color-black)20%,transparent)}}.bg-black\\/30{background-color:#0000004d}@supports (color:color-mix(in lab,red,red)){.bg-black\\/30{background-color:color-mix(in oklab,var(--color-black)30%,transparent)}}.bg-black\\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\\/50{background-color:color-mix(in oklab,var(--color-black)50%,transparent)}}.bg-black\\/60{background-color:#0009}@supports (color:color-mix(in lab,red,red)){.bg-black\\/60{background-color:color-mix(in oklab,var(--color-black)60%,transparent)}}.bg-blue-500{background-color:var(--color-blue-500)}.bg-blue-500\\/5{background-color:#3080ff0d}@supports (color:color-mix(in lab,red,red)){.bg-blue-500\\/5{background-color:color-mix(in oklab,var(--color-blue-500)5%,transparent)}}.bg-blue-500\\/10{background-color:#3080ff1a}@supports (color:color-mix(in lab,red,red)){.bg-blue-500\\/10{background-color:color-mix(in oklab,var(--color-blue-500)10%,transparent)}}.bg-blue-500\\/15{background-color:#3080ff26}@supports (color:color-mix(in lab,red,red)){.bg-blue-500\\/15{background-color:color-mix(in oklab,var(--color-blue-500)15%,transparent)}}.bg-blue-500\\/20{background-color:#3080ff33}@supports (color:color-mix(in lab,red,red)){.bg-blue-500\\/20{background-color:color-mix(in oklab,var(--color-blue-500)20%,transparent)}}.bg-blue-500\\/\\[0\\.04\\]{background-color:#3080ff0a}@supports (color:color-mix(in lab,red,red)){.bg-blue-500\\/\\[0\\.04\\]{background-color:color-mix(in oklab,var(--color-blue-500)4%,transparent)}}.bg-blue-600{background-color:var(--color-blue-600)}.bg-blue-600\\/10{background-color:#155dfc1a}@supports (color:color-mix(in lab,red,red)){.bg-blue-600\\/10{background-color:color-mix(in oklab,var(--color-blue-600)10%,transparent)}}.bg-destructive\\/15{background-color:var(--color-destructive)}@supports (color:color-mix(in lab,red,red)){.bg-destructive\\/15{background-color:color-mix(in oklab,var(--color-destructive)15%,transparent)}}.bg-emerald-500{background-color:var(--color-emerald-500)}.bg-primary,.bg-primary\\/10{background-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.bg-primary\\/10{background-color:color-mix(in oklab,var(--color-primary)10%,transparent)}}.bg-primary\\/\\[0\\.08\\]{background-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.bg-primary\\/\\[0\\.08\\]{background-color:color-mix(in oklab,var(--color-primary)8%,transparent)}}.bg-red-500\\/10{background-color:#fb2c361a}@supports (color:color-mix(in lab,red,red)){.bg-red-500\\/10{background-color:color-mix(in oklab,var(--color-red-500)10%,transparent)}}.bg-red-500\\/15{background-color:#fb2c3626}@supports (color:color-mix(in lab,red,red)){.bg-red-500\\/15{background-color:color-mix(in oklab,var(--color-red-500)15%,transparent)}}.bg-red-900\\/10{background-color:#82181a1a}@supports (color:color-mix(in lab,red,red)){.bg-red-900\\/10{background-color:color-mix(in oklab,var(--color-red-900)10%,transparent)}}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-white\\/15{background-color:#ffffff26}@supports (color:color-mix(in lab,red,red)){.bg-white\\/15{background-color:color-mix(in oklab,var(--color-white)15%,transparent)}}.bg-white\\/20{background-color:#fff3}@supports (color:color-mix(in lab,red,red)){.bg-white\\/20{background-color:color-mix(in oklab,var(--color-white)20%,transparent)}}.bg-white\\/\\[0\\.01\\]{background-color:#ffffff03}@supports (color:color-mix(in lab,red,red)){.bg-white\\/\\[0\\.01\\]{background-color:color-mix(in oklab,var(--color-white)1%,transparent)}}.bg-white\\/\\[0\\.02\\]{background-color:#ffffff05}@supports (color:color-mix(in lab,red,red)){.bg-white\\/\\[0\\.02\\]{background-color:color-mix(in oklab,var(--color-white)2%,transparent)}}.bg-white\\/\\[0\\.03\\]{background-color:#ffffff08}@supports (color:color-mix(in lab,red,red)){.bg-white\\/\\[0\\.03\\]{background-color:color-mix(in oklab,var(--color-white)3%,transparent)}}.bg-zinc-700{background-color:var(--color-zinc-700)}.bg-zinc-700\\/80{background-color:#3f3f46cc}@supports (color:color-mix(in lab,red,red)){.bg-zinc-700\\/80{background-color:color-mix(in oklab,var(--color-zinc-700)80%,transparent)}}.bg-zinc-800{background-color:var(--color-zinc-800)}.bg-zinc-800\\/30{background-color:#27272a4d}@supports (color:color-mix(in lab,red,red)){.bg-zinc-800\\/30{background-color:color-mix(in oklab,var(--color-zinc-800)30%,transparent)}}.bg-zinc-800\\/50{background-color:#27272a80}@supports (color:color-mix(in lab,red,red)){.bg-zinc-800\\/50{background-color:color-mix(in oklab,var(--color-zinc-800)50%,transparent)}}.bg-zinc-800\\/60{background-color:#27272a99}@supports (color:color-mix(in lab,red,red)){.bg-zinc-800\\/60{background-color:color-mix(in oklab,var(--color-zinc-800)60%,transparent)}}.bg-zinc-800\\/80{background-color:#27272acc}@supports (color:color-mix(in lab,red,red)){.bg-zinc-800\\/80{background-color:color-mix(in oklab,var(--color-zinc-800)80%,transparent)}}.bg-zinc-900{background-color:var(--color-zinc-900)}.bg-zinc-900\\/20{background-color:#18181b33}@supports (color:color-mix(in lab,red,red)){.bg-zinc-900\\/20{background-color:color-mix(in oklab,var(--color-zinc-900)20%,transparent)}}.bg-zinc-900\\/40{background-color:#18181b66}@supports (color:color-mix(in lab,red,red)){.bg-zinc-900\\/40{background-color:color-mix(in oklab,var(--color-zinc-900)40%,transparent)}}.bg-zinc-900\\/50{background-color:#18181b80}@supports (color:color-mix(in lab,red,red)){.bg-zinc-900\\/50{background-color:color-mix(in oklab,var(--color-zinc-900)50%,transparent)}}.bg-zinc-900\\/60{background-color:#18181b99}@supports (color:color-mix(in lab,red,red)){.bg-zinc-900\\/60{background-color:color-mix(in oklab,var(--color-zinc-900)60%,transparent)}}.bg-zinc-950{background-color:var(--color-zinc-950)}.bg-zinc-950\\/80{background-color:#09090bcc}@supports (color:color-mix(in lab,red,red)){.bg-zinc-950\\/80{background-color:color-mix(in oklab,var(--color-zinc-950)80%,transparent)}}.bg-gradient-to-t{--tw-gradient-position:to top in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-black\\/70{--tw-gradient-from:#000000b3}@supports (color:color-mix(in lab,red,red)){.from-black\\/70{--tw-gradient-from:color-mix(in oklab,var(--color-black)70%,transparent)}}.from-black\\/70{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-black\\/80{--tw-gradient-from:#000c}@supports (color:color-mix(in lab,red,red)){.from-black\\/80{--tw-gradient-from:color-mix(in oklab,var(--color-black)80%,transparent)}}.from-black\\/80{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:calc(var(--spacing)*0)}.p-1{padding:calc(var(--spacing)*1)}.p-1\\.5{padding:calc(var(--spacing)*1.5)}.p-2\\.5{padding:calc(var(--spacing)*2.5)}.p-4{padding:calc(var(--spacing)*4)}.p-5{padding:calc(var(--spacing)*5)}.p-6{padding:calc(var(--spacing)*6)}.p-8{padding:calc(var(--spacing)*8)}.p-px{padding:1px}.px-2{padding-inline:calc(var(--spacing)*2)}.px-2\\.5{padding-inline:calc(var(--spacing)*2.5)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-3\\.5{padding-inline:calc(var(--spacing)*3.5)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-5{padding-inline:calc(var(--spacing)*5)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-2\\.5{padding-block:calc(var(--spacing)*2.5)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-7{padding-block:calc(var(--spacing)*7)}.py-8{padding-block:calc(var(--spacing)*8)}.py-10{padding-block:calc(var(--spacing)*10)}.py-12{padding-block:calc(var(--spacing)*12)}.pt-1{padding-top:calc(var(--spacing)*1)}.pt-4{padding-top:calc(var(--spacing)*4)}.pr-2{padding-right:calc(var(--spacing)*2)}.pr-4{padding-right:calc(var(--spacing)*4)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.pl-1{padding-left:calc(var(--spacing)*1)}.pl-3{padding-left:calc(var(--spacing)*3)}.pl-8{padding-left:calc(var(--spacing)*8)}.pl-9{padding-left:calc(var(--spacing)*9)}.text-center{text-align:center}.text-left{text-align:left}.font-mono{font-family:var(--font-mono)}.text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\\[9px\\]{font-size:9px}.text-\\[10px\\]{font-size:10px}.text-\\[11px\\]{font-size:11px}.text-\\[12px\\]{font-size:12px}.text-\\[13px\\]{font-size:13px}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\\[0\\.01em\\]{--tw-tracking:.01em;letter-spacing:.01em}.tracking-\\[0\\.02em\\]{--tw-tracking:.02em;letter-spacing:.02em}.tracking-\\[0\\.04em\\]{--tw-tracking:.04em;letter-spacing:.04em}.tracking-\\[0\\.05em\\]{--tw-tracking:.05em;letter-spacing:.05em}.tracking-\\[0\\.06em\\]{--tw-tracking:.06em;letter-spacing:.06em}.tracking-\\[0\\.08em\\]{--tw-tracking:.08em;letter-spacing:.08em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.whitespace-nowrap{white-space:nowrap}.text-\\[var\\(--local-bg\\)\\]{color:var(--local-bg)}.text-\\[var\\(--local-text\\)\\]{color:var(--local-text)}.text-\\[var\\(--local-text-muted\\)\\]{color:var(--local-text-muted)}.text-amber-200{color:var(--color-amber-200)}.text-amber-500{color:var(--color-amber-500)}.text-amber-500\\/70{color:#f99c00b3}@supports (color:color-mix(in lab,red,red)){.text-amber-500\\/70{color:color-mix(in oklab,var(--color-amber-500)70%,transparent)}}.text-blue-400{color:var(--color-blue-400)}.text-blue-500{color:var(--color-blue-500)}.text-blue-600{color:var(--color-blue-600)}.text-destructive{color:var(--color-destructive)}.text-emerald-400{color:var(--color-emerald-400)}.text-foreground{color:var(--color-foreground)}.text-primary{color:var(--color-primary)}.text-primary-foreground{color:var(--color-primary-foreground)}.text-red-300{color:var(--color-red-300)}.text-red-400{color:var(--color-red-400)}.text-white{color:var(--color-white)}.text-zinc-200{color:var(--color-zinc-200)}.text-zinc-300{color:var(--color-zinc-300)}.text-zinc-400{color:var(--color-zinc-400)}.text-zinc-500{color:var(--color-zinc-500)}.text-zinc-600{color:var(--color-zinc-600)}.text-zinc-600\\/50{color:#52525c80}@supports (color:color-mix(in lab,red,red)){.text-zinc-600\\/50{color:color-mix(in oklab,var(--color-zinc-600)50%,transparent)}}.text-zinc-700{color:var(--color-zinc-700)}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\\[0_0_8px_rgba\\(245\\,158\\,11\\,0\\.5\\)\\]{--tw-shadow:0 0 8px var(--tw-shadow-color,#f59e0b80);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-black\\/30{--tw-shadow-color:#0000004d}@supports (color:color-mix(in lab,red,red)){.shadow-black\\/30{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--color-black)30%,transparent)var(--tw-shadow-alpha),transparent)}}.shadow-primary\\/20{--tw-shadow-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.shadow-primary\\/20{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--color-primary)20%,transparent)var(--tw-shadow-alpha),transparent)}}.ring-blue-500{--tw-ring-color:var(--color-blue-500)}.ring-blue-500\\/40{--tw-ring-color:#3080ff66}@supports (color:color-mix(in lab,red,red)){.ring-blue-500\\/40{--tw-ring-color:color-mix(in oklab,var(--color-blue-500)40%,transparent)}}.ring-zinc-800{--tw-ring-color:var(--color-zinc-800)}.ring-offset-1{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.ring-offset-zinc-900{--tw-ring-offset-color:var(--color-zinc-900)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.brightness-\\[0\\.6\\]{--tw-brightness:brightness(.6);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.brightness-\\[0\\.85\\]{--tw-brightness:brightness(.85);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition-\\[border-color\\,opacity\\]{transition-property:border-color,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[filter\\]{transition-property:filter;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}@media(hover:hover){.group-hover\\:border-dashed:is(:where(.group):hover *){--tw-border-style:dashed;border-style:dashed}.group-hover\\:border-blue-400\\/50:is(:where(.group):hover *){border-color:#54a2ff80}@supports (color:color-mix(in lab,red,red)){.group-hover\\:border-blue-400\\/50:is(:where(.group):hover *){border-color:color-mix(in oklab,var(--color-blue-400)50%,transparent)}}.group-hover\\:opacity-100:is(:where(.group):hover *){opacity:1}.group-hover\\:brightness-100:is(:where(.group):hover *){--tw-brightness:brightness(100%);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.hover\\:scale-\\[1\\.02\\]:hover{scale:1.02}.hover\\:border-blue-500\\/30:hover{border-color:#3080ff4d}@supports (color:color-mix(in lab,red,red)){.hover\\:border-blue-500\\/30:hover{border-color:color-mix(in oklab,var(--color-blue-500)30%,transparent)}}.hover\\:border-blue-500\\/40:hover{border-color:#3080ff66}@supports (color:color-mix(in lab,red,red)){.hover\\:border-blue-500\\/40:hover{border-color:color-mix(in oklab,var(--color-blue-500)40%,transparent)}}.hover\\:border-zinc-600:hover{border-color:var(--color-zinc-600)}.hover\\:border-zinc-700:hover{border-color:var(--color-zinc-700)}.hover\\:bg-blue-500\\/\\[0\\.03\\]:hover{background-color:#3080ff08}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-blue-500\\/\\[0\\.03\\]:hover{background-color:color-mix(in oklab,var(--color-blue-500)3%,transparent)}}.hover\\:bg-blue-600\\/20:hover{background-color:#155dfc33}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-blue-600\\/20:hover{background-color:color-mix(in oklab,var(--color-blue-600)20%,transparent)}}.hover\\:bg-destructive\\/25:hover{background-color:var(--color-destructive)}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-destructive\\/25:hover{background-color:color-mix(in oklab,var(--color-destructive)25%,transparent)}}.hover\\:bg-primary\\/40:hover{background-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-primary\\/40:hover{background-color:color-mix(in oklab,var(--color-primary)40%,transparent)}}.hover\\:bg-primary\\/90:hover{background-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-primary\\/90:hover{background-color:color-mix(in oklab,var(--color-primary)90%,transparent)}}.hover\\:bg-red-500\\/10:hover{background-color:#fb2c361a}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-red-500\\/10:hover{background-color:color-mix(in oklab,var(--color-red-500)10%,transparent)}}.hover\\:bg-red-500\\/25:hover{background-color:#fb2c3640}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-red-500\\/25:hover{background-color:color-mix(in oklab,var(--color-red-500)25%,transparent)}}.hover\\:bg-white\\/30:hover{background-color:#ffffff4d}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-white\\/30:hover{background-color:color-mix(in oklab,var(--color-white)30%,transparent)}}.hover\\:bg-white\\/\\[0\\.02\\]:hover{background-color:#ffffff05}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-white\\/\\[0\\.02\\]:hover{background-color:color-mix(in oklab,var(--color-white)2%,transparent)}}.hover\\:bg-zinc-600:hover{background-color:var(--color-zinc-600)}.hover\\:bg-zinc-800:hover{background-color:var(--color-zinc-800)}.hover\\:bg-zinc-800\\/40:hover{background-color:#27272a66}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-zinc-800\\/40:hover{background-color:color-mix(in oklab,var(--color-zinc-800)40%,transparent)}}.hover\\:bg-zinc-800\\/50:hover{background-color:#27272a80}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-zinc-800\\/50:hover{background-color:color-mix(in oklab,var(--color-zinc-800)50%,transparent)}}.hover\\:bg-zinc-900:hover{background-color:var(--color-zinc-900)}.hover\\:text-blue-400:hover{color:var(--color-blue-400)}.hover\\:text-destructive:hover{color:var(--color-destructive)}.hover\\:text-primary:hover{color:var(--color-primary)}.hover\\:text-red-200:hover{color:var(--color-red-200)}.hover\\:text-red-400:hover{color:var(--color-red-400)}.hover\\:text-red-500:hover{color:var(--color-red-500)}.hover\\:text-white:hover{color:var(--color-white)}.hover\\:text-zinc-200:hover{color:var(--color-zinc-200)}.hover\\:text-zinc-300:hover{color:var(--color-zinc-300)}.hover\\:text-zinc-400:hover{color:var(--color-zinc-400)}.hover\\:opacity-90:hover{opacity:.9}.hover\\:ring-zinc-600:hover{--tw-ring-color:var(--color-zinc-600)}}.focus\\:bg-zinc-800:focus{background-color:var(--color-zinc-800)}.focus\\:text-white:focus{color:var(--color-white)}.focus\\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\\:ring-blue-500\\/50:focus{--tw-ring-color:#3080ff80}@supports (color:color-mix(in lab,red,red)){.focus\\:ring-blue-500\\/50:focus{--tw-ring-color:color-mix(in oklab,var(--color-blue-500)50%,transparent)}}.focus\\:ring-blue-600:focus{--tw-ring-color:var(--color-blue-600)}.focus\\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus\\:ring-offset-zinc-900:focus{--tw-ring-offset-color:var(--color-zinc-900)}.focus\\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\\:border-zinc-600:focus-visible{border-color:var(--color-zinc-600)}.focus-visible\\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\\:ring-blue-500:focus-visible{--tw-ring-color:var(--color-blue-500)}.focus-visible\\:ring-blue-500\\/80:focus-visible{--tw-ring-color:#3080ffcc}@supports (color:color-mix(in lab,red,red)){.focus-visible\\:ring-blue-500\\/80:focus-visible{--tw-ring-color:color-mix(in oklab,var(--color-blue-500)80%,transparent)}}.focus-visible\\:ring-blue-600:focus-visible{--tw-ring-color:var(--color-blue-600)}.focus-visible\\:ring-ring:focus-visible{--tw-ring-color:var(--color-ring)}.focus-visible\\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus-visible\\:ring-offset-zinc-900:focus-visible{--tw-ring-offset-color:var(--color-zinc-900)}.focus-visible\\:ring-offset-zinc-950:focus-visible{--tw-ring-offset-color:var(--color-zinc-950)}.focus-visible\\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.focus-visible\\:ring-inset:focus-visible{--tw-ring-inset:inset}.active\\:cursor-grabbing:active{cursor:grabbing}.active\\:bg-primary\\/60:active{background-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.active\\:bg-primary\\/60:active{background-color:color-mix(in oklab,var(--color-primary)60%,transparent)}}.disabled\\:pointer-events-none:disabled{pointer-events:none}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:opacity-20:disabled{opacity:.2}.disabled\\:opacity-30:disabled{opacity:.3}.disabled\\:opacity-50:disabled{opacity:.5}.data-\\[disabled\\]\\:pointer-events-none[data-disabled]{pointer-events:none}.data-\\[disabled\\]\\:opacity-50[data-disabled]{opacity:.5}.data-\\[side\\=bottom\\]\\:translate-y-1[data-side=bottom]{--tw-translate-y:calc(var(--spacing)*1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\\[side\\=left\\]\\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\\[side\\=right\\]\\:translate-x-1[data-side=right]{--tw-translate-x:calc(var(--spacing)*1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\\[side\\=top\\]\\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\\[state\\=open\\]\\:border-zinc-800[data-state=open]{border-color:var(--color-zinc-800)}.data-\\[state\\=open\\]\\:bg-zinc-950[data-state=open]{background-color:var(--color-zinc-950)}.data-\\[state\\=open\\]\\:text-zinc-100[data-state=open]{color:var(--color-zinc-100)}@media(min-width:40rem){.sm\\:max-w-\\[280px\\]{max-width:280px}}.\\[\\&_svg\\]\\:shrink-0 svg{flex-shrink:0}.\\[\\&\\>span\\]\\:line-clamp-1>span{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.\\[\\&\\>span\\]\\:flex>span{display:flex}.\\[\\&\\>span\\]\\:items-center>span{align-items:center}.\\[\\&\\>span\\]\\:gap-2>span{gap:calc(var(--spacing)*2)}}:root{--background:oklch(14.1% .005 285.823);--foreground:oklch(98.5% 0 0);--card:oklch(21% .006 285.885);--card-foreground:oklch(98.5% 0 0);--popover:oklch(21% .006 285.885);--popover-foreground:oklch(98.5% 0 0);--primary:oklch(42% .18 266);--primary-foreground:oklch(97% .014 254.604);--secondary:oklch(27.4% .006 286.033);--secondary-foreground:oklch(98.5% 0 0);--muted:oklch(27.4% .006 286.033);--muted-foreground:oklch(70.5% .015 286.067);--accent:oklch(42% .18 266);--accent-foreground:oklch(97% .014 254.604);--destructive:oklch(70.4% .191 22.216);--destructive-foreground:oklch(97% .014 254.604);--border:oklch(100% 0 0/.1);--input:oklch(100% 0 0/.15);--ring:oklch(55.2% .016 285.938);--radius:.5rem;--jp-inspector-label-size:11px;--jp-inspector-field-size:13px;font-family:ui-sans-serif,system-ui,sans-serif}[data-radix-portal]{z-index:9999!important}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@keyframes pulse{50%{opacity:.5}}';class C0 extends b.Component{constructor(t){super(t),this.state={hasError:!1,error:null}}static getDerivedStateFromError(t){return{hasError:!0,error:t}}componentDidCatch(t,r){console.error("[JsonPages Engine]",t,r)}render(){return this.state.hasError&&this.state.error?c.jsxs("div",{style:{minHeight:"100vh",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",padding:24,backgroundColor:"#0f172a",color:"#e2e8f0",fontFamily:"ui-sans-serif, system-ui, sans-serif"},children:[c.jsx("h1",{style:{fontSize:"1.25rem",fontWeight:700,marginBottom:8},children:"JsonPages Engine Error"}),c.jsx("pre",{style:{maxWidth:"100%",overflow:"auto",padding:16,backgroundColor:"rgba(0,0,0,0.3)",borderRadius:8,fontSize:12,marginTop:8},children:this.state.error.message})]}):this.props.children}}function Fr(e){return e.split("/").map(t=>t.trim()).filter(Boolean).join("/")}function Ac(e,t=""){const r=Fr(t);let o=e.replace(/\/+/g,"/");if(r){const s=`/${r}`;o===s?o="/":o.startsWith(`${s}/`)&&(o=o.slice(s.length))}return Fr(o)||"home"}function Ci(e,t){const r=Fr(t)||"home";return e[r]}function Ei(e,t){return rn(e,t)}function ji(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function to(e,t){if(typeof document>"u")return;const r=`link[rel="${e}"]`;let n=document.head.querySelector(r);n||(n=document.createElement("link"),n.rel=e,document.head.appendChild(n)),n.href=t}function Tc(e,t,r){if(typeof document>"u")return;const n="olonjs-webmcp-jsonld";let o=document.getElementById(n);o||(o=document.createElement("script"),o.type="application/ld+json",o.id=n,document.head.appendChild(o)),o.textContent=JSON.stringify({"@context":"https://schema.org","@type":"WebPage",name:e,description:t,url:r})}function zc(e){return`/mcp-manifests/${e}.json`}function Pc(e){return`/schemas/${e}.schema.json`}const Oc=({pageRegistry:e,siteConfig:t,menuConfig:r,themeConfig:n,refDocuments:o,tenantCss:i,adminCss:s,NotFoundComponent:a})=>{const l=Je.useLocation(),d=Ac(l.pathname),u=b.useMemo(()=>It({pages:e,siteConfig:t,themeConfig:n,menuConfig:r,refDocuments:o}),[e,t,n,r,o]),f=Ci(u.pages,d);return b.useEffect(()=>{var h;try{(h=u.themeConfig)!=null&&h.tokens&&Qn.setTheme(u.themeConfig)}catch(p){console.warn("[JsonPages] visitor theme resolution failed",p)}},[u.themeConfig]),b.useEffect(()=>{var w,m;if(!f)return;const h=typeof((w=f.meta)==null?void 0:w.title)=="string"?f.meta.title:d,p=typeof((m=f.meta)==null?void 0:m.description)=="string"?f.meta.description:"";to("mcp-manifest",zc(d)),to("olon-contract",Pc(d)),Tc(h,p,d==="home"?"/":`/${d}`)},[f,d]),f?c.jsx(on,{mode:"tenant",tenantCss:i,adminCss:s,children:c.jsx(Xr,{mode:"visitor",children:c.jsx(fo,{pageConfig:f,siteConfig:u.siteConfig,menuConfig:u.menuConfig})})}):c.jsx(a,{})},Ic=({pageRegistry:e,schemas:t,siteConfig:r,menuConfig:n,themeConfig:o,refDocuments:i,tenantCss:s,adminCss:a,addSectionConfig:l,addableSectionTypes:d,webMcp:u,saveToFile:f,hotSave:h,showLegacySave:p=!0,showHotSave:w=!1})=>{var Ee;const m=Je.useLocation(),v=Ac(m.pathname,"admin"),y=Je.useNavigate(),k=Object.keys(e).sort((z,O)=>z==="home"?-1:O==="home"?1:z.localeCompare(O)),[x,S]=b.useState(null),[C,j]=b.useState(!1),[N,E]=b.useState(!1),[D,R]=b.useState(!1),[I,L]=b.useState(!1),[M,Y]=b.useState(()=>{try{const z=JSON.parse(JSON.stringify(r??{}));return z.identity||(z.identity={title:"Site"}),z.pages||(z.pages=[]),z}catch{return{identity:{title:"Site"},pages:[]}}}),[H,U]=b.useState(null),[B,T]=b.useState(null),[X,re]=b.useState(null),[A,W]=b.useState(null),[q,G]=b.useState(!1),[me,se]=b.useState(400),P=b.useMemo(()=>It({pages:x?{[v]:x}:{},siteConfig:M,themeConfig:o,menuConfig:n,refDocuments:i}),[x,M,o,n,i,v]),J=x?P.pages[v]??x:null,te=b.useRef(x),F=b.useRef(M),ne=360,Q=920;b.useEffect(()=>{te.current=x},[x]),b.useEffect(()=>{F.current=M},[M]);const xe=b.useCallback(z=>{z.preventDefault();const O=z.currentTarget;O.setPointerCapture(z.pointerId);const $=z.clientX,Z=me,ce=be=>{const je=$-be.clientX,it=Math.min(Q,Math.max(ne,Z+je));se(it)},de=()=>{O.releasePointerCapture(z.pointerId),O.removeEventListener("pointermove",ce),O.removeEventListener("pointerup",de),O.removeEventListener("pointercancel",de),document.body.style.cursor="",document.body.style.userSelect=""};document.body.style.cursor="col-resize",document.body.style.userSelect="none",O.addEventListener("pointermove",ce),O.addEventListener("pointerup",de),O.addEventListener("pointercancel",de)},[me]),ge=x?[...M.header?[{id:M.header.id,type:M.header.type,scope:"global",title:"Header"}]:[],...x.sections.map(z=>{var O,$;return{id:z.id,type:z.type,scope:"local",title:((O=z.data)==null?void 0:O.title)??(($=z.data)==null?void 0:$.titleHighlight)}}),...M.footer?[{id:M.footer.id,type:M.footer.type,scope:"global",title:"Footer"}]:[]]:[];b.useEffect(()=>{const z=Ci(e,v);z&&S(JSON.parse(JSON.stringify(z))),U(null),T(null),j(!1)},[v,e]);const ze=b.useCallback(()=>{const z=Ci(e,v);z&&S(JSON.parse(JSON.stringify(z))),U(null),T(null),j(!1)},[v,e]),Oe=b.useCallback((z,O,$)=>{const Z=[...$.sections],ce=Z.findIndex(je=>je.id===z);if(ce===-1||O<0||O>=Z.length)return;const[de]=Z.splice(ce,1),be=O>ce?O-1:O;Z.splice(Math.min(be,Z.length),0,de),S({...$,sections:Z}),j(!0)},[]),Be=b.useCallback(z=>{if(z.origin===window.location.origin){if(z.data.type===ve.SECTION_SELECT){U(z.data.section);const O=z.data.itemPath;Array.isArray(O)&&O.length>0?T(O.map($=>({fieldKey:$.fieldKey,...$.itemId!=null?{itemId:String($.itemId)}:{}}))):T(null)}if(z.data.type===ve.INLINE_FIELD_UPDATE){const O=typeof z.data.sectionId=="string"?z.data.sectionId:null,$=typeof z.data.fieldKey=="string"?z.data.fieldKey:null;O&&$&&(S(Z=>{if(!Z)return Z;const ce={...Z,sections:Z.sections.map(de=>de.id===O?{...de,data:{...de.data,[$]:z.data.value}}:de)};return te.current=ce,ce}),j(!0))}if(z.data.type===ve.ACTIVE_SECTION_CHANGED&&re(z.data.activeSectionId??null),z.data.type==="jsonpages:section-reorder"&&te.current){const{sectionId:O,newIndex:$}=z.data;typeof O=="string"&&typeof $=="number"&&$>=0&&Oe(O,$,te.current)}if(z.data.type===ve.WEBMCP_TOOL_CALL){const O=typeof z.data.requestId=="string"?z.data.requestId:crypto.randomUUID(),$=typeof z.data.toolName=="string"?z.data.toolName:"";_($,z.data.args).then(Z=>{window.postMessage({type:ve.WEBMCP_TOOL_RESULT,requestId:O,toolName:$,result:Z,ok:!0},window.location.origin)}).catch(Z=>{const ce=Z instanceof Error?Z.message:String(Z);window.postMessage({type:ve.WEBMCP_TOOL_RESULT,requestId:O,toolName:$,ok:!1,error:ce},window.location.origin)})}}},[Oe,_]);b.useEffect(()=>(window.addEventListener("message",Be),()=>window.removeEventListener("message",Be)),[Be]),b.useEffect(()=>{if(!(u!=null&&u.enabled))return;eo();const z=te.current;if(!z)return;const $=Array.from(new Set([...F.current.header?[F.current.header.type]:[],...F.current.footer?[F.current.footer.type]:[],...z.sections.map(Z=>Z.type)])).map(Z=>Nc({name:yi(Z),description:`Update a ${Z} section in OlonJS Studio and persist immediately to file.`,inputSchema:Ec(Z),execute:ce=>_(yi(Z),ce)}));return()=>{for(const Z of $)Z()}},[u==null?void 0:u.enabled,v,x,M,_]);const Nt=b.useCallback(z=>{const O=ge.find($=>$.id===z);O&&U({id:O.id,type:O.type,scope:O.scope}),T(null),W(z)},[ge]),Xe=b.useCallback(()=>{W(null)},[]),He=b.useCallback(z=>{S(O=>O&&{...O,sections:O.sections.filter($=>$.id!==z)}),j(!0),U(O=>(O==null?void 0:O.id)===z?null:O)},[]),Ve=z=>{if(!(!H||!x))if(j(!0),H.scope==="global")H.type==="header"&&M.header!=null?Y({...M,header:{...M.header,data:z}}):H.type==="footer"&&M.footer!=null&&Y({...M,footer:{...M.footer,data:z}});else{const O=x.sections.map($=>$.id===H.id?{...$,data:z}:$);S({...x,sections:O})}},mt=b.useCallback((z,O,$,Z)=>{var ce,de;if(j(!0),O==="global")((ce=M.header)==null?void 0:ce.id)===z?Y({...M,header:{...M.header,data:Z}}):((de=M.footer)==null?void 0:de.id)===z&&Y({...M,footer:{...M.footer,data:Z}});else if(x){const be=x.sections.map(je=>je.id===z?{...je,data:Z}:je);S({...x,sections:be})}},[x,M]),ot=b.useCallback(async()=>{const z=document.querySelector("iframe");if(!(z!=null&&z.contentWindow))return;const O=crypto.randomUUID();await new Promise($=>{var de;let Z=!1;const ce=be=>{var je,it;be.origin===window.location.origin&&((je=be.data)==null?void 0:je.type)===ve.INLINE_FLUSHED&&((it=be.data)==null?void 0:it.requestId)===O&&(Z=!0,window.removeEventListener("message",ce),$())};window.addEventListener("message",ce),(de=z.contentWindow)==null||de.postMessage({type:ve.REQUEST_INLINE_FLUSH,requestId:O},"*"),window.setTimeout(()=>{Z||(window.removeEventListener("message",ce),$())},400)})},[]),At=b.useCallback(async(z,O)=>{var de;if(!f)throw new Error("saveToFile is not configured for this tenant.");const $=It({pages:{[v]:z},siteConfig:O,themeConfig:o,menuConfig:n,refDocuments:i}),Z=(de=$.siteConfig.header)==null?void 0:de.data,ce={page:z,site:O,menu:{main:Ei(Z,n.main)},theme:$.themeConfig};await f(ce,v),j(!1),E(!0),typeof window<"u"&&window.setTimeout(()=>E(!1),2500)},[f,v,o,n,i]),Wr=b.useCallback(async(z,O)=>{var Re,Le;if(!f)throw new Error("WebMCP requires saveToFile persistence in Studio mode.");if(!ji(O)||typeof O.sectionId!="string")throw new Error("WebMCP mutation requires a sectionId.");const $=O,Z=typeof $.slug=="string"?Fr($.slug):v;if(Z!==v)throw new Error(`WebMCP slug mismatch. Active Studio slug is "${v}", received "${Z}".`);await ot();const ce=te.current,de=F.current;if(!ce)throw new Error("Studio draft is not ready yet.");const be=t[z];if(!be||typeof be.parse!="function")throw new Error(`Missing schema for section type "${z}".`);const je=$.scope==="global"?"global":"local";let it=ce,Ce=de;if(je==="global"){const Se=((Re=de.header)==null?void 0:Re.id)===$.sectionId?de.header:((Le=de.footer)==null?void 0:Le.id)===$.sectionId?de.footer:null;if(!Se)throw new Error(`Global section "${$.sectionId}" was not found.`);if(Se.type!==z)throw new Error(`Section "${$.sectionId}" is type "${Se.type}", not "${z}".`);const $e=ji(Se.data)?Se.data:{},De=Si($e,$),Ke=be.parse(De),Ue={...Se,data:Ke};Ce={...de,...Se.type==="header"?{header:Ue}:{footer:Ue}},F.current=Ce,Y(Ce)}else{const Se=ce.sections.find(Ue=>Ue.id===$.sectionId);if(!Se)throw new Error(`Local section "${$.sectionId}" was not found in page "${v}".`);if(Se.type!==z)throw new Error(`Section "${$.sectionId}" is type "${Se.type}", not "${z}".`);const $e=ji(Se.data)?Se.data:{},De=Si($e,$),Ke=be.parse(De);it={...ce,sections:ce.sections.map(Ue=>Ue.id===$.sectionId?{...Ue,data:Ke}:Ue)},te.current=it,S(it)}return U({id:$.sectionId,type:z,scope:je}),T(Array.isArray($.itemPath)?$.itemPath:null),j(!0),await At(it,Ce),{content:[{type:"text",text:JSON.stringify({ok:!0,slug:v,sectionId:$.sectionId,sectionType:z,scope:je})}],isError:!1}},[f,v,ot,t,At]);async function _(z,O){const $=Cc(z);if(!$)throw new Error(`Unknown WebMCP tool "${z}".`);return Wr($,O)}const ee=async()=>{var de;if(!f)return;await ot();const z=te.current,O=F.current;if(!z)return;const $=It({pages:{[v]:z},siteConfig:O,themeConfig:o,menuConfig:n,refDocuments:i}),Z=(de=$.siteConfig.header)==null?void 0:de.data,ce={page:z,site:O,menu:{main:Ei(Z,n.main)},theme:$.themeConfig};f(ce,v).then(()=>{j(!1),E(!0),typeof window<"u"&&window.setTimeout(()=>E(!1),2500)}).catch(be=>{console.error("[JsonPages] saveToFile failed",be);const je=be instanceof Error?be.message:String(be);alert(`Save to file failed: ${je}`)})},ie=async()=>{var de;if(!h)return;await ot();const z=te.current,O=F.current;if(!z)return;const $=It({pages:{[v]:z},siteConfig:O,themeConfig:o,menuConfig:n,refDocuments:i}),Z=(de=$.siteConfig.header)==null?void 0:de.data,ce={page:z,site:O,menu:{main:Ei(Z,n.main)},theme:$.themeConfig};L(!0),h(ce,v).then(()=>{j(!1),R(!0),typeof window<"u"&&window.setTimeout(()=>R(!1),2500)}).catch(be=>{console.error("[JsonPages] hotSave failed",be);const je=be instanceof Error?be.message:String(be);alert(`Hot save failed: ${je}`)}).finally(()=>{L(!1)})},fe=z=>{var Z;if(!x)return;const O=((Z=l==null?void 0:l.getDefaultSectionData)==null?void 0:Z.call(l,z))??{},$={id:crypto.randomUUID(),type:z,data:O,settings:void 0};S({...x,sections:[...x.sections,$]}),j(!0),U({id:$.id,type:z,scope:"local"})};if(b.useEffect(()=>{var Z,ce;const z=J??x,O=typeof((Z=z==null?void 0:z.meta)==null?void 0:Z.title)=="string"?z.meta.title:v,$=typeof((ce=z==null?void 0:z.meta)==null?void 0:ce.description)=="string"?z.meta.description:"";to("mcp-manifest",zc(v)),to("olon-contract",Pc(v)),Tc(O,$,`/admin${v==="home"?"":`/${v}`}`)},[x,J,v]),!x)return c.jsx("div",{children:"Loading Studio..."});const Ie=(H==null?void 0:H.scope)==="global"?{sections:[P.siteConfig.header,P.siteConfig.footer].filter(z=>z!=null)}:J??x,ye=[...P.siteConfig.header?[P.siteConfig.header]:[],...((Ee=J??x)==null?void 0:Ee.sections)??[],...P.siteConfig.footer?[P.siteConfig.footer]:[]];return c.jsx(on,{mode:"admin",tenantCss:s,adminCss:a,children:c.jsx(Xr,{mode:"studio",children:c.jsxs("div",{className:"flex flex-col h-screen w-screen bg-background text-foreground overflow-hidden",children:[c.jsxs("div",{className:"flex flex-1 min-h-0 overflow-hidden",children:[c.jsx("main",{className:"flex-1 min-w-0 relative bg-zinc-900/50 overflow-hidden",children:c.jsx(gc,{draft:J??x,globalDraft:P.siteConfig,menuConfig:P.menuConfig,themeConfig:P.themeConfig,slug:v,selectedId:H==null?void 0:H.id,scrollToSectionId:A,onScrollRequested:Xe})}),c.jsxs("div",{className:"flex shrink-0 relative h-full z-10",style:{width:me,minWidth:ne,maxWidth:Q},children:[c.jsx("div",{role:"separator","aria-label":"Resize inspector",className:"absolute left-0 top-0 bottom-0 w-1.5 cursor-col-resize hover:bg-primary/40 active:bg-primary/60 transition-colors shrink-0",style:{zIndex:9999},onPointerDown:xe}),c.jsx(mc,{selectedSection:H,pageData:Ie,allSectionsData:ye,onUpdate:Ve,onUpdateSection:mt,onClose:()=>{U(null),T(null)},expandedItemPath:B,onReorderSection:x?(z,O)=>Oe(z,O,x):void 0,allLayers:ge,activeSectionId:X,onRequestScrollToSection:Nt,onDeleteSection:x?He:void 0,onAddSection:d.length>0?()=>G(!0):void 0,hasChanges:C,onSaveToFile:f!=null?ee:void 0,saveSuccessFeedback:N,onHotSave:h!=null?ie:void 0,hotSaveSuccessFeedback:D,hotSaveInProgress:I,showLegacySave:p,showHotSave:w,onResetToFile:ze,pageSlugs:k,currentSlug:v,onPageChange:k.length>1?z=>{const O=Fr(z);y(O==="home"?"/admin":`/admin/${O}`)}:void 0})]})]}),c.jsx(wc,{open:q,onClose:()=>G(!1),sectionTypes:d,sectionTypeLabels:l==null?void 0:l.sectionTypeLabels,onSelect:fe})]})})})},Dc=({tenantCss:e,adminCss:t})=>c.jsx(on,{mode:"tenant",tenantCss:e,adminCss:t,children:c.jsx(xc,{})});function E0({config:e}){var k,x,S,C,j;const{registry:t={},schemas:r={},pages:n={},siteConfig:o,themeConfig:i,menuConfig:s,refDocuments:a,themeCss:l,addSection:d,NotFoundComponent:u=yc}=e,f=(d==null?void 0:d.addableSectionTypes)??Object.keys(r).filter(N=>N!=="header"&&N!=="footer"),h={saveToFile:(k=e.persistence)==null?void 0:k.saveToFile,hotSave:(x=e.persistence)==null?void 0:x.hotSave,showLegacySave:((S=e.persistence)==null?void 0:S.showLegacySave)??!0,showHotSave:((C=e.persistence)==null?void 0:C.showHotSave)??!1},p=typeof(l==null?void 0:l.tenant)=="string"?l.tenant:"",w=typeof(l==null?void 0:l.admin)=="string"?l.admin:S0,m=b.useMemo(()=>It({pages:n,siteConfig:o,themeConfig:i,menuConfig:s,refDocuments:a}),[n,o,i,s,a]),[v,y]=b.useState(!1);return b.useEffect(()=>{var N,E;try{(N=m.themeConfig)!=null&&N.tokens&&Qn.setTheme(m.themeConfig)}catch(D){console.warn("[JsonPages] setTheme failed",D)}(E=e.webmcp)!=null&&E.enabled&&eo(),y(!0)},[m.themeConfig,(j=e.webmcp)==null?void 0:j.enabled]),v?c.jsx(C0,{children:c.jsx(Zi,{config:{registry:t,schemas:r,tenantId:e.tenantId??"default",assets:e.assets,overlayDisabledSectionTypes:e.overlayDisabledSectionTypes},children:c.jsx(Je.BrowserRouter,{children:c.jsxs(Je.Routes,{children:[c.jsx(Je.Route,{path:"/",element:c.jsx(Oc,{pageRegistry:n,siteConfig:o,menuConfig:s,themeConfig:m.themeConfig,refDocuments:a,tenantCss:p,adminCss:w,NotFoundComponent:u})}),c.jsx(Je.Route,{path:"/*",element:c.jsx(Oc,{pageRegistry:n,siteConfig:o,menuConfig:s,themeConfig:m.themeConfig,refDocuments:a,tenantCss:p,adminCss:w,NotFoundComponent:u})}),c.jsx(Je.Route,{path:"/admin",element:c.jsx(Ic,{pageRegistry:n,schemas:r,siteConfig:o,menuConfig:s,themeConfig:m.themeConfig,refDocuments:a,tenantCss:p,adminCss:w,addSectionConfig:d,addableSectionTypes:f,webMcp:e.webmcp,saveToFile:h.saveToFile,hotSave:h.hotSave,showLegacySave:h.showLegacySave,showHotSave:h.showHotSave})}),c.jsx(Je.Route,{path:"/admin/*",element:c.jsx(Ic,{pageRegistry:n,schemas:r,siteConfig:o,menuConfig:s,themeConfig:m.themeConfig,refDocuments:a,tenantCss:p,adminCss:w,addSectionConfig:d,addableSectionTypes:f,webMcp:e.webmcp,saveToFile:h.saveToFile,hotSave:h.hotSave,showLegacySave:h.showLegacySave,showHotSave:h.showHotSave})}),c.jsx(Je.Route,{path:"/admin/preview",element:c.jsx(Dc,{tenantCss:p,adminCss:w})}),c.jsx(Je.Route,{path:"/admin/preview/*",element:c.jsx(Dc,{tenantCss:p,adminCss:w})}),c.jsx(Je.Route,{path:"*",element:c.jsx(u,{})})]})})})}):c.jsx("div",{style:{minHeight:"100vh",display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"#0f172a",color:"#94a3b8",fontFamily:"ui-sans-serif, system-ui, sans-serif",fontSize:14},children:"Loading..."})}ae.AddSectionLibrary=wc,ae.AdminSidebar=mc,ae.ConfigProvider=Zi,ae.DefaultNotFound=yc,ae.FormFactory=Ir,ae.InputWidgets=ir,ae.JsonPagesEngine=E0,ae.PageRenderer=fo,ae.PreviewEntry=xc,ae.STUDIO_EVENTS=ve,ae.SectionRenderer=hr,ae.StudioProvider=Xr,ae.StudioStage=gc,ae.ThemeLoader=on,ae.applyValueAtSelectionPath=ki,ae.buildWebMcpToolName=yi,ae.cn=oe,ae.createWebMcpToolInputSchema=Ec,ae.ensureWebMcpRuntime=eo,ae.parseWebMcpToolName=Cc,ae.registerWebMcpTool=Nc,ae.resolveAssetUrl=Ul,ae.resolveHeaderMenuItems=rn,ae.resolveRuntimeConfig=It,ae.resolveSectionMenuItems=nn,ae.resolveWebMcpMutationData=Si,ae.shouldRenderSiteGlobalHeader=Ti,ae.themeManager=Qn,ae.useConfig=pr,ae.useStudio=es,Object.defineProperty(ae,Symbol.toStringTag,{value:"Module"})}));
226
+ `)},_m=0,nr=[];function Mm(e){var t=g.useRef([]),r=g.useRef([0,0]),n=g.useRef(),o=g.useState(_m++)[0],i=g.useState(Ja)[0],s=g.useRef(e);g.useEffect(function(){s.current=e},[e]),g.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(o));var m=nm([e.lockRef.current],(e.shards||[]).map(ol),!0).filter(Boolean);return m.forEach(function(v){return v.classList.add("allow-interactivity-".concat(o))}),function(){document.body.classList.remove("block-interactivity-".concat(o)),m.forEach(function(v){return v.classList.remove("allow-interactivity-".concat(o))})}}},[e.inert,e.lockRef.current,e.shards]);var a=g.useCallback(function(m,v){if("touches"in m&&m.touches.length===2||m.type==="wheel"&&m.ctrlKey)return!s.current.allowPinchZoom;var y=Wn(m),k=r.current,x="deltaX"in m?m.deltaX:k[0]-y[0],S="deltaY"in m?m.deltaY:k[1]-y[1],C,j=m.target,N=Math.abs(x)>Math.abs(S)?"h":"v";if("touches"in m&&N==="h"&&j.type==="range")return!1;var E=window.getSelection(),D=E&&E.anchorNode,R=D?D===j||D.contains(j):!1;if(R)return!1;var I=el(N,j);if(!I)return!0;if(I?C=N:(C=N==="v"?"h":"v",I=el(N,j)),!I)return!1;if(!n.current&&"changedTouches"in m&&(x||S)&&(n.current=C),!C)return!0;var L=n.current||C;return Om(L,v,m,L==="h"?x:S)},[]),l=g.useCallback(function(m){var v=m;if(!(!nr.length||nr[nr.length-1]!==i)){var y="deltaY"in v?nl(v):Wn(v),k=t.current.filter(function(C){return C.name===v.type&&(C.target===v.target||v.target===C.shadowParent)&&Im(C.delta,y)})[0];if(k&&k.should){v.cancelable&&v.preventDefault();return}if(!k){var x=(s.current.shards||[]).map(ol).filter(Boolean).filter(function(C){return C.contains(v.target)}),S=x.length>0?a(v,x[0]):!s.current.noIsolation;S&&v.cancelable&&v.preventDefault()}}},[]),d=g.useCallback(function(m,v,y,k){var x={name:m,delta:v,target:y,should:k,shadowParent:Rm(y)};t.current.push(x),setTimeout(function(){t.current=t.current.filter(function(S){return S!==x})},1)},[]),u=g.useCallback(function(m){r.current=Wn(m),n.current=void 0},[]),f=g.useCallback(function(m){d(m.type,nl(m),m.target,a(m,e.lockRef.current))},[]),h=g.useCallback(function(m){d(m.type,Wn(m),m.target,a(m,e.lockRef.current))},[]);g.useEffect(function(){return nr.push(i),e.setCallbacks({onScrollCapture:f,onWheelCapture:f,onTouchMoveCapture:h}),document.addEventListener("wheel",l,rr),document.addEventListener("touchmove",l,rr),document.addEventListener("touchstart",u,rr),function(){nr=nr.filter(function(m){return m!==i}),document.removeEventListener("wheel",l,rr),document.removeEventListener("touchmove",l,rr),document.removeEventListener("touchstart",u,rr)}},[]);var p=e.removeScrollBar,w=e.inert;return g.createElement(g.Fragment,null,w?g.createElement(i,{styles:Dm(o)}):null,p?g.createElement(Em,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function Rm(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}const Lm=fm(Xa,Mm);var ti=g.forwardRef(function(e,t){return g.createElement($n,dt({},e,{ref:t,sideCar:Lm}))});ti.classNames=$n.classNames;var $m=[" ","Enter","ArrowUp","ArrowDown"],Fm=[" ","Enter"],Rt="Select",[Un,Bn,Wm]=ip(Rt),[or]=Ar(Rt,[Wm,Qt]),Hn=Qt(),[Um,Ct]=or(Rt),[Bm,Hm]=or(Rt),il=e=>{const{__scopeSelect:t,children:r,open:n,defaultOpen:o,onOpenChange:i,value:s,defaultValue:a,onValueChange:l,dir:d,name:u,autoComplete:f,disabled:h,required:p,form:w}=e,m=Hn(t),[v,y]=g.useState(null),[k,x]=g.useState(null),[S,C]=g.useState(!1),j=ap(d),[N,E]=Dn({prop:n,defaultProp:o??!1,onChange:i,caller:Rt}),[D,R]=Dn({prop:s,defaultProp:a,onChange:l,caller:Rt}),I=g.useRef(null),L=v?w||!!v.closest("form"):!0,[M,Y]=g.useState(new Set),H=Array.from(M).map(U=>U.props.value).join(";");return c.jsx(Go,{...m,children:c.jsxs(Um,{required:p,scope:t,trigger:v,onTriggerChange:y,valueNode:k,onValueNodeChange:x,valueNodeHasChildren:S,onValueNodeHasChildrenChange:C,contentId:Tr(),value:D,onValueChange:R,open:N,onOpenChange:E,dir:j,triggerPointerDownPosRef:I,disabled:h,children:[c.jsx(Un.Provider,{scope:t,children:c.jsx(Bm,{scope:e.__scopeSelect,onNativeOptionAdd:g.useCallback(U=>{Y(B=>new Set(B).add(U))},[]),onNativeOptionRemove:g.useCallback(U=>{Y(B=>{const T=new Set(B);return T.delete(U),T})},[]),children:r})}),L?c.jsxs(El,{"aria-hidden":!0,required:p,tabIndex:-1,name:u,autoComplete:f,value:D,onChange:U=>R(U.target.value),disabled:h,form:w,children:[D===void 0?c.jsx("option",{value:""}):null,Array.from(M)]},H):null]})})};il.displayName=Rt;var sl="SelectTrigger",al=g.forwardRef((e,t)=>{const{__scopeSelect:r,disabled:n=!1,...o}=e,i=Hn(r),s=Ct(sl,r),a=s.disabled||n,l=ke(t,s.onTriggerChange),d=Bn(r),u=g.useRef("touch"),[f,h,p]=Nl(m=>{const v=d().filter(x=>!x.disabled),y=v.find(x=>x.value===s.value),k=Al(v,m,y);k!==void 0&&s.onValueChange(k.value)}),w=m=>{a||(s.onOpenChange(!0),p()),m&&(s.triggerPointerDownPosRef.current={x:Math.round(m.pageX),y:Math.round(m.pageY)})};return c.jsx(On,{asChild:!0,...i,children:c.jsx(we.button,{type:"button",role:"combobox","aria-controls":s.contentId,"aria-expanded":s.open,"aria-required":s.required,"aria-autocomplete":"none",dir:s.dir,"data-state":s.open?"open":"closed",disabled:a,"data-disabled":a?"":void 0,"data-placeholder":jl(s.value)?"":void 0,...o,ref:l,onClick:pe(o.onClick,m=>{m.currentTarget.focus(),u.current!=="mouse"&&w(m)}),onPointerDown:pe(o.onPointerDown,m=>{u.current=m.pointerType;const v=m.target;v.hasPointerCapture(m.pointerId)&&v.releasePointerCapture(m.pointerId),m.button===0&&m.ctrlKey===!1&&m.pointerType==="mouse"&&(w(m),m.preventDefault())}),onKeyDown:pe(o.onKeyDown,m=>{const v=f.current!=="";!(m.ctrlKey||m.altKey||m.metaKey)&&m.key.length===1&&h(m.key),!(v&&m.key===" ")&&$m.includes(m.key)&&(w(),m.preventDefault())})})})});al.displayName=sl;var ll="SelectValue",cl=g.forwardRef((e,t)=>{const{__scopeSelect:r,className:n,style:o,children:i,placeholder:s="",...a}=e,l=Ct(ll,r),{onValueNodeHasChildrenChange:d}=l,u=i!==void 0,f=ke(t,l.onValueNodeChange);return Me(()=>{d(u)},[d,u]),c.jsx(we.span,{...a,ref:f,style:{pointerEvents:"none"},children:jl(l.value)?c.jsx(c.Fragment,{children:s}):i})});cl.displayName=ll;var Vm="SelectIcon",dl=g.forwardRef((e,t)=>{const{__scopeSelect:r,children:n,...o}=e;return c.jsx(we.span,{"aria-hidden":!0,...o,ref:t,children:n||"▼"})});dl.displayName=Vm;var Km="SelectPortal",ul=e=>c.jsx(In,{asChild:!0,...e});ul.displayName=Km;var Lt="SelectContent",fl=g.forwardRef((e,t)=>{const r=Ct(Lt,e.__scopeSelect),[n,o]=g.useState();if(Me(()=>{o(new DocumentFragment)},[]),!r.open){const i=n;return i?Vr.createPortal(c.jsx(pl,{scope:e.__scopeSelect,children:c.jsx(Un.Slot,{scope:e.__scopeSelect,children:c.jsx("div",{children:e.children})})}),i):null}return c.jsx(hl,{...e,ref:t})});fl.displayName=Lt;var nt=10,[pl,Et]=or(Lt),Gm="SelectContentImpl",Ym=Yt("SelectContent.RemoveScroll"),hl=g.forwardRef((e,t)=>{const{__scopeSelect:r,position:n="item-aligned",onCloseAutoFocus:o,onEscapeKeyDown:i,onPointerDownOutside:s,side:a,sideOffset:l,align:d,alignOffset:u,arrowPadding:f,collisionBoundary:h,collisionPadding:p,sticky:w,hideWhenDetached:m,avoidCollisions:v,...y}=e,k=Ct(Lt,r),[x,S]=g.useState(null),[C,j]=g.useState(null),N=ke(t,P=>S(P)),[E,D]=g.useState(null),[R,I]=g.useState(null),L=Bn(r),[M,Y]=g.useState(!1),H=g.useRef(!1);g.useEffect(()=>{if(x)return Ka(x)},[x]),oa();const U=g.useCallback(P=>{const[J,...te]=L().map(Q=>Q.ref.current),[F]=te.slice(-1),ne=document.activeElement;for(const Q of P)if(Q===ne||(Q==null||Q.scrollIntoView({block:"nearest"}),Q===J&&C&&(C.scrollTop=0),Q===F&&C&&(C.scrollTop=C.scrollHeight),Q==null||Q.focus(),document.activeElement!==ne))return},[L,C]),B=g.useCallback(()=>U([E,x]),[U,E,x]);g.useEffect(()=>{M&&B()},[M,B]);const{onOpenChange:T,triggerPointerDownPosRef:X}=k;g.useEffect(()=>{if(x){let P={x:0,y:0};const J=F=>{var ne,Q;P={x:Math.abs(Math.round(F.pageX)-(((ne=X.current)==null?void 0:ne.x)??0)),y:Math.abs(Math.round(F.pageY)-(((Q=X.current)==null?void 0:Q.y)??0))}},te=F=>{P.x<=10&&P.y<=10?F.preventDefault():x.contains(F.target)||T(!1),document.removeEventListener("pointermove",J),X.current=null};return X.current!==null&&(document.addEventListener("pointermove",J),document.addEventListener("pointerup",te,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",J),document.removeEventListener("pointerup",te,{capture:!0})}}},[x,T,X]),g.useEffect(()=>{const P=()=>T(!1);return window.addEventListener("blur",P),window.addEventListener("resize",P),()=>{window.removeEventListener("blur",P),window.removeEventListener("resize",P)}},[T]);const[re,A]=Nl(P=>{const J=L().filter(ne=>!ne.disabled),te=J.find(ne=>ne.ref.current===document.activeElement),F=Al(J,P,te);F&&setTimeout(()=>F.ref.current.focus())}),W=g.useCallback((P,J,te)=>{const F=!H.current&&!te;(k.value!==void 0&&k.value===J||F)&&(D(P),F&&(H.current=!0))},[k.value]),q=g.useCallback(()=>x==null?void 0:x.focus(),[x]),G=g.useCallback((P,J,te)=>{const F=!H.current&&!te;(k.value!==void 0&&k.value===J||F)&&I(P)},[k.value]),me=n==="popper"?ri:ml,se=me===ri?{side:a,sideOffset:l,align:d,alignOffset:u,arrowPadding:f,collisionBoundary:h,collisionPadding:p,sticky:w,hideWhenDetached:m,avoidCollisions:v}:{};return c.jsx(pl,{scope:r,content:x,viewport:C,onViewportChange:j,itemRefCallback:W,selectedItem:E,onItemLeave:q,itemTextRefCallback:G,focusSelectedItem:B,selectedItemText:R,position:n,isPositioned:M,searchRef:re,children:c.jsx(ti,{as:Ym,allowPinchZoom:!0,children:c.jsx(Io,{asChild:!0,trapped:k.open,onMountAutoFocus:P=>{P.preventDefault()},onUnmountAutoFocus:pe(o,P=>{var J;(J=k.trigger)==null||J.focus({preventScroll:!0}),P.preventDefault()}),children:c.jsx(yn,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:i,onPointerDownOutside:s,onFocusOutside:P=>P.preventDefault(),onDismiss:()=>k.onOpenChange(!1),children:c.jsx(me,{role:"listbox",id:k.contentId,"data-state":k.open?"open":"closed",dir:k.dir,onContextMenu:P=>P.preventDefault(),...y,...se,onPlaced:()=>Y(!0),ref:N,style:{display:"flex",flexDirection:"column",outline:"none",...y.style},onKeyDown:pe(y.onKeyDown,P=>{const J=P.ctrlKey||P.altKey||P.metaKey;if(P.key==="Tab"&&P.preventDefault(),!J&&P.key.length===1&&A(P.key),["ArrowUp","ArrowDown","Home","End"].includes(P.key)){let F=L().filter(ne=>!ne.disabled).map(ne=>ne.ref.current);if(["ArrowUp","End"].includes(P.key)&&(F=F.slice().reverse()),["ArrowUp","ArrowDown"].includes(P.key)){const ne=P.target,Q=F.indexOf(ne);F=F.slice(Q+1)}setTimeout(()=>U(F)),P.preventDefault()}})})})})})})});hl.displayName=Gm;var qm="SelectItemAlignedPosition",ml=g.forwardRef((e,t)=>{const{__scopeSelect:r,onPlaced:n,...o}=e,i=Ct(Lt,r),s=Et(Lt,r),[a,l]=g.useState(null),[d,u]=g.useState(null),f=ke(t,N=>u(N)),h=Bn(r),p=g.useRef(!1),w=g.useRef(!0),{viewport:m,selectedItem:v,selectedItemText:y,focusSelectedItem:k}=s,x=g.useCallback(()=>{if(i.trigger&&i.valueNode&&a&&d&&m&&v&&y){const N=i.trigger.getBoundingClientRect(),E=d.getBoundingClientRect(),D=i.valueNode.getBoundingClientRect(),R=y.getBoundingClientRect();if(i.dir!=="rtl"){const ne=R.left-E.left,Q=D.left-ne,xe=N.left-Q,ge=N.width+xe,ze=Math.max(ge,E.width),Oe=window.innerWidth-nt,Be=Xs(Q,[nt,Math.max(nt,Oe-ze)]);a.style.minWidth=ge+"px",a.style.left=Be+"px"}else{const ne=E.right-R.right,Q=window.innerWidth-D.right-ne,xe=window.innerWidth-N.right-Q,ge=N.width+xe,ze=Math.max(ge,E.width),Oe=window.innerWidth-nt,Be=Xs(Q,[nt,Math.max(nt,Oe-ze)]);a.style.minWidth=ge+"px",a.style.right=Be+"px"}const I=h(),L=window.innerHeight-nt*2,M=m.scrollHeight,Y=window.getComputedStyle(d),H=parseInt(Y.borderTopWidth,10),U=parseInt(Y.paddingTop,10),B=parseInt(Y.borderBottomWidth,10),T=parseInt(Y.paddingBottom,10),X=H+U+M+T+B,re=Math.min(v.offsetHeight*5,X),A=window.getComputedStyle(m),W=parseInt(A.paddingTop,10),q=parseInt(A.paddingBottom,10),G=N.top+N.height/2-nt,me=L-G,se=v.offsetHeight/2,P=v.offsetTop+se,J=H+U+P,te=X-J;if(J<=G){const ne=I.length>0&&v===I[I.length-1].ref.current;a.style.bottom="0px";const Q=d.clientHeight-m.offsetTop-m.offsetHeight,xe=Math.max(me,se+(ne?q:0)+Q+B),ge=J+xe;a.style.height=ge+"px"}else{const ne=I.length>0&&v===I[0].ref.current;a.style.top="0px";const xe=Math.max(G,H+m.offsetTop+(ne?W:0)+se)+te;a.style.height=xe+"px",m.scrollTop=J-G+m.offsetTop}a.style.margin=`${nt}px 0`,a.style.minHeight=re+"px",a.style.maxHeight=L+"px",n==null||n(),requestAnimationFrame(()=>p.current=!0)}},[h,i.trigger,i.valueNode,a,d,m,v,y,i.dir,n]);Me(()=>x(),[x]);const[S,C]=g.useState();Me(()=>{d&&C(window.getComputedStyle(d).zIndex)},[d]);const j=g.useCallback(N=>{N&&w.current===!0&&(x(),k==null||k(),w.current=!1)},[x,k]);return c.jsx(Jm,{scope:r,contentWrapper:a,shouldExpandOnScrollRef:p,onScrollButtonChange:j,children:c.jsx("div",{ref:l,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:S},children:c.jsx(we.div,{...o,ref:f,style:{boxSizing:"border-box",maxHeight:"100%",...o.style}})})})});ml.displayName=qm;var Xm="SelectPopperPosition",ri=g.forwardRef((e,t)=>{const{__scopeSelect:r,align:n="start",collisionPadding:o=nt,...i}=e,s=Hn(r);return c.jsx(Yo,{...s,...i,ref:t,align:n,collisionPadding:o,style:{boxSizing:"border-box",...i.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})});ri.displayName=Xm;var[Jm,ni]=or(Lt,{}),oi="SelectViewport",gl=g.forwardRef((e,t)=>{const{__scopeSelect:r,nonce:n,...o}=e,i=Et(oi,r),s=ni(oi,r),a=ke(t,i.onViewportChange),l=g.useRef(0);return c.jsxs(c.Fragment,{children:[c.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:n}),c.jsx(Un.Slot,{scope:r,children:c.jsx(we.div,{"data-radix-select-viewport":"",role:"presentation",...o,ref:a,style:{position:"relative",flex:1,overflow:"hidden auto",...o.style},onScroll:pe(o.onScroll,d=>{const u=d.currentTarget,{contentWrapper:f,shouldExpandOnScrollRef:h}=s;if(h!=null&&h.current&&f){const p=Math.abs(l.current-u.scrollTop);if(p>0){const w=window.innerHeight-nt*2,m=parseFloat(f.style.minHeight),v=parseFloat(f.style.height),y=Math.max(m,v);if(y<w){const k=y+p,x=Math.min(w,k),S=k-x;f.style.height=x+"px",f.style.bottom==="0px"&&(u.scrollTop=S>0?S:0,f.style.justifyContent="flex-end")}}}l.current=u.scrollTop})})})]})});gl.displayName=oi;var bl="SelectGroup",[Zm,Qm]=or(bl),eg=g.forwardRef((e,t)=>{const{__scopeSelect:r,...n}=e,o=Tr();return c.jsx(Zm,{scope:r,id:o,children:c.jsx(we.div,{role:"group","aria-labelledby":o,...n,ref:t})})});eg.displayName=bl;var vl="SelectLabel",tg=g.forwardRef((e,t)=>{const{__scopeSelect:r,...n}=e,o=Qm(vl,r);return c.jsx(we.div,{id:o.id,...n,ref:t})});tg.displayName=vl;var Vn="SelectItem",[rg,xl]=or(Vn),wl=g.forwardRef((e,t)=>{const{__scopeSelect:r,value:n,disabled:o=!1,textValue:i,...s}=e,a=Ct(Vn,r),l=Et(Vn,r),d=a.value===n,[u,f]=g.useState(i??""),[h,p]=g.useState(!1),w=ke(t,k=>{var x;return(x=l.itemRefCallback)==null?void 0:x.call(l,k,n,o)}),m=Tr(),v=g.useRef("touch"),y=()=>{o||(a.onValueChange(n),a.onOpenChange(!1))};if(n==="")throw new Error("A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return c.jsx(rg,{scope:r,value:n,disabled:o,textId:m,isSelected:d,onItemTextChange:g.useCallback(k=>{f(x=>x||((k==null?void 0:k.textContent)??"").trim())},[]),children:c.jsx(Un.ItemSlot,{scope:r,value:n,disabled:o,textValue:u,children:c.jsx(we.div,{role:"option","aria-labelledby":m,"data-highlighted":h?"":void 0,"aria-selected":d&&h,"data-state":d?"checked":"unchecked","aria-disabled":o||void 0,"data-disabled":o?"":void 0,tabIndex:o?void 0:-1,...s,ref:w,onFocus:pe(s.onFocus,()=>p(!0)),onBlur:pe(s.onBlur,()=>p(!1)),onClick:pe(s.onClick,()=>{v.current!=="mouse"&&y()}),onPointerUp:pe(s.onPointerUp,()=>{v.current==="mouse"&&y()}),onPointerDown:pe(s.onPointerDown,k=>{v.current=k.pointerType}),onPointerMove:pe(s.onPointerMove,k=>{var x;v.current=k.pointerType,o?(x=l.onItemLeave)==null||x.call(l):v.current==="mouse"&&k.currentTarget.focus({preventScroll:!0})}),onPointerLeave:pe(s.onPointerLeave,k=>{var x;k.currentTarget===document.activeElement&&((x=l.onItemLeave)==null||x.call(l))}),onKeyDown:pe(s.onKeyDown,k=>{var S;((S=l.searchRef)==null?void 0:S.current)!==""&&k.key===" "||(Fm.includes(k.key)&&y(),k.key===" "&&k.preventDefault())})})})})});wl.displayName=Vn;var Or="SelectItemText",yl=g.forwardRef((e,t)=>{const{__scopeSelect:r,className:n,style:o,...i}=e,s=Ct(Or,r),a=Et(Or,r),l=xl(Or,r),d=Hm(Or,r),[u,f]=g.useState(null),h=ke(t,y=>f(y),l.onItemTextChange,y=>{var k;return(k=a.itemTextRefCallback)==null?void 0:k.call(a,y,l.value,l.disabled)}),p=u==null?void 0:u.textContent,w=g.useMemo(()=>c.jsx("option",{value:l.value,disabled:l.disabled,children:p},l.value),[l.disabled,l.value,p]),{onNativeOptionAdd:m,onNativeOptionRemove:v}=d;return Me(()=>(m(w),()=>v(w)),[m,v,w]),c.jsxs(c.Fragment,{children:[c.jsx(we.span,{id:l.textId,...i,ref:h}),l.isSelected&&s.valueNode&&!s.valueNodeHasChildren?Vr.createPortal(i.children,s.valueNode):null]})});yl.displayName=Or;var kl="SelectItemIndicator",Sl=g.forwardRef((e,t)=>{const{__scopeSelect:r,...n}=e;return xl(kl,r).isSelected?c.jsx(we.span,{"aria-hidden":!0,...n,ref:t}):null});Sl.displayName=kl;var ii="SelectScrollUpButton",ng=g.forwardRef((e,t)=>{const r=Et(ii,e.__scopeSelect),n=ni(ii,e.__scopeSelect),[o,i]=g.useState(!1),s=ke(t,n.onScrollButtonChange);return Me(()=>{if(r.viewport&&r.isPositioned){let a=function(){const d=l.scrollTop>0;i(d)};const l=r.viewport;return a(),l.addEventListener("scroll",a),()=>l.removeEventListener("scroll",a)}},[r.viewport,r.isPositioned]),o?c.jsx(Cl,{...e,ref:s,onAutoScroll:()=>{const{viewport:a,selectedItem:l}=r;a&&l&&(a.scrollTop=a.scrollTop-l.offsetHeight)}}):null});ng.displayName=ii;var si="SelectScrollDownButton",og=g.forwardRef((e,t)=>{const r=Et(si,e.__scopeSelect),n=ni(si,e.__scopeSelect),[o,i]=g.useState(!1),s=ke(t,n.onScrollButtonChange);return Me(()=>{if(r.viewport&&r.isPositioned){let a=function(){const d=l.scrollHeight-l.clientHeight,u=Math.ceil(l.scrollTop)<d;i(u)};const l=r.viewport;return a(),l.addEventListener("scroll",a),()=>l.removeEventListener("scroll",a)}},[r.viewport,r.isPositioned]),o?c.jsx(Cl,{...e,ref:s,onAutoScroll:()=>{const{viewport:a,selectedItem:l}=r;a&&l&&(a.scrollTop=a.scrollTop+l.offsetHeight)}}):null});og.displayName=si;var Cl=g.forwardRef((e,t)=>{const{__scopeSelect:r,onAutoScroll:n,...o}=e,i=Et("SelectScrollButton",r),s=g.useRef(null),a=Bn(r),l=g.useCallback(()=>{s.current!==null&&(window.clearInterval(s.current),s.current=null)},[]);return g.useEffect(()=>()=>l(),[l]),Me(()=>{var u;const d=a().find(f=>f.ref.current===document.activeElement);(u=d==null?void 0:d.ref.current)==null||u.scrollIntoView({block:"nearest"})},[a]),c.jsx(we.div,{"aria-hidden":!0,...o,ref:t,style:{flexShrink:0,...o.style},onPointerDown:pe(o.onPointerDown,()=>{s.current===null&&(s.current=window.setInterval(n,50))}),onPointerMove:pe(o.onPointerMove,()=>{var d;(d=i.onItemLeave)==null||d.call(i),s.current===null&&(s.current=window.setInterval(n,50))}),onPointerLeave:pe(o.onPointerLeave,()=>{l()})})}),ig="SelectSeparator",sg=g.forwardRef((e,t)=>{const{__scopeSelect:r,...n}=e;return c.jsx(we.div,{"aria-hidden":!0,...n,ref:t})});sg.displayName=ig;var ai="SelectArrow",ag=g.forwardRef((e,t)=>{const{__scopeSelect:r,...n}=e,o=Hn(r),i=Ct(ai,r),s=Et(ai,r);return i.open&&s.position==="popper"?c.jsx(qo,{...o,...n,ref:t}):null});ag.displayName=ai;var lg="SelectBubbleInput",El=g.forwardRef(({__scopeSelect:e,value:t,...r},n)=>{const o=g.useRef(null),i=ke(n,o),s=Jh(t);return g.useEffect(()=>{const a=o.current;if(!a)return;const l=window.HTMLSelectElement.prototype,u=Object.getOwnPropertyDescriptor(l,"value").set;if(s!==t&&u){const f=new Event("change",{bubbles:!0});u.call(a,t),a.dispatchEvent(f)}},[s,t]),c.jsx(we.select,{...r,style:{...Ba,...r.style},ref:i,defaultValue:t})});El.displayName=lg;function jl(e){return e===""||e===void 0}function Nl(e){const t=_t(e),r=g.useRef(""),n=g.useRef(0),o=g.useCallback(s=>{const a=r.current+s;t(a),(function l(d){r.current=d,window.clearTimeout(n.current),d!==""&&(n.current=window.setTimeout(()=>l(""),1e3))})(a)},[t]),i=g.useCallback(()=>{r.current="",window.clearTimeout(n.current)},[]);return g.useEffect(()=>()=>window.clearTimeout(n.current),[]),[r,o,i]}function Al(e,t,r){const o=t.length>1&&Array.from(t).every(d=>d===t[0])?t[0]:t,i=r?e.indexOf(r):-1;let s=cg(e,Math.max(i,0));o.length===1&&(s=s.filter(d=>d!==r));const l=s.find(d=>d.textValue.toLowerCase().startsWith(o.toLowerCase()));return l!==r?l:void 0}function cg(e,t){return e.map((r,n)=>e[(t+n)%e.length])}var dg=il,Tl=al,ug=cl,fg=dl,pg=ul,zl=fl,hg=gl,Pl=wl,mg=yl,gg=Sl;const bg=dg,vg=ug,Ol=g.forwardRef(({className:e,children:t,...r},n)=>c.jsxs(Tl,{ref:n,className:oe("flex h-8 w-full items-center justify-between gap-2 rounded-md border border-zinc-800 bg-black px-3 py-1.5 text-left text-xs font-medium text-white outline-none","hover:bg-zinc-900 focus-visible:ring-2 focus-visible:ring-blue-500/80 focus-visible:ring-inset focus-visible:border-zinc-600","disabled:pointer-events-none disabled:opacity-50 [&>span]:line-clamp-1 [&>span]:flex [&>span]:items-center [&>span]:gap-2",e),style:{boxShadow:"none",WebkitBoxShadow:"none",MozBoxShadow:"none"},...r,children:[t,c.jsx(fg,{asChild:!0,children:c.jsx(Jr,{className:"h-3 w-3 shrink-0 text-zinc-400",strokeWidth:2})})]}));Ol.displayName=Tl.displayName;const Il=g.forwardRef(({className:e,children:t,position:r="popper",...n},o)=>c.jsx(pg,{children:c.jsx(zl,{ref:o,className:oe("relative z-[9999] max-h-96 min-w-[8rem] overflow-hidden rounded-md border border-zinc-800 bg-zinc-950 text-white shadow-lg","data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95","data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",r==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",e),position:r,...n,children:c.jsx(hg,{className:oe("p-1",r==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:t})})}));Il.displayName=zl.displayName;const Dl=g.forwardRef(({className:e,children:t,...r},n)=>c.jsxs(Pl,{ref:n,className:oe("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-xs outline-none","focus:bg-zinc-800 focus:text-white data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...r,children:[c.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:c.jsx(gg,{children:c.jsx(so,{className:"h-3 w-3",strokeWidth:2})})}),c.jsx(mg,{children:t})]}));Dl.displayName=Pl.displayName;const _l=g.createContext(null);function Ml(){const e=g.useContext(_l);if(!e)throw new Error("Dialog components must be used within Dialog");return e}function Rl({open:e,onOpenChange:t,children:r}){const[n,o]=g.useState(!1),i=e!==void 0,s=i?e:n,a=g.useCallback(d=>{i||o(d),t==null||t(d)},[i,t]),l=g.useMemo(()=>({open:s,onOpenChange:a}),[s,a]);return c.jsx(_l.Provider,{value:l,children:r})}function xg({asChild:e,children:t}){const{onOpenChange:r}=Ml(),n=g.Children.only(t);return e&&g.isValidElement(n)?g.cloneElement(n,{onClick:o=>{var i,s;(s=(i=n.props).onClick)==null||s.call(i,o),r(!0)}}):c.jsx("button",{type:"button",onClick:()=>r(!0),children:t})}function Ll({className:e,children:t,preventCloseOnBackdropClick:r,...n}){const{open:o,onOpenChange:i}=Ml();if(g.useEffect(()=>{const a=l=>{l.key==="Escape"&&i(!1)};return o&&(document.addEventListener("keydown",a),document.body.style.overflow="hidden"),()=>{document.removeEventListener("keydown",a),document.body.style.overflow=""}},[o,i]),!o)return null;const s=a=>{a.preventDefault(),a.stopPropagation()};return bt.createPortal(c.jsxs(c.Fragment,{children:[c.jsx("div",{className:"fixed inset-0 z-[9998] bg-black/60","aria-hidden":!0,onClick:()=>!r&&i(!1),onDragOver:s,onDrop:s}),c.jsx("div",{role:"dialog","aria-modal":!0,className:oe("fixed left-1/2 top-1/2 z-[9999] w-[calc(100%-2rem)] max-w-lg -translate-x-1/2 -translate-y-1/2 rounded-lg border border-zinc-700 bg-zinc-900 p-4 shadow-xl",e),onClick:a=>a.stopPropagation(),...n,children:t})]}),document.body)}function $l({className:e,...t}){return c.jsx("div",{className:oe("flex flex-col gap-1.5 pb-4",e),...t})}function wg({className:e,...t}){return c.jsx("div",{className:oe("flex justify-end gap-2 pt-4",e),...t})}function Fl({className:e,...t}){return c.jsx("h2",{className:oe("text-sm font-semibold text-white",e),...t})}function Wl({className:e,...t}){return c.jsx("p",{className:oe("text-xs text-zinc-400",e),...t})}const qe=g.forwardRef(({className:e,variant:t="default",size:r="default",asChild:n=!1,...o},i)=>{const s="inline-flex items-center justify-center gap-1.5 whitespace-nowrap rounded-md font-medium transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:shrink-0 cursor-pointer",a={default:"bg-primary text-primary-foreground shadow-lg shadow-primary/20 hover:bg-primary/90",outline:"border border-zinc-700 bg-zinc-900 text-zinc-200 hover:bg-zinc-800 hover:border-zinc-600",ghost:"text-zinc-500 hover:text-zinc-200 hover:bg-zinc-800",destructive:"bg-destructive/15 text-destructive hover:bg-destructive/25"},l={sm:"h-7 px-2.5 text-[11px]",default:"h-8 px-3 py-1.5 text-xs",lg:"h-9 px-5 text-sm",icon:"h-8 w-8","icon-sm":"h-7 w-7","icon-xs":"h-6 w-6"},d=n?Qf:"button";return c.jsx(d,{ref:i,type:"button",className:oe(s,a[t],l[r],e),...o})});qe.displayName="Button";const yg=["library","upload","url"];function kg({library:e,selectedId:t,onSelect:r}){const[n,o]=b.useState(""),[i,s]=b.useState("all"),a=["all",...new Set(e.flatMap(d=>d.tags??[]))],l=e.filter(d=>{const u=i==="all"||(d.tags??[]).includes(i),f=!n||(d.alt??"").toLowerCase().includes(n.toLowerCase());return u&&f});return c.jsxs("div",{className:"space-y-4",children:[c.jsxs("div",{className:"relative",children:[c.jsx($d,{size:14,className:"absolute left-3 top-1/2 -translate-y-1/2 text-zinc-600 pointer-events-none"}),c.jsx(Ao,{value:n,onChange:d=>o(d.target.value),placeholder:"Cerca immagini...",className:"pl-9 h-8 text-xs bg-zinc-900/50 border-zinc-800"})]}),c.jsx("div",{className:"flex flex-wrap gap-1.5",children:a.map(d=>c.jsx("button",{type:"button",onClick:()=>s(d),className:oe("px-2.5 py-1 rounded text-[10px] font-medium border transition-colors",i===d?"border-blue-500 bg-blue-500/20 text-blue-400":"border-zinc-700 text-zinc-500 hover:border-zinc-600 hover:text-zinc-400"),children:d==="all"?"Tutte":d},d))}),l.length>0?c.jsx("div",{className:"grid grid-cols-3 gap-2.5 max-h-[45vh] overflow-y-auto",children:l.map(d=>{const u=t===d.id;return c.jsxs("button",{type:"button",onClick:()=>r(u?null:d.id),className:oe("group relative aspect-[4/3] rounded-lg overflow-hidden","ring-1 transition-all duration-150",u?"ring-blue-500 ring-2 ring-offset-1 ring-offset-zinc-900":"ring-zinc-800 hover:ring-zinc-600 hover:scale-[1.02]"),children:[c.jsx("img",{src:d.url,alt:d.alt,loading:"lazy",className:oe("w-full h-full object-cover transition-[filter] duration-150",u?"brightness-[0.6]":"brightness-[0.85] group-hover:brightness-100")}),c.jsx("div",{className:oe("absolute inset-x-0 bottom-0 px-2 py-1.5","bg-gradient-to-t from-black/70 to-transparent","opacity-0 group-hover:opacity-100 transition-opacity",u&&"opacity-100"),children:c.jsx("span",{className:"text-[10px] text-white font-medium leading-tight line-clamp-2",children:d.alt})}),u&&c.jsx("div",{className:"absolute top-2 right-2 w-6 h-6 rounded-full bg-blue-600 flex items-center justify-center",children:c.jsx(so,{size:14,className:"text-white"})})]},d.id)})}):c.jsx("div",{className:"text-center py-12 text-zinc-600 text-xs",children:"Nessuna immagine in libreria. Configura assets.assetsManifest nel tenant (es. da public/assets)."})]})}function Sg({preview:e,onPreviewChange:t,onAssetUpload:r}){const[n,o]=b.useState(!1),i=b.useRef(null),s=b.useCallback(async u=>{if(fetch("http://127.0.0.1:7588/ingest/86d71502-47e1-433c-9b6d-5a1390d00813",{method:"POST",headers:{"Content-Type":"application/json","X-Debug-Session-Id":"34bba5"},body:JSON.stringify({sessionId:"34bba5",location:"ImagePickerDialog.tsx:handleFile",message:"handleFile called",data:{fileName:u.name,hasOnAssetUpload:!!r},timestamp:Date.now(),hypothesisId:"H5"})}).catch(()=>{}),!u.type.startsWith("image/"))return;if(r){try{const h=await r(u);fetch("http://127.0.0.1:7588/ingest/86d71502-47e1-433c-9b6d-5a1390d00813",{method:"POST",headers:{"Content-Type":"application/json","X-Debug-Session-Id":"34bba5"},body:JSON.stringify({sessionId:"34bba5",location:"ImagePickerDialog.tsx:handleFile",message:"onAssetUpload resolved",data:{url:h==null?void 0:h.slice(0,50)},timestamp:Date.now(),hypothesisId:"H2,H5"})}).catch(()=>{}),t({name:u.name,size:u.size,dataUrl:h})}catch{const h=new FileReader;h.onload=p=>{var w;t({name:u.name,size:u.size,dataUrl:(w=p.target)==null?void 0:w.result})},h.readAsDataURL(u)}return}const f=new FileReader;f.onload=h=>{var p;t({name:u.name,size:u.size,dataUrl:(p=h.target)==null?void 0:p.result})},f.readAsDataURL(u)},[t,r]),a=b.useCallback(u=>{var h,p;u.preventDefault(),u.stopPropagation(),o(!1);const f=(p=(h=u.dataTransfer)==null?void 0:h.files)==null?void 0:p[0];f&&s(f)},[s]),l=b.useCallback(u=>{u.preventDefault(),u.stopPropagation(),o(!0)},[]),d=b.useCallback(u=>{var h;const f=(h=u.target.files)==null?void 0:h[0];f&&s(f)},[s]);return c.jsxs("div",{onDragOver:l,onDragEnter:l,onDragLeave:u=>{u.preventDefault(),u.stopPropagation(),o(!1)},onDrop:a,onClick:()=>{var u;return!e&&((u=i.current)==null?void 0:u.click())},className:oe("rounded-xl border-2 border-dashed transition-all min-h-[240px]","flex flex-col items-center justify-center overflow-hidden cursor-pointer relative",n?"border-blue-500/50 bg-blue-500/[0.04]":e?"border-zinc-800 bg-transparent cursor-default":"border-zinc-800 bg-white/[0.01] hover:border-zinc-600 hover:bg-white/[0.02]"),children:[e?c.jsxs(c.Fragment,{children:[c.jsx("img",{src:e.dataUrl,alt:"Upload preview",className:"w-full max-h-[320px] object-contain"}),c.jsxs("div",{className:"absolute bottom-0 inset-x-0 bg-gradient-to-t from-black/80 to-transparent p-4 flex items-center justify-between",children:[c.jsxs("div",{children:[c.jsx("p",{className:"text-xs font-medium text-white",children:e.name}),c.jsxs("p",{className:"text-[10px] text-zinc-400",children:[(e.size/1024).toFixed(1)," KB"]})]}),c.jsx(qe,{type:"button",variant:"ghost",className:"text-zinc-400 hover:text-red-400 hover:bg-red-500/10 h-8 w-8 p-0",onClick:u=>{u.stopPropagation(),t(null)},children:c.jsx(Qr,{size:14})})]})]}):c.jsxs(c.Fragment,{children:[c.jsx("div",{className:"w-12 h-12 rounded-xl bg-blue-500/10 flex items-center justify-center text-blue-500 mb-3",children:c.jsx(is,{size:22})}),c.jsx("p",{className:"text-sm font-medium text-white mb-1",children:"Trascina un'immagine qui"}),c.jsx("p",{className:"text-[11px] text-zinc-500 mb-3",children:"oppure clicca per selezionare un file"}),c.jsx("span",{className:"text-[10px] text-zinc-600 bg-white/[0.03] px-3 py-1 rounded",children:"PNG, JPG, WebP — max 5MB"})]}),c.jsx("input",{ref:i,type:"file",accept:"image/*",className:"hidden",onChange:d})]})}function Cg({urlPreview:e,onUrlPreviewChange:t}){const[r,n]=b.useState(""),[o,i]=b.useState(!1),s=()=>{if(r.trim())try{new URL(r),t(r),i(!1)}catch{i(!0),t(null)}};return c.jsxs("div",{className:"space-y-4",children:[c.jsxs("div",{children:[c.jsx(Dt,{className:"block text-[10px] font-bold uppercase tracking-[0.08em] text-zinc-500 mb-1.5",children:"URL immagine"}),c.jsxs("div",{className:"flex gap-2",children:[c.jsx(Ao,{value:r,onChange:a=>{n(a.target.value),i(!1)},onKeyDown:a=>a.key==="Enter"&&s(),placeholder:"https://images.unsplash.com/photo-...",className:oe("h-8 text-xs bg-zinc-900/50 border-zinc-800",o&&"border-red-500/50")}),c.jsx(qe,{type:"button",variant:"outline",onClick:s,className:"shrink-0 h-8",children:"Anteprima"})]}),o&&c.jsx("p",{className:"text-[11px] text-red-400 mt-1.5",children:"URL non valido. Inserisci un URL completo (https://…)"})]}),e?c.jsxs("div",{className:"rounded-lg overflow-hidden ring-1 ring-zinc-800",children:[c.jsx("img",{src:e,alt:"URL preview",className:"w-full max-h-[320px] object-contain bg-black/30",onError:()=>{i(!0),t(null)}}),c.jsxs("div",{className:"px-3.5 py-2.5 bg-white/[0.02] border-t border-zinc-800 flex items-center gap-2",children:[c.jsx(so,{size:14,className:"text-emerald-400"}),c.jsx("span",{className:"text-[11px] text-zinc-500",children:"Immagine caricata correttamente"})]})]}):o?null:c.jsxs("div",{className:"flex flex-col items-center py-12 text-zinc-600",children:[c.jsx(ns,{size:32,className:"mb-3 opacity-40"}),c.jsx("p",{className:"text-xs",children:"Incolla un URL e premi Anteprima per verificare"})]})]})}const Eg=({open:e,onOpenChange:t,onSelect:r})=>{const{assets:n}=pr(),o=(n==null?void 0:n.assetsManifest)??[],[i,s]=b.useState("library"),[a,l]=b.useState(null),[d,u]=b.useState(null),[f,h]=b.useState(null);b.useEffect(()=>{e&&(s("library"),l(null),u(null),h(null))},[e]),b.useEffect(()=>{if(!e||i!=="upload")return;const y=()=>{fetch("http://127.0.0.1:7588/ingest/86d71502-47e1-433c-9b6d-5a1390d00813",{method:"POST",headers:{"Content-Type":"application/json","X-Debug-Session-Id":"34bba5"},body:JSON.stringify({sessionId:"34bba5",location:"ImagePickerDialog.tsx:beforeunload",message:"beforeunload fired",data:{},timestamp:Date.now(),hypothesisId:"H1"})}).catch(()=>{})};return window.addEventListener("beforeunload",y),()=>window.removeEventListener("beforeunload",y)},[e,i]),b.useEffect(()=>{if(!e||i!=="upload")return;const y=x=>{x.preventDefault()},k={capture:!0};return document.addEventListener("dragover",y,k),document.addEventListener("drop",y,k),window.addEventListener("dragover",y,k),window.addEventListener("drop",y,k),()=>{document.removeEventListener("dragover",y,k),document.removeEventListener("drop",y,k),window.removeEventListener("dragover",y,k),window.removeEventListener("drop",y,k)}},[e,i]);const p=i==="library"&&a!=null||i==="upload"&&d!=null||i==="url"&&f!=null,w=()=>{if(i==="library"&&a){const y=o.find(k=>k.id===a);y&&r({url:y.url,alt:y.alt})}else i==="upload"&&d?r({url:d.dataUrl,alt:d.name}):i==="url"&&f&&r({url:f,alt:""});setTimeout(()=>t(!1),0)},m=i==="library"&&a?"1 immagine selezionata":i==="upload"&&d?d.name:i==="url"&&f?"URL pronto":"Nessuna selezione",v=y=>{y.preventDefault(),y.stopPropagation()};return c.jsx(Rl,{open:e,onOpenChange:t,children:c.jsxs(Ll,{className:"max-w-2xl p-0 gap-0 max-h-[90vh] flex flex-col",preventCloseOnBackdropClick:i==="upload",onDragOver:v,onDrop:v,children:[c.jsxs($l,{className:"px-5 py-4 flex flex-row items-start justify-between gap-4 border-b border-zinc-800",children:[c.jsxs("div",{className:"flex items-center gap-3",children:[c.jsx("div",{className:"p-1.5 rounded-lg bg-blue-500/15 text-blue-500",children:c.jsx(Zr,{size:18})}),c.jsxs("div",{children:[c.jsx(Fl,{children:"Image Picker"}),c.jsx(Wl,{children:"Scegli dalla libreria, carica dal disco o inserisci un link"})]})]}),c.jsx("button",{type:"button",onClick:()=>t(!1),className:"p-1.5 rounded text-zinc-500 hover:text-white hover:bg-zinc-800 transition-colors","aria-label":"Chiudi",children:c.jsx(Ut,{size:18})})]}),c.jsx("div",{className:"flex border-b border-zinc-800",children:yg.map(y=>c.jsxs("button",{type:"button",onClick:()=>s(y),className:oe("flex items-center gap-2 px-4 py-3 text-xs font-medium border-b-2 transition-colors",i===y?"border-blue-500 text-blue-400":"border-transparent text-zinc-500 hover:text-zinc-300"),children:[y==="library"&&c.jsx(Zr,{size:14}),y==="upload"&&c.jsx(is,{size:14}),y==="url"&&c.jsx(ns,{size:14}),y==="library"?"Libreria":y==="upload"?"Upload":"URL"]},y))}),c.jsxs("div",{className:"flex-1 overflow-y-auto p-5 min-h-0",children:[i==="library"&&c.jsx(kg,{library:o,selectedId:a,onSelect:l}),i==="upload"&&c.jsx(Sg,{preview:d,onPreviewChange:u,onAssetUpload:n==null?void 0:n.onAssetUpload}),i==="url"&&c.jsx(Cg,{urlPreview:f,onUrlPreviewChange:h})]}),c.jsxs(wg,{className:"px-5 py-4 border-t border-zinc-800 flex-row justify-between",children:[c.jsx("span",{className:"text-[10px] uppercase tracking-[0.05em] text-zinc-600",children:m}),c.jsxs("div",{className:"flex gap-2",children:[c.jsx(qe,{type:"button",variant:"outline",size:"sm",onClick:()=>t(!1),children:"Annulla"}),c.jsx(qe,{type:"button",size:"sm",disabled:!p,onClick:w,className:oe(!p&&"opacity-40"),children:"Inserisci immagine"})]})]})]})})},Ul=(e,t="default")=>{if(e.startsWith("http")||e.startsWith("data:")||e.startsWith("#")||e.startsWith("/assets/"))return e;if(e.startsWith("assets/"))return`/${e}`;if(e.startsWith("/uploaded-assets/"))return e;if(!/\.(jpg|jpeg|png|gif|svg|pdf|webp|mp4|webm|ogg)$/i.test(e))return e.startsWith("/")?e:`/${e}`;const n=e.replace(/^\//,"");return`/assets/${t}/${n}`},jg=({value:e,onChange:t,label:r="IMAGE",className:n})=>{const{tenantId:o="default"}=pr(),[i,s]=b.useState(!1),[a,l]=b.useState(!1),d=!!(e!=null&&e.url),u=e!=null&&e.url?Ul(e.url,o):"",f=p=>{t(p),s(!1)},h=p=>{p.stopPropagation(),t({url:"",alt:""})};return c.jsxs("div",{className:oe("space-y-1.5",n),children:[c.jsx(Dt,{className:"text-[9px] uppercase font-black tracking-widest text-zinc-500",children:r}),d?c.jsxs("div",{role:"button",tabIndex:0,onClick:()=>s(!0),onKeyDown:p=>p.key==="Enter"&&s(!0),onMouseEnter:()=>l(!0),onMouseLeave:()=>l(!1),className:oe("relative rounded-lg overflow-hidden cursor-pointer","ring-1 ring-zinc-800 transition-all",a&&"ring-blue-500/40"),children:[c.jsx("img",{src:u,alt:(e==null?void 0:e.alt)??"",className:"w-full h-40 object-cover block",onError:p=>{p.target.style.display="none"}}),c.jsx("div",{className:oe("absolute inset-0 flex items-center justify-center gap-2 transition-all duration-150",a?"bg-black/50":"bg-black/0"),children:a&&c.jsxs(c.Fragment,{children:[c.jsxs("div",{className:"flex items-center gap-1.5 bg-white/15 backdrop-blur-md rounded-lg px-3.5 py-2 text-white text-xs font-medium",children:[c.jsx(Ld,{size:13}),c.jsx("span",{children:"Cambia"})]}),c.jsx(qe,{type:"button",variant:"ghost",className:"h-8 w-8 p-0 bg-red-500/15 backdrop-blur-md text-red-300 hover:text-red-200 hover:bg-red-500/25",onClick:h,children:c.jsx(Qr,{size:13})})]})}),c.jsx("div",{className:"px-2.5 py-1.5 bg-black/50 text-[10px] text-zinc-500 truncate",children:((e==null?void 0:e.url)??"").length>50?"…"+((e==null?void 0:e.url)??"").slice(-47):(e==null?void 0:e.url)??""})]}):c.jsxs("button",{type:"button",onClick:()=>s(!0),className:oe("w-full rounded-lg border-2 border-dashed border-zinc-800 py-7","flex flex-col items-center gap-2","bg-white/[0.01] transition-all","hover:border-blue-500/30 hover:bg-blue-500/[0.03]","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-blue-500"),children:[c.jsx("div",{className:"w-9 h-9 rounded-lg bg-blue-500/10 flex items-center justify-center text-blue-500",children:c.jsx(Zr,{size:18})}),c.jsx("span",{className:"text-xs text-zinc-400 font-medium",children:"Clicca per aggiungere un'immagine"}),c.jsx("span",{className:"text-[10px] text-zinc-600",children:"Libreria · Upload · URL"})]}),c.jsx(Eg,{open:i,onOpenChange:s,onSelect:f})]})},Bl=[{name:"layers",Icon:lo},{name:"github",Icon:Md},{name:"arrow-right",Icon:zd},{name:"box",Icon:Od},{name:"terminal",Icon:Ud},{name:"chevron-right",Icon:Id},{name:"menu",Icon:Rd},{name:"x",Icon:Ut},{name:"sparkles",Icon:Wd},{name:"zap",Icon:Hd}],Kn=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1 $2").replace(/[_-]+/g," ").replace(/\s+/g," ").trim().replace(/\b\w/g,t=>t.toUpperCase()),ir={"ui:text":({label:e,value:t,onChange:r})=>c.jsxs("div",{className:"grid w-full items-center gap-2 mb-4",children:[c.jsx(Dt,{className:"text-[11px] font-semibold tracking-[0.02em] text-zinc-300",children:Kn(e)}),c.jsx(Ao,{type:"text",className:"h-9 text-[13px] bg-zinc-900/50 border-zinc-700 focus-visible:ring-blue-600",value:t||"",onChange:n=>r(n.target.value)})]}),"ui:textarea":({label:e,value:t,onChange:r})=>c.jsxs("div",{className:"grid w-full gap-2 mb-4",children:[c.jsx(Dt,{className:"text-[11px] font-semibold tracking-[0.02em] text-zinc-300",children:Kn(e)}),c.jsx(Xf,{className:"min-h-[96px] text-[13px] bg-zinc-900/50 border-zinc-700 focus-visible:ring-blue-600 resize-none",value:t||"",onChange:n=>r(n.target.value)})]}),"ui:select":({label:e,value:t,onChange:r,options:n=[]})=>c.jsxs("div",{className:"grid w-full gap-2 mb-4",children:[c.jsx(Dt,{className:"text-[11px] font-semibold tracking-[0.02em] text-zinc-300",children:Kn(e)}),c.jsxs(bg,{value:t||"",onValueChange:r,children:[c.jsx(Ol,{className:"w-full h-9 text-[13px] bg-zinc-900/50 border-zinc-700 focus:ring-blue-600",children:c.jsx(vg,{placeholder:"Select..."})}),c.jsx(Il,{className:"dark",children:n.map(o=>c.jsx(Dl,{value:o,className:"text-[13px]",children:o},o))})]})]}),"ui:checkbox":({label:e,value:t,onChange:r})=>c.jsxs("div",{className:"flex items-center space-x-2 mb-4 p-2.5 rounded border border-zinc-700/60 bg-zinc-900/20",children:[c.jsx(Jf,{id:e,checked:!!t,onCheckedChange:n=>r(n===!0)}),c.jsx(Dt,{htmlFor:e,className:"text-[13px] font-medium cursor-pointer select-none text-zinc-200",children:Kn(e)})]}),"ui:image-picker":({label:e,value:t,onChange:r})=>{const n=t!=null&&typeof t=="object"&&"url"in t?{url:String(t.url??""),alt:String(t.alt??"")}:{url:typeof t=="string"?t:"",alt:""},o=i=>{r(i)};return c.jsx("div",{className:"mb-4",children:c.jsx(jg,{label:e,value:n,onChange:o})})},"ui:icon-picker":({label:e,value:t,onChange:r})=>{const[n,o]=b.useState(!1),i=Bl.find(s=>s.name===(t||""));return c.jsxs("div",{className:"grid w-full gap-1.5 mb-4",children:[c.jsx(Dt,{className:"text-[9px] uppercase font-black tracking-widest text-zinc-500",children:e}),c.jsxs(Rl,{open:n,onOpenChange:o,children:[c.jsx(xg,{asChild:!0,children:c.jsx(qe,{variant:"outline",className:"w-full h-9 rounded-md border border-zinc-800 bg-zinc-900/50 hover:bg-zinc-800/50 flex items-center gap-2 text-left",children:i?c.jsxs(c.Fragment,{children:[c.jsx(i.Icon,{size:16,className:"text-zinc-400 shrink-0"}),c.jsx("span",{className:"text-[11px] text-zinc-300 capitalize truncate",children:i.name})]}):c.jsxs(c.Fragment,{children:[c.jsx(Zr,{size:16,className:"text-zinc-500 shrink-0"}),c.jsx("span",{className:"text-[11px] text-zinc-500",children:"Choose icon..."})]})})}),c.jsxs(Ll,{className:"sm:max-w-[280px] p-4",children:[c.jsxs($l,{children:[c.jsx(Fl,{className:"text-sm",children:"Choose icon"}),c.jsx(Wl,{className:"text-xs",children:"Click an icon to select it."})]}),c.jsx("div",{className:"grid grid-cols-5 gap-2 py-2",children:Bl.map(({name:s,Icon:a})=>c.jsx("button",{type:"button",onClick:()=>{r(s),o(!1)},className:oe("flex items-center justify-center w-10 h-10 rounded-md border transition-colors",t===s?"border-blue-500 bg-blue-500/20 text-blue-400":"border-zinc-800 bg-zinc-900/50 hover:bg-zinc-800/50 text-zinc-400 hover:text-zinc-200"),title:s,children:c.jsx(a,{size:20})},s))})]})]})]})}},li=e=>{if(e instanceof Ne.z.ZodOptional||e instanceof Ne.z.ZodDefault)return li(e._def.innerType);if(e instanceof Ne.z.ZodObject){const t={id:crypto.randomUUID()};for(const r in e.shape)r!=="id"&&(t[r]=li(e.shape[r]));return t}return e instanceof Ne.z.ZodArray?[]:e instanceof Ne.z.ZodString?"":e instanceof Ne.z.ZodNumber?0:e instanceof Ne.z.ZodBoolean?!1:e instanceof Ne.z.ZodEnum?e._def.values[0]:null},Gn=e=>e instanceof Ne.z.ZodOptional||e instanceof Ne.z.ZodDefault||e instanceof Ne.z.ZodNullable?Gn(e._def.innerType):e,Hl=e=>{var n;const t=e;if(typeof e.description=="string"&&e.description.length>0)return e.description;if(typeof((n=t._def)==null?void 0:n.description)=="string"&&t._def.description.length>0)return t._def.description;const r=Gn(e);return r!==e?Hl(r):null},Yn=(e,t)=>e&&!t?"opacity-10":"opacity-100",sr=(e,t)=>e!=null&&t.toLowerCase()===e.toLowerCase(),ci=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1 $2").replace(/[_-]+/g," ").replace(/\s+/g," ").trim().replace(/\b\w/g,t=>t.toUpperCase()),Ir=({schema:e,data:t,onChange:r,keys:n,expandedItemPath:o,onSidebarExpandedItemChange:i})=>{const s=e.shape,a=n!=null?Object.keys(s).filter(f=>n.includes(f)):Object.keys(s),l=o==null?void 0:o[0],d=(l==null?void 0:l.fieldKey)??null,u=d!=null;return c.jsx("div",{className:"space-y-4",children:a.map(f=>{const h=s[f];if(!h)return null;const p=Gn(h),w=Hl(h)||"ui:text",m=t[f];if(w==="ui:editorial-markdown")return null;if(w==="ui:image-picker"&&p instanceof Ne.z.ZodObject){const S=sr(d,f),C=ir["ui:image-picker"]||ir["ui:text"];return c.jsx("div",{className:`transition-opacity duration-200 ${Yn(u,S)}`,...S?{"data-jp-focused-field":f}:{},children:c.jsx(C,{label:f,value:m,onChange:j=>r({...t,[f]:j})})},f)}if(p instanceof Ne.z.ZodObject){const S=m||{},C=sr(d,f);return c.jsxs("div",{className:`group/obj mb-6 p-4 border border-zinc-800 rounded-lg bg-zinc-900/20 hover:border-zinc-700 transition-[border-color,opacity] duration-200 ${Yn(u,C)}`,...C?{"data-jp-focused-field":f}:{},children:[c.jsxs("div",{className:"flex items-center gap-2 mb-4",children:[c.jsx("div",{className:"w-1 h-3 bg-blue-500 rounded-full"}),c.jsx("h4",{className:"text-[11px] font-semibold text-zinc-300 tracking-[0.02em]",children:ci(f)})]}),c.jsx(Ir,{schema:p,data:S,onChange:j=>r({...t,[f]:j}),expandedItemPath:o&&sr(l==null?void 0:l.fieldKey,f)?o.slice(1):void 0})]},f)}if(p instanceof Ne.z.ZodArray){const S=Array.isArray(m)?m:[],C=Gn(p.element),j=(R,I)=>{if(I<0||I>=S.length)return;const L=[...S],[M]=L.splice(R,1);L.splice(I,0,M),r({...t,[f]:L})},N=sr(d,f),D=sr(l==null?void 0:l.fieldKey,f)?l==null?void 0:l.itemId:void 0;return c.jsxs("div",{className:`mb-8 transition-opacity duration-200 ${Yn(u,N)}`,...N?{"data-jp-focused-field":f}:{},children:[c.jsxs("div",{className:"flex items-center justify-between mb-3",children:[c.jsxs("label",{className:"text-[12px] font-semibold text-zinc-300 tracking-[0.01em]",children:[ci(f)," (",S.length,")"]}),c.jsxs("button",{type:"button",onClick:()=>{const R=li(C);r({...t,[f]:[...S,R]})},className:"flex items-center gap-1 px-2.5 py-1.5 bg-blue-600/10 hover:bg-blue-600/20 text-blue-400 rounded text-[11px] font-semibold transition-colors",children:[c.jsx(co,{size:12})," Add Item"]})]}),c.jsx("div",{className:"space-y-2",children:S.map((R,I)=>{const L=R,M=L.id||`legacy-${I}`,Y=(typeof L.title=="string"?L.title:null)||(typeof L.label=="string"?L.label:null)||(typeof L.name=="string"?L.name:null)||(typeof L.content=="string"?L.content:null)||(typeof L.text=="string"?L.text:null)||`${ci(f)} #${I+1}`,H=D,U=String(L.id??M),B=H!=null&&String(H)===U,T=B&&o&&o.length>1?o.slice(1):void 0,X=u&&N&&H!=null&&!B;return c.jsx(Ng,{itemId:U,openItemId:H!=null?String(H):void 0,isFaded:X,index:I,isFirst:I===0,isLast:I===S.length-1,label:Y,onExpandedChange:i?re=>i(re?{fieldKey:f,itemId:U}:null):void 0,onRemove:()=>{const re=S.filter((A,W)=>W!==I);r({...t,[f]:re})},onMoveUp:()=>j(I,I-1),onMoveDown:()=>j(I,I+1),children:C instanceof Ne.z.ZodObject?c.jsx(Ir,{schema:C,data:L||{},expandedItemPath:T,onChange:re=>{const A=[...S];A[I]=re,r({...t,[f]:A})}}):c.jsx("div",{className:"text-[10px] text-red-400",children:"Primitive arrays not supported."})},M)})})]},f)}const v=w in ir?w:"ui:text",y=ir[v]||ir["ui:text"],k=p instanceof Ne.z.ZodEnum?p._def.values:void 0,x=sr(d,f);return c.jsx("div",{className:`transition-opacity duration-200 ${Yn(u,x)}`,...x?{"data-jp-focused-field":f}:{},children:c.jsx(y,{label:f,value:m,options:k,onChange:S=>r({...t,[f]:S})})},f)})})},Ng=({itemId:e,openItemId:t,isFaded:r=!1,label:n,onExpandedChange:o,onRemove:i,onMoveUp:s,onMoveDown:a,isFirst:l,isLast:d,children:u})=>{const f=t!=null&&String(t)===String(e),[h,p]=b.useState(f);b.useEffect(()=>{t!=null&&(f&&!h&&p(!0),!f&&h&&p(!1))},[t,f,h]);const w=()=>{const v=!h;p(v),o==null||o(v)},m=f&&h;return c.jsxs("div",{className:`border border-zinc-800 rounded-md bg-zinc-900/40 overflow-hidden transition-opacity duration-200 ${r?"opacity-10":"opacity-100"}`,...m?{"data-jp-expanded-item":e}:{},children:[c.jsxs("div",{className:"flex items-center justify-between px-3 py-2 bg-zinc-900/60",children:[c.jsx("div",{className:"flex items-center gap-2 flex-1 min-w-0",children:c.jsxs("button",{type:"button",onClick:w,className:"flex items-center gap-2 text-[12px] font-semibold text-zinc-200 tracking-[0.01em] truncate",children:[h?c.jsx(ao,{size:12,className:"shrink-0"}):c.jsx(Jr,{size:12,className:"shrink-0"}),c.jsx("span",{className:"truncate",children:n})]})}),c.jsxs("div",{className:"flex items-center gap-1 shrink-0 ml-2",children:[c.jsx("button",{type:"button",disabled:l,onClick:s,className:"text-zinc-500 hover:text-blue-400 disabled:opacity-20 p-1 transition-colors",children:c.jsx(Pd,{size:12})}),c.jsx("button",{type:"button",disabled:d,onClick:a,className:"text-zinc-500 hover:text-blue-400 disabled:opacity-20 p-1 transition-colors",children:c.jsx(Td,{size:12})}),c.jsx("div",{className:"w-px h-3 bg-zinc-800 mx-1"}),c.jsx("button",{type:"button",onClick:i,className:"text-zinc-600 hover:text-red-500 transition-colors p-1",children:c.jsx(Qr,{size:12})})]})]}),h&&c.jsx("div",{className:"p-4 border-t border-zinc-800 bg-black/20",children:u})]})};function Ag(e,t){return g.useReducer((r,n)=>t[r][n]??r,e)}var Dr=e=>{const{present:t,children:r}=e,n=Tg(t),o=typeof r=="function"?r({present:n.isPresent}):g.Children.only(r),i=ke(n.ref,zg(o));return typeof r=="function"||n.isPresent?g.cloneElement(o,{ref:i}):null};Dr.displayName="Presence";function Tg(e){const[t,r]=g.useState(),n=g.useRef(null),o=g.useRef(e),i=g.useRef("none"),s=e?"mounted":"unmounted",[a,l]=Ag(s,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return g.useEffect(()=>{const d=qn(n.current);i.current=a==="mounted"?d:"none"},[a]),Me(()=>{const d=n.current,u=o.current;if(u!==e){const h=i.current,p=qn(d);e?l("MOUNT"):p==="none"||(d==null?void 0:d.display)==="none"?l("UNMOUNT"):l(u&&h!==p?"ANIMATION_OUT":"UNMOUNT"),o.current=e}},[e,l]),Me(()=>{if(t){let d;const u=t.ownerDocument.defaultView??window,f=p=>{const m=qn(n.current).includes(CSS.escape(p.animationName));if(p.target===t&&m&&(l("ANIMATION_END"),!o.current)){const v=t.style.animationFillMode;t.style.animationFillMode="forwards",d=u.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=v)})}},h=p=>{p.target===t&&(i.current=qn(n.current))};return t.addEventListener("animationstart",h),t.addEventListener("animationcancel",f),t.addEventListener("animationend",f),()=>{u.clearTimeout(d),t.removeEventListener("animationstart",h),t.removeEventListener("animationcancel",f),t.removeEventListener("animationend",f)}}else l("ANIMATION_END")},[t,l]),{isPresent:["mounted","unmountSuspended"].includes(a),ref:g.useCallback(d=>{n.current=d?getComputedStyle(d):null,r(d)},[])}}function qn(e){return(e==null?void 0:e.animationName)||"none"}function zg(e){var n,o;let t=(n=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:n.get,r=t&&"isReactWarning"in t&&t.isReactWarning;return r?e.ref:(t=(o=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:o.get,r=t&&"isReactWarning"in t&&t.isReactWarning,r?e.props.ref:e.props.ref||e.ref)}var[Xn]=Ar("Tooltip",[Qt]),Jn=Qt(),Vl="TooltipProvider",Pg=700,di="tooltip.open",[Og,ui]=Xn(Vl),Kl=e=>{const{__scopeTooltip:t,delayDuration:r=Pg,skipDelayDuration:n=300,disableHoverableContent:o=!1,children:i}=e,s=g.useRef(!0),a=g.useRef(!1),l=g.useRef(0);return g.useEffect(()=>{const d=l.current;return()=>window.clearTimeout(d)},[]),c.jsx(Og,{scope:t,isOpenDelayedRef:s,delayDuration:r,onOpen:g.useCallback(()=>{window.clearTimeout(l.current),s.current=!1},[]),onClose:g.useCallback(()=>{window.clearTimeout(l.current),l.current=window.setTimeout(()=>s.current=!0,n)},[n]),isPointerInTransitRef:a,onPointerInTransitChange:g.useCallback(d=>{a.current=d},[]),disableHoverableContent:o,children:i})};Kl.displayName=Vl;var _r="Tooltip",[Ig,Mr]=Xn(_r),Gl=e=>{const{__scopeTooltip:t,children:r,open:n,defaultOpen:o,onOpenChange:i,disableHoverableContent:s,delayDuration:a}=e,l=ui(_r,e.__scopeTooltip),d=Jn(t),[u,f]=g.useState(null),h=Tr(),p=g.useRef(0),w=s??l.disableHoverableContent,m=a??l.delayDuration,v=g.useRef(!1),[y,k]=Dn({prop:n,defaultProp:o??!1,onChange:N=>{N?(l.onOpen(),document.dispatchEvent(new CustomEvent(di))):l.onClose(),i==null||i(N)},caller:_r}),x=g.useMemo(()=>y?v.current?"delayed-open":"instant-open":"closed",[y]),S=g.useCallback(()=>{window.clearTimeout(p.current),p.current=0,v.current=!1,k(!0)},[k]),C=g.useCallback(()=>{window.clearTimeout(p.current),p.current=0,k(!1)},[k]),j=g.useCallback(()=>{window.clearTimeout(p.current),p.current=window.setTimeout(()=>{v.current=!0,k(!0),p.current=0},m)},[m,k]);return g.useEffect(()=>()=>{p.current&&(window.clearTimeout(p.current),p.current=0)},[]),c.jsx(Go,{...d,children:c.jsx(Ig,{scope:t,contentId:h,open:y,stateAttribute:x,trigger:u,onTriggerChange:f,onTriggerEnter:g.useCallback(()=>{l.isOpenDelayedRef.current?j():S()},[l.isOpenDelayedRef,j,S]),onTriggerLeave:g.useCallback(()=>{w?C():(window.clearTimeout(p.current),p.current=0)},[C,w]),onOpen:S,onClose:C,disableHoverableContent:w,children:r})})};Gl.displayName=_r;var fi="TooltipTrigger",Yl=g.forwardRef((e,t)=>{const{__scopeTooltip:r,...n}=e,o=Mr(fi,r),i=ui(fi,r),s=Jn(r),a=g.useRef(null),l=ke(t,a,o.onTriggerChange),d=g.useRef(!1),u=g.useRef(!1),f=g.useCallback(()=>d.current=!1,[]);return g.useEffect(()=>()=>document.removeEventListener("pointerup",f),[f]),c.jsx(On,{asChild:!0,...s,children:c.jsx(we.button,{"aria-describedby":o.open?o.contentId:void 0,"data-state":o.stateAttribute,...n,ref:l,onPointerMove:pe(e.onPointerMove,h=>{h.pointerType!=="touch"&&!u.current&&!i.isPointerInTransitRef.current&&(o.onTriggerEnter(),u.current=!0)}),onPointerLeave:pe(e.onPointerLeave,()=>{o.onTriggerLeave(),u.current=!1}),onPointerDown:pe(e.onPointerDown,()=>{o.open&&o.onClose(),d.current=!0,document.addEventListener("pointerup",f,{once:!0})}),onFocus:pe(e.onFocus,()=>{d.current||o.onOpen()}),onBlur:pe(e.onBlur,o.onClose),onClick:pe(e.onClick,o.onClose)})})});Yl.displayName=fi;var pi="TooltipPortal",[Dg,_g]=Xn(pi,{forceMount:void 0}),ql=e=>{const{__scopeTooltip:t,forceMount:r,children:n,container:o}=e,i=Mr(pi,t);return c.jsx(Dg,{scope:t,forceMount:r,children:c.jsx(Dr,{present:r||i.open,children:c.jsx(In,{asChild:!0,container:o,children:n})})})};ql.displayName=pi;var ar="TooltipContent",Xl=g.forwardRef((e,t)=>{const r=_g(ar,e.__scopeTooltip),{forceMount:n=r.forceMount,side:o="top",...i}=e,s=Mr(ar,e.__scopeTooltip);return c.jsx(Dr,{present:n||s.open,children:s.disableHoverableContent?c.jsx(Jl,{side:o,...i,ref:t}):c.jsx(Mg,{side:o,...i,ref:t})})}),Mg=g.forwardRef((e,t)=>{const r=Mr(ar,e.__scopeTooltip),n=ui(ar,e.__scopeTooltip),o=g.useRef(null),i=ke(t,o),[s,a]=g.useState(null),{trigger:l,onClose:d}=r,u=o.current,{onPointerInTransitChange:f}=n,h=g.useCallback(()=>{a(null),f(!1)},[f]),p=g.useCallback((w,m)=>{const v=w.currentTarget,y={x:w.clientX,y:w.clientY},k=Wg(y,v.getBoundingClientRect()),x=Ug(y,k),S=Bg(m.getBoundingClientRect()),C=Vg([...x,...S]);a(C),f(!0)},[f]);return g.useEffect(()=>()=>h(),[h]),g.useEffect(()=>{if(l&&u){const w=v=>p(v,u),m=v=>p(v,l);return l.addEventListener("pointerleave",w),u.addEventListener("pointerleave",m),()=>{l.removeEventListener("pointerleave",w),u.removeEventListener("pointerleave",m)}}},[l,u,p,h]),g.useEffect(()=>{if(s){const w=m=>{const v=m.target,y={x:m.clientX,y:m.clientY},k=(l==null?void 0:l.contains(v))||(u==null?void 0:u.contains(v)),x=!Hg(y,s);k?h():x&&(h(),d())};return document.addEventListener("pointermove",w),()=>document.removeEventListener("pointermove",w)}},[l,u,s,d,h]),c.jsx(Jl,{...e,ref:i})}),[Rg,Lg]=Xn(_r,{isInside:!1}),$g=tp("TooltipContent"),Jl=g.forwardRef((e,t)=>{const{__scopeTooltip:r,children:n,"aria-label":o,onEscapeKeyDown:i,onPointerDownOutside:s,...a}=e,l=Mr(ar,r),d=Jn(r),{onClose:u}=l;return g.useEffect(()=>(document.addEventListener(di,u),()=>document.removeEventListener(di,u)),[u]),g.useEffect(()=>{if(l.trigger){const f=h=>{const p=h.target;p!=null&&p.contains(l.trigger)&&u()};return window.addEventListener("scroll",f,{capture:!0}),()=>window.removeEventListener("scroll",f,{capture:!0})}},[l.trigger,u]),c.jsx(yn,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:i,onPointerDownOutside:s,onFocusOutside:f=>f.preventDefault(),onDismiss:u,children:c.jsxs(Yo,{"data-state":l.stateAttribute,...d,...a,ref:t,style:{...a.style,"--radix-tooltip-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-tooltip-content-available-width":"var(--radix-popper-available-width)","--radix-tooltip-content-available-height":"var(--radix-popper-available-height)","--radix-tooltip-trigger-width":"var(--radix-popper-anchor-width)","--radix-tooltip-trigger-height":"var(--radix-popper-anchor-height)"},children:[c.jsx($g,{children:n}),c.jsx(Rg,{scope:r,isInside:!0,children:c.jsx(Qh,{id:l.contentId,role:"tooltip",children:o||n})})]})})});Xl.displayName=ar;var Zl="TooltipArrow",Fg=g.forwardRef((e,t)=>{const{__scopeTooltip:r,...n}=e,o=Jn(r);return Lg(Zl,r).isInside?null:c.jsx(qo,{...o,...n,ref:t})});Fg.displayName=Zl;function Wg(e,t){const r=Math.abs(t.top-e.y),n=Math.abs(t.bottom-e.y),o=Math.abs(t.right-e.x),i=Math.abs(t.left-e.x);switch(Math.min(r,n,o,i)){case i:return"left";case o:return"right";case r:return"top";case n:return"bottom";default:throw new Error("unreachable")}}function Ug(e,t,r=5){const n=[];switch(t){case"top":n.push({x:e.x-r,y:e.y+r},{x:e.x+r,y:e.y+r});break;case"bottom":n.push({x:e.x-r,y:e.y-r},{x:e.x+r,y:e.y-r});break;case"left":n.push({x:e.x+r,y:e.y-r},{x:e.x+r,y:e.y+r});break;case"right":n.push({x:e.x-r,y:e.y-r},{x:e.x-r,y:e.y+r});break}return n}function Bg(e){const{top:t,right:r,bottom:n,left:o}=e;return[{x:o,y:t},{x:r,y:t},{x:r,y:n},{x:o,y:n}]}function Hg(e,t){const{x:r,y:n}=e;let o=!1;for(let i=0,s=t.length-1;i<t.length;s=i++){const a=t[i],l=t[s],d=a.x,u=a.y,f=l.x,h=l.y;u>n!=h>n&&r<(f-d)*(n-u)/(h-u)+d&&(o=!o)}return o}function Vg(e){const t=e.slice();return t.sort((r,n)=>r.x<n.x?-1:r.x>n.x?1:r.y<n.y?-1:r.y>n.y?1:0),Kg(t)}function Kg(e){if(e.length<=1)return e.slice();const t=[];for(let n=0;n<e.length;n++){const o=e[n];for(;t.length>=2;){const i=t[t.length-1],s=t[t.length-2];if((i.x-s.x)*(o.y-s.y)>=(i.y-s.y)*(o.x-s.x))t.pop();else break}t.push(o)}t.pop();const r=[];for(let n=e.length-1;n>=0;n--){const o=e[n];for(;r.length>=2;){const i=r[r.length-1],s=r[r.length-2];if((i.x-s.x)*(o.y-s.y)>=(i.y-s.y)*(o.x-s.x))r.pop();else break}r.push(o)}return r.pop(),t.length===1&&r.length===1&&t[0].x===r[0].x&&t[0].y===r[0].y?t:t.concat(r)}var Gg=Kl,Yg=Gl,qg=Yl,Xg=ql,Ql=Xl;const Jg=Gg,Rr=Yg,Lr=qg,lr=g.forwardRef(({className:e,sideOffset:t=4,...r},n)=>c.jsx(Xg,{children:c.jsx(Ql,{ref:n,sideOffset:t,className:oe("z-50 rounded-md bg-zinc-800 px-2.5 py-1.5 text-[11px] text-zinc-200 shadow-md","animate-in fade-in-0 zoom-in-95",e),...r})}));lr.displayName=Ql.displayName;var Zn="Popover",[ec]=Ar(Zn,[Qt]),$r=Qt(),[Zg,jt]=ec(Zn),tc=e=>{const{__scopePopover:t,children:r,open:n,defaultOpen:o,onOpenChange:i,modal:s=!1}=e,a=$r(t),l=g.useRef(null),[d,u]=g.useState(!1),[f,h]=Dn({prop:n,defaultProp:o??!1,onChange:i,caller:Zn});return c.jsx(Go,{...a,children:c.jsx(Zg,{scope:t,contentId:Tr(),triggerRef:l,open:f,onOpenChange:h,onOpenToggle:g.useCallback(()=>h(p=>!p),[h]),hasCustomAnchor:d,onCustomAnchorAdd:g.useCallback(()=>u(!0),[]),onCustomAnchorRemove:g.useCallback(()=>u(!1),[]),modal:s,children:r})})};tc.displayName=Zn;var rc="PopoverAnchor",Qg=g.forwardRef((e,t)=>{const{__scopePopover:r,...n}=e,o=jt(rc,r),i=$r(r),{onCustomAnchorAdd:s,onCustomAnchorRemove:a}=o;return g.useEffect(()=>(s(),()=>a()),[s,a]),c.jsx(On,{...i,...n,ref:t})});Qg.displayName=rc;var nc="PopoverTrigger",oc=g.forwardRef((e,t)=>{const{__scopePopover:r,...n}=e,o=jt(nc,r),i=$r(r),s=ke(t,o.triggerRef),a=c.jsx(we.button,{type:"button","aria-haspopup":"dialog","aria-expanded":o.open,"aria-controls":o.contentId,"data-state":cc(o.open),...n,ref:s,onClick:pe(e.onClick,o.onOpenToggle)});return o.hasCustomAnchor?a:c.jsx(On,{asChild:!0,...i,children:a})});oc.displayName=nc;var hi="PopoverPortal",[e0,t0]=ec(hi,{forceMount:void 0}),ic=e=>{const{__scopePopover:t,forceMount:r,children:n,container:o}=e,i=jt(hi,t);return c.jsx(e0,{scope:t,forceMount:r,children:c.jsx(Dr,{present:r||i.open,children:c.jsx(In,{asChild:!0,container:o,children:n})})})};ic.displayName=hi;var cr="PopoverContent",sc=g.forwardRef((e,t)=>{const r=t0(cr,e.__scopePopover),{forceMount:n=r.forceMount,...o}=e,i=jt(cr,e.__scopePopover);return c.jsx(Dr,{present:n||i.open,children:i.modal?c.jsx(n0,{...o,ref:t}):c.jsx(o0,{...o,ref:t})})});sc.displayName=cr;var r0=Yt("PopoverContent.RemoveScroll"),n0=g.forwardRef((e,t)=>{const r=jt(cr,e.__scopePopover),n=g.useRef(null),o=ke(t,n),i=g.useRef(!1);return g.useEffect(()=>{const s=n.current;if(s)return Ka(s)},[]),c.jsx(ti,{as:r0,allowPinchZoom:!0,children:c.jsx(ac,{...e,ref:o,trapFocus:r.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:pe(e.onCloseAutoFocus,s=>{var a;s.preventDefault(),i.current||(a=r.triggerRef.current)==null||a.focus()}),onPointerDownOutside:pe(e.onPointerDownOutside,s=>{const a=s.detail.originalEvent,l=a.button===0&&a.ctrlKey===!0,d=a.button===2||l;i.current=d},{checkForDefaultPrevented:!1}),onFocusOutside:pe(e.onFocusOutside,s=>s.preventDefault(),{checkForDefaultPrevented:!1})})})}),o0=g.forwardRef((e,t)=>{const r=jt(cr,e.__scopePopover),n=g.useRef(!1),o=g.useRef(!1);return c.jsx(ac,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:i=>{var s,a;(s=e.onCloseAutoFocus)==null||s.call(e,i),i.defaultPrevented||(n.current||(a=r.triggerRef.current)==null||a.focus(),i.preventDefault()),n.current=!1,o.current=!1},onInteractOutside:i=>{var l,d;(l=e.onInteractOutside)==null||l.call(e,i),i.defaultPrevented||(n.current=!0,i.detail.originalEvent.type==="pointerdown"&&(o.current=!0));const s=i.target;((d=r.triggerRef.current)==null?void 0:d.contains(s))&&i.preventDefault(),i.detail.originalEvent.type==="focusin"&&o.current&&i.preventDefault()}})}),ac=g.forwardRef((e,t)=>{const{__scopePopover:r,trapFocus:n,onOpenAutoFocus:o,onCloseAutoFocus:i,disableOutsidePointerEvents:s,onEscapeKeyDown:a,onPointerDownOutside:l,onFocusOutside:d,onInteractOutside:u,...f}=e,h=jt(cr,r),p=$r(r);return oa(),c.jsx(Io,{asChild:!0,loop:!0,trapped:n,onMountAutoFocus:o,onUnmountAutoFocus:i,children:c.jsx(yn,{asChild:!0,disableOutsidePointerEvents:s,onInteractOutside:u,onEscapeKeyDown:a,onPointerDownOutside:l,onFocusOutside:d,onDismiss:()=>h.onOpenChange(!1),children:c.jsx(Yo,{"data-state":cc(h.open),role:"dialog",id:h.contentId,...p,...f,ref:t,style:{...f.style,"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}})})})}),lc="PopoverClose",i0=g.forwardRef((e,t)=>{const{__scopePopover:r,...n}=e,o=jt(lc,r);return c.jsx(we.button,{type:"button",...n,ref:t,onClick:pe(e.onClick,()=>o.onOpenChange(!1))})});i0.displayName=lc;var s0="PopoverArrow",a0=g.forwardRef((e,t)=>{const{__scopePopover:r,...n}=e,o=$r(r);return c.jsx(qo,{...o,...n,ref:t})});a0.displayName=s0;function cc(e){return e?"open":"closed"}var l0=tc,c0=oc,d0=ic,dc=sc;const u0=l0,f0=c0,uc=g.forwardRef(({className:e,align:t="start",sideOffset:r=6,...n},o)=>c.jsx(d0,{children:c.jsx(dc,{ref:o,align:t,sideOffset:r,className:oe("z-50 w-[var(--radix-popover-trigger-width)] rounded-lg border border-zinc-700/80 bg-zinc-950 p-1 text-white shadow-xl shadow-black/30","data-[state=open]:animate-in data-[state=closed]:animate-out","data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0","data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95","data-[side=bottom]:slide-in-from-top-2",e),...n})}));uc.displayName=dc.displayName;const fc=e=>e?e.charAt(0).toUpperCase()+e.slice(1):"Select page",p0=({pageSlugs:e,currentSlug:t,onPageChange:r,sectionCount:n,onNewPage:o,className:i,currentPageLabel:s})=>{const[a,l]=b.useState(!1),d=s??fc(t),u=f=>{r(f),l(!1)};return c.jsx("div",{className:oe("mx-3 mt-2 mb-2",i),children:c.jsxs(u0,{open:a,onOpenChange:l,children:[c.jsx(f0,{asChild:!0,children:c.jsxs("button",{type:"button","aria-haspopup":"listbox","aria-label":`Select page, current: ${d}`,className:oe("flex items-center gap-2 w-full pl-3 pr-4 py-2 rounded-lg border text-left transition-all duration-150 cursor-pointer","bg-transparent border-zinc-800 text-zinc-400 hover:text-zinc-200 hover:bg-zinc-800/50 hover:border-zinc-700","data-[state=open]:bg-zinc-950 data-[state=open]:border-zinc-800 data-[state=open]:text-zinc-100","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-zinc-950"),children:[c.jsx(_d,{size:14,className:"shrink-0 text-zinc-500","aria-hidden":!0}),c.jsx("span",{className:"text-xs font-medium flex-1 truncate",children:d}),c.jsx(Jr,{size:13,className:"shrink-0 text-zinc-500","aria-hidden":!0})]})}),c.jsxs(uc,{align:"start",sideOffset:4,className:"min-w-[var(--radix-popover-trigger-width)] bg-zinc-950 border-zinc-800 p-1",role:"listbox","aria-label":"Page list",children:[e.map(f=>{const h=f===t,p=fc(f);return c.jsxs("button",{type:"button",role:"option","aria-selected":h,onClick:()=>u(f),className:oe("flex items-center justify-between w-full px-2.5 py-2 rounded-md text-xs transition-colors cursor-pointer",h?"bg-primary/10 text-primary font-semibold":"text-zinc-400 hover:bg-zinc-800 hover:text-zinc-200"),children:[c.jsx("span",{children:p}),n!=null&&c.jsxs("span",{className:"text-[10px] text-zinc-600 tabular-nums","aria-hidden":!0,children:[n,"s"]})]},f)}),o!=null&&c.jsx("div",{className:"border-t border-zinc-800 mt-1 pt-1",children:c.jsxs("button",{type:"button",onClick:()=>{o(),l(!1)},className:"flex items-center gap-1.5 w-full px-2.5 py-2 rounded-md text-[11px] text-zinc-600 hover:text-zinc-300 hover:bg-zinc-800 transition-colors cursor-pointer","aria-label":"New page",children:[c.jsx(co,{size:12,"aria-hidden":!0}),c.jsx("span",{children:"New page"})]})})]})]})})},mi=new Set(["anchorId","paddingTop","paddingBottom","theme","container"]),pc=new Set(["ui:editorial-markdown"]),hc=e=>e instanceof Ne.z.ZodOptional||e instanceof Ne.z.ZodDefault||e instanceof Ne.z.ZodNullable?hc(e._def.innerType):e,gi=e=>{var i;if(!e)return"";const t=e,r=typeof e.description=="string"?e.description:null;if(r)return r;const n=typeof((i=t._def)==null?void 0:i.description)=="string"?t._def.description:null;if(n)return n;const o=hc(e);return o!==e?gi(o):""},bi=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1 $2").replace(/[_-]+/g," ").replace(/\s+/g," ").trim().replace(/\b\w/g,t=>t.toUpperCase()),h0={activationConstraint:{distance:8}},m0={activationConstraint:{delay:200,tolerance:5}};function vi({layer:e,opts:t,dragHandleProps:r}){const{isSelected:n,isActive:o,isDragging:i,canDelete:s,onSelect:a,onOpenSettings:l,onDelete:d}=t,u=!!r;return c.jsxs("div",{className:oe("group flex items-center gap-2 pl-1 pr-2 py-2.5 rounded-lg text-left transition-all duration-200 cursor-pointer border-l-2",n?"bg-primary/[0.08] border-primary":o?"bg-zinc-800/30 border-emerald-500/60":"border-transparent hover:bg-zinc-800/40",i&&"opacity-50 shadow-lg",u?"cursor-grab active:cursor-grabbing":"cursor-default"),children:[u?c.jsx("span",{className:"shrink-0 w-5 flex items-center justify-center opacity-0 group-hover:opacity-100 transition-opacity duration-150 cursor-grab touch-none","aria-label":"Trascina per riordinare",...r,children:c.jsx(rs,{size:12,className:"text-zinc-600"})}):c.jsx("span",{className:"shrink-0 w-5 flex items-center justify-center opacity-0 group-hover:opacity-100 pointer-events-none",children:c.jsx(rs,{size:12,className:"text-zinc-600/50"})}),c.jsxs("button",{type:"button",onClick:a,className:"flex-1 min-w-0 text-left",children:[c.jsxs("div",{className:"flex items-center gap-1.5",children:[c.jsx("span",{className:oe("text-xs font-bold uppercase tracking-[0.06em] truncate",n?"text-primary":"text-zinc-500"),children:e.type}),o&&c.jsx("span",{className:"w-1.5 h-1.5 rounded-full bg-emerald-500 shrink-0","aria-hidden":!0})]}),c.jsx("span",{className:"text-[11px] text-zinc-600 block truncate leading-snug mt-0.5",children:e.title??`${e.type} section`})]}),c.jsxs("div",{className:"flex items-center gap-0.5 opacity-0 group-hover:opacity-100 transition-opacity duration-150",children:[c.jsxs(Rr,{children:[c.jsx(Lr,{asChild:!0,children:c.jsx(qe,{variant:"ghost",size:"icon-xs",className:"text-zinc-600 hover:text-zinc-300",onClick:f=>{f.stopPropagation(),l(f)},children:c.jsx(Fd,{size:12})})}),c.jsx(lr,{children:"Settings"})]}),s&&c.jsxs(Rr,{children:[c.jsx(Lr,{asChild:!0,children:c.jsx(qe,{variant:"ghost",size:"icon-xs",className:"text-zinc-600 hover:text-destructive",onClick:f=>{f.stopPropagation(),d()},children:c.jsx(Qr,{size:12})})}),c.jsx(lr,{children:"Delete section"})]})]})]})}function g0({layer:e,opts:t}){const{attributes:r,listeners:n,setNodeRef:o,transform:i,transition:s,isDragging:a}=Vf({id:e.id,disabled:!t.canReorder}),l={transform:xt.Transform.toString(i),transition:s};return c.jsx("div",{ref:o,style:l,className:oe(a&&"z-10"),children:c.jsx(vi,{layer:e,opts:{...t,isDragging:a},dragHandleProps:t.canReorder?{...r,...n,"aria-roledescription":"elemento trascinabile"}:void 0})})}const mc=({selectedSection:e,pageData:t,allSectionsData:r=[],onUpdate:n,onUpdateSection:o,onClose:i,expandedItemPath:s=null,onReorderSection:a,allLayers:l=[],activeSectionId:d,onRequestScrollToSection:u,onDeleteSection:f,onAddSection:h,hasChanges:p=!1,onSaveToFile:w,onHotSave:m,saveSuccessFeedback:v=!1,hotSaveSuccessFeedback:y=!1,hotSaveInProgress:k=!1,showLegacySave:x=!0,showHotSave:S=!1,onResetToFile:C,showResetToFile:j=!1,pageSlugs:N=[],currentSlug:E="home",onPageChange:D})=>{const{schemas:R}=pr(),[I,L]=b.useState(!0),[M,Y]=b.useState(null),[H,U]=b.useState(null),[B,T]=b.useState(null),[X,re]=b.useState(null),A=b.useRef(null),W=b.useRef(null),q=gu(go(So,h0),go(zs,m0),go(yo,{coordinateGetter:Yf})),G=b.useDeferredValue(e),me=e!=null&&(G==null?void 0:G.id)!==e.id,se=s&&s.length>0?s:B?[B]:null,P=se!=null&&se.length?{fieldKey:se[se.length-1].fieldKey,itemId:se[se.length-1].itemId}:null,J=b.useRef(s);b.useEffect(()=>{J.current!=null&&s==null&&T(null),J.current=s},[s]),b.useEffect(()=>{(e==null?void 0:e.id)!=null&&L(!1)},[e==null?void 0:e.id]);const te=()=>{const _=requestAnimationFrame(()=>{requestAnimationFrame(()=>{const ee=A.current;ee&&ee.scrollTo({top:0,behavior:"smooth"})})});return()=>cancelAnimationFrame(_)},F=b.useRef(I);b.useEffect(()=>{if(I&&!F.current){const _=te();return F.current=I,_}F.current=I},[I]),b.useEffect(()=>{if(!P)return;const _=A.current;if(!_)return;const ee=requestAnimationFrame(()=>{const ie=_.querySelector("[data-jp-expanded-item]")??_.querySelector("[data-jp-focused-field]");ie&&ie.scrollIntoView({behavior:"smooth",block:"start"})});return()=>cancelAnimationFrame(ee)},[P]);const ne=_=>{L(!1),u==null||u(_)},Q=()=>{L(_=>{const ee=!_;return ee&&te(),ee})},xe=(_,ee)=>{ee.stopPropagation(),r.length>0&&o?re(_):(L(!1),u==null||u(_))};b.useEffect(()=>{if(X==null)return;const _=ee=>{ee.key==="Escape"&&re(null)};return window.addEventListener("keydown",_),()=>window.removeEventListener("keydown",_)},[X]);const ge=_=>{M===_?(f==null||f(_),Y(null)):(Y(_),setTimeout(()=>Y(null),3e3))},ze=b.useMemo(()=>l.filter(_=>_.scope==="local").map(_=>_.id),[l]),Oe=!!a&&ze.length>0,Be=_=>{U(_.active.id)},Nt=_=>{U(null);const{active:ee,over:ie}=_;if(!ie||ee.id===ie.id||!a)return;const fe=l.findIndex(Ee=>Ee.id===ee.id),Ie=l.findIndex(Ee=>Ee.id===ie.id);if(fe===-1||Ie===-1)return;const ye=fe<Ie?Ie:Ie-1;a(ee.id,ye)},Xe=e?t.sections.find(_=>_.id===e.id):void 0,He=G?t.sections.find(_=>_.id===G.id):void 0,Ve=G?R[G.type]:void 0,mt=b.useMemo(()=>{if(!Ve)return!1;const _=Ve.shape,ee=Object.keys(_).filter(ie=>!mi.has(ie));return ee.length===0?!1:ee.every(ie=>pc.has(gi(_[ie])))},[Ve]);b.useEffect(()=>{(e==null?void 0:e.id)!=null&&mt&&L(!0)},[e==null?void 0:e.id,mt]);const ot=l.length>0&&(I||!e),At=E?E.charAt(0).toUpperCase()+E.slice(1):"Select page",Wr=b.useMemo(()=>{const _=[];let ee=null;for(const ie of l){const fe=ie.type.toUpperCase(),Ie=ee!==null&&(ee==="HEADER"&&fe!=="HEADER"||ee!=="HEADER"&&ee!=="FOOTER"&&fe==="FOOTER");_.push({layer:ie,showSeparatorAbove:Ie}),ee=fe}return _},[l]);return c.jsx(Jg,{children:c.jsxs("aside",{className:"relative w-full h-full bg-zinc-950 border-l border-zinc-800 flex flex-col shadow-2xl shrink-0 min-w-0 animate-in slide-in-from-right duration-300",children:[c.jsxs("div",{className:"flex items-center justify-between px-4 py-3 border-b border-zinc-800 shrink-0",children:[c.jsxs("div",{className:"min-w-0",children:[c.jsx("h2",{className:"text-sm font-bold text-white",children:"Inspector"}),c.jsx("p",{className:"text-[10px] tracking-[0.06em] text-zinc-600 mt-0.5",children:e?c.jsxs(c.Fragment,{children:[c.jsx("span",{className:"text-primary font-bold",children:e.type}),c.jsx("span",{className:"text-zinc-700 mx-1.5",children:"|"}),c.jsx("span",{className:"uppercase",children:e.scope})]}):c.jsxs("span",{className:"text-zinc-600",children:[At," · ",l.length," sections"]})})]}),c.jsx(qe,{variant:"ghost",size:"icon-sm",onClick:i,"aria-label":"Close Inspector",children:c.jsx(Ut,{size:14})})]}),N.length>0&&D&&c.jsx(p0,{pageSlugs:N,currentSlug:E,onPageChange:D,sectionCount:l.length,currentPageLabel:At}),l.length>0&&c.jsxs("div",{className:"flex items-center gap-2 px-4 py-2 border-t border-zinc-800/50",children:[c.jsxs("button",{type:"button",onClick:Q,className:"flex items-center gap-2 flex-1 cursor-pointer min-w-0 text-left","aria-expanded":ot,"aria-label":ot?"Collapse Page Layers":"Expand Page Layers",children:[c.jsx(lo,{size:14,className:"text-zinc-500 shrink-0"}),c.jsx("span",{className:"text-[11px] font-semibold tracking-[0.04em] text-zinc-400",children:"Page Layers"}),c.jsxs("span",{className:"text-[10px] text-zinc-600",children:["(",l.length,")"]}),c.jsx(ao,{size:13,className:oe("ml-auto text-zinc-600 transition-transform duration-200 shrink-0",!I&&"rotate-180")})]}),h!=null&&c.jsxs(Rr,{children:[c.jsx(Lr,{asChild:!0,children:c.jsx(qe,{variant:"ghost",size:"icon-sm",className:"text-zinc-500 hover:text-primary",onClick:h,children:c.jsx(co,{size:14})})}),c.jsx(lr,{children:"Add section"})]})]}),c.jsx("div",{className:"relative flex-1 min-h-0 min-w-0 flex flex-col overflow-hidden",children:c.jsxs("div",{ref:A,className:"min-h-0 min-w-0 flex-1 overflow-y-auto overflow-x-hidden flex flex-col",role:"region","aria-label":"Inspector content",children:[c.jsx("div",{className:"flex flex-col min-h-0",children:ot&&c.jsxs("div",{className:"py-1",children:[c.jsxs(hf,{sensors:q,collisionDetection:xu,modifiers:[Of],onDragStart:Be,onDragEnd:Nt,accessibility:{announcements:{onDragStart:()=>"Sezione presa in carico. Usa i tasti freccia per spostare, Spazio per rilasciare.",onDragOver:({over:_})=>_?`Posizione ${ze.indexOf(String(_.id))+1} di ${ze.length}.`:void 0,onDragEnd:({over:_})=>_?"Sezione rilasciata in nuova posizione.":"Riposizionamento annullato.",onDragCancel:()=>"Riposizionamento annullato."}},children:[c.jsx(Lf,{items:ze,strategy:Mf,children:c.jsx("div",{className:"px-2 space-y-0.5",children:Wr.map(({layer:_,showSeparatorAbove:ee})=>c.jsxs(b.Fragment,{children:[ee&&c.jsx("div",{className:"mx-3 border-t border-zinc-800/60 my-1"}),_.scope==="local"&&Oe?c.jsx(g0,{layer:_,opts:{isSelected:(e==null?void 0:e.id)===_.id,isActive:d===_.id,isDragging:!1,canReorder:!0,canDelete:!!f,deleteConfirm:M===_.id,onSelect:()=>ne(_.id),onDelete:()=>ge(_.id),onOpenSettings:ie=>xe(_.id,ie)}}):c.jsx("div",{children:c.jsx(vi,{layer:_,opts:{isSelected:(e==null?void 0:e.id)===_.id,isActive:d===_.id,isDragging:!1,canDelete:_.scope==="local"&&!!f,deleteConfirm:M===_.id,onSelect:()=>ne(_.id),onDelete:()=>ge(_.id),onOpenSettings:ie=>xe(_.id,ie)}})})]},_.id))})}),c.jsx(Pf,{dropAnimation:{duration:200,easing:"cubic-bezier(0.18, 0.67, 0.6, 1.22)"},children:H?(()=>{const _=l.find(ee=>ee.id===H);return _?c.jsx("div",{className:"px-2 w-full max-w-[var(--inspector-width,280px)]",children:c.jsx(vi,{layer:_,opts:{isSelected:!1,isActive:!1,isDragging:!0,canDelete:!1,deleteConfirm:!1,onSelect:()=>{},onDelete:()=>{},onOpenSettings:()=>{}},dragHandleProps:{"aria-hidden":!0}})}):null})():null})]}),M&&c.jsxs("div",{className:"flex items-center gap-2 py-2 px-3 mt-1 mx-2 rounded-md bg-amber-500/10 border border-amber-500/30",children:[c.jsx(Dd,{size:12,className:"text-amber-500 shrink-0"}),c.jsx("p",{className:"text-[10px] text-amber-500 font-medium",children:"Click delete again to confirm"})]})]})}),P&&Xe&&(()=>{const _=Xe.data||{};let ee;if(se&&se.length>0){let ie=_;for(const ye of se){const Ee=ie==null?void 0:ie[ye.fieldKey];ye.itemId!=null&&Array.isArray(Ee)?ie=Ee.find(O=>String(O==null?void 0:O.id)===String(ye.itemId))??null:ie=Ee}const fe=ie||{},Ie=P.fieldKey;ee=(typeof fe.name=="string"?fe.name:null)??(typeof fe.title=="string"?fe.title:null)??(typeof fe.label=="string"?fe.label:null)??bi(Ie)}else{const ie=P.fieldKey;if(P.itemId!=null){const ye=(Array.isArray(_[ie])?_[ie]:[]).find(Ee=>String(Ee==null?void 0:Ee.id)===String(P.itemId))||{};ee=(typeof ye.name=="string"?ye.name:null)??(typeof ye.title=="string"?ye.title:null)??(typeof ye.label=="string"?ye.label:null)??bi(ie)}else ee=bi(ie)}return c.jsxs("div",{className:"px-4 py-2 border-b border-zinc-800 bg-zinc-900/50",children:[c.jsx("p",{className:"text-[10px] font-bold uppercase tracking-widest text-zinc-500",children:"Editing"}),c.jsx("p",{className:"text-xs font-medium text-white truncate mt-0.5",children:ee})]})})(),c.jsx("div",{className:"flex-1 p-4",onFocusCapture:()=>e!=null&&L(!1),children:e?me?c.jsxs("div",{className:"space-y-4 animate-pulse",role:"status","aria-label":"Loading form",children:[c.jsx("div",{className:"h-4 w-3/4 rounded bg-zinc-800"}),c.jsx("div",{className:"h-10 rounded bg-zinc-800/80"}),c.jsx("div",{className:"h-10 rounded bg-zinc-800/80"}),c.jsx("div",{className:"h-20 rounded bg-zinc-800/80"}),c.jsx("div",{className:"h-10 rounded bg-zinc-800/60"})]}):Ve?(()=>{const ee=Object.keys(Ve.shape).filter(fe=>!mi.has(fe)&&!pc.has(gi(Ve.shape[fe]))),ie=(He==null?void 0:He.data)||{};return ee.length===0?c.jsx("p",{className:"text-xs text-zinc-500",children:"Inline editorial section: edit content directly on the canvas."}):c.jsx(Ir,{schema:Ve,data:ie,onChange:fe=>n(fe),keys:ee,expandedItemPath:se,onSidebarExpandedItemChange:T})})():c.jsxs("div",{className:"text-xs text-red-400 p-4 border border-dashed border-red-900/30 rounded bg-red-900/10",children:["No schema found for ",(G==null?void 0:G.type)??e.type]}):c.jsx("p",{className:"text-xs text-zinc-600 text-center py-10",children:"Select a layer above or on the stage to edit."})})]})}),c.jsx("div",{className:"px-4 py-2.5 border-t border-zinc-800 bg-zinc-900/50 flex items-center justify-between gap-3 opacity-100 shrink-0",children:(x&&w!=null||S&&m!=null||C!=null)&&c.jsxs(c.Fragment,{children:[c.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[c.jsx("div",{className:oe("w-2 h-2 rounded-full transition-colors duration-300 shrink-0",p?"bg-amber-500 shadow-[0_0_8px_rgba(245,158,11,0.5)]":"bg-emerald-500")}),c.jsx("span",{className:oe("text-sm font-medium transition-colors duration-300 truncate",v||y?"text-emerald-400":p?"text-amber-500":"text-zinc-500"),children:v||y?"Saved":p?"Unsaved Changes":"All Changes Saved"})]}),x&&w!=null&&c.jsxs(Rr,{children:[c.jsx(Lr,{asChild:!0,children:c.jsxs(qe,{size:"default",disabled:!p,className:"h-9 min-w-[156px] px-5 text-sm gap-2 ml-auto",onClick:_=>{_.preventDefault(),_.stopPropagation(),w()},children:[c.jsx(os,{size:14}),c.jsx("span",{children:"Save"})]})}),c.jsx(lr,{children:"Save to file"})]}),S&&m!=null&&c.jsxs(Rr,{children:[c.jsx(Lr,{asChild:!0,children:c.jsxs(qe,{size:"default",disabled:!p||k,className:"h-9 min-w-[156px] px-5 text-sm gap-2 ml-auto",onClick:_=>{_.preventDefault(),_.stopPropagation(),m()},children:[c.jsx(os,{size:14}),c.jsx("span",{children:k?"Saving...":"Hot Save"})]})}),c.jsx(lr,{children:"Hot save to edge"})]}),C!=null&&j&&c.jsx("button",{type:"button",onClick:C,className:"shrink-0 flex items-center gap-1.5 px-2 py-1 rounded text-[11px] font-medium transition-all border border-zinc-700 bg-zinc-900 text-zinc-400 hover:bg-zinc-800 hover:border-zinc-600 hover:text-zinc-300",title:"Ripristina la pagina dal file (elimina le modifiche in memoria)",children:c.jsx("span",{children:"Ripristina da file"})})]})}),X!=null&&r.length>0&&o!=null&&(()=>{const _=r.find(O=>O.id===X),ee=l.find(O=>O.id===X);if(!_)return null;const ie=(ee==null?void 0:ee.scope)==="global"?"global":"local",fe=_.type,Ie=R[fe],Ee=(Ie?Object.keys(Ie.shape):[]).filter(O=>mi.has(O)),z=_.data??{};return Ee.length===0?c.jsx("div",{className:"fixed inset-0 z-[100] flex items-center justify-center bg-black/60 p-4",role:"dialog","aria-modal":"true","aria-labelledby":"section-settings-modal-title",onClick:()=>re(null),children:c.jsxs("div",{ref:W,className:"relative rounded-lg border border-zinc-700 bg-zinc-900 shadow-xl max-w-md w-full overflow-hidden",onClick:O=>O.stopPropagation(),children:[c.jsxs("div",{className:"flex items-center justify-between px-4 py-3 border-b border-zinc-800",children:[c.jsxs("h2",{id:"section-settings-modal-title",className:"text-sm font-bold text-white",children:["Settings — ",fe]}),c.jsx("button",{type:"button",onClick:()=>re(null),className:"p-1.5 rounded text-zinc-500 hover:text-white hover:bg-zinc-800 transition-colors","aria-label":"Close settings",children:c.jsx(Ut,{size:18})})]}),c.jsx("div",{className:"p-4",children:c.jsx("p",{className:"text-xs text-zinc-500",children:"No settings fields for this section."})})]})}):c.jsx("div",{className:"fixed inset-0 z-[100] flex items-center justify-center bg-black/60 p-4",role:"dialog","aria-modal":"true","aria-labelledby":"section-settings-modal-title",onClick:O=>O.target===O.currentTarget&&re(null),children:c.jsxs("div",{ref:W,className:"relative rounded-lg border border-zinc-700 bg-zinc-900 shadow-xl max-w-md w-full max-h-[85vh] flex flex-col overflow-hidden",onClick:O=>O.stopPropagation(),children:[c.jsxs("div",{className:"flex items-center justify-between px-4 py-3 border-b border-zinc-800 shrink-0",children:[c.jsxs("h2",{id:"section-settings-modal-title",className:"text-sm font-bold text-white",children:["Settings — ",fe]}),c.jsx("button",{type:"button",onClick:()=>re(null),className:"p-1.5 rounded text-zinc-500 hover:text-white hover:bg-zinc-800 transition-colors","aria-label":"Close settings (Escape)",children:c.jsx(Ut,{size:18})})]}),c.jsx("div",{className:"flex-1 overflow-y-auto p-4 custom-scrollbar",children:c.jsx(Ir,{schema:Ie,data:z,onChange:O=>{const $={..._.data,...O};o(X,ie,fe,$)},keys:Ee})})]})})})()]})})},gc=({draft:e,globalDraft:t,menuConfig:r,themeConfig:n,slug:o,selectedId:i,scrollToSectionId:s,onScrollRequested:a})=>{const l=b.useRef(null),d=b.useCallback(()=>{var u;(u=l.current)!=null&&u.contentWindow&&l.current.contentWindow.postMessage({type:ve.UPDATE_DRAFTS,draft:e,globalDraft:t,menuConfig:r,themeConfig:n},"*")},[e,t,r,n]);return b.useEffect(()=>{d()},[d]),b.useEffect(()=>{const u=f=>{f.data.type===ve.STAGE_READY&&d()};return window.addEventListener("message",u),()=>window.removeEventListener("message",u)},[d]),b.useEffect(()=>{var u;(u=l.current)!=null&&u.contentWindow&&l.current.contentWindow.postMessage({type:ve.SYNC_SELECTION,selectedId:i},"*")},[i]),b.useEffect(()=>{var u;!s||!((u=l.current)!=null&&u.contentWindow)||(l.current.contentWindow.postMessage({type:ve.REQUEST_SCROLL_TO_SECTION,sectionId:s},"*"),a==null||a())},[s,a]),c.jsx("div",{className:"w-full h-full bg-background overflow-hidden",children:c.jsx("iframe",{ref:l,src:`/admin/preview/${o}`,className:"w-full h-full border-none",title:"JsonPages Stage"})})},xi=new Set;function b0(e){return e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").replace(/[_\s]+/g,"-").toLowerCase()}function bc(e,t=[],r={}){return Object.entries(e).forEach(([n,o])=>{const i=[...t,b0(n)];if(typeof o=="string"||typeof o=="number"){r[`--theme-${i.join("-")}`]=String(o);return}o&&typeof o=="object"&&!Array.isArray(o)&&bc(o,i,r)}),r}function We(e,t,r,n){n&&(e[t]=`var(${r})`)}function v0(e){const t=bc(e.tokens),r={...t};return We(r,"--theme-primary","--theme-colors-primary",t["--theme-colors-primary"]),We(r,"--theme-secondary","--theme-colors-secondary",t["--theme-colors-secondary"]),We(r,"--theme-accent","--theme-colors-accent",t["--theme-colors-accent"]),We(r,"--theme-background","--theme-colors-background",t["--theme-colors-background"]),We(r,"--theme-surface","--theme-colors-surface",t["--theme-colors-surface"]),We(r,"--theme-surface-alt","--theme-colors-surface-alt",t["--theme-colors-surface-alt"]),We(r,"--theme-text","--theme-colors-text",t["--theme-colors-text"]),We(r,"--theme-text-muted","--theme-colors-text-muted",t["--theme-colors-text-muted"]),We(r,"--theme-border","--theme-colors-border",t["--theme-colors-border"]),We(r,"--theme-font-primary","--theme-typography-font-family-primary",t["--theme-typography-font-family-primary"]),We(r,"--theme-font-mono","--theme-typography-font-family-mono",t["--theme-typography-font-family-mono"]),We(r,"--theme-font-display","--theme-typography-font-family-display",t["--theme-typography-font-family-display"]),We(r,"--theme-radius-sm","--theme-border-radius-sm",t["--theme-border-radius-sm"]),We(r,"--theme-radius-md","--theme-border-radius-md",t["--theme-border-radius-md"]),We(r,"--theme-radius-lg","--theme-border-radius-lg",t["--theme-border-radius-lg"]),r}const Qn={setTheme:e=>{const t=document.documentElement,r=v0(e);xi.forEach(n=>{t.style.removeProperty(n)}),xi.clear(),Object.entries(r).forEach(([n,o])=>{t.style.setProperty(n,o),xi.add(n)})}};function x0(e,t){if(!t)return e;const r=e[e.length-1];return r&&r.itemId==null&&r.fieldKey===t?e:[...e,{fieldKey:t}]}function vc(e,t){var i,s,a;const r=[];let n=null,o=e;for(;o&&o!==t;){const l=(i=o.getAttribute)==null?void 0:i.call(o,"data-jp-item-id"),d=(s=o.getAttribute)==null?void 0:s.call(o,"data-jp-item-field");if(l&&d&&r.push({fieldKey:d,itemId:l}),n==null){const u=(a=o.getAttribute)==null?void 0:a.call(o,"data-jp-field");u&&(n=u)}o=o.parentElement}return r.reverse(),x0(r,n)}const w0='[data-jp-ignore-select="true"],[data-jp-interactive="true"],.ProseMirror,[contenteditable="true"],button,input,textarea,select,[role="button"],[role="menuitem"]',y0="[data-jp-field],[data-jp-item-id],[data-jp-item-field]",xc=()=>{var h;const[e,t]=b.useState(null),[r,n]=b.useState(null),[o,i]=b.useState({main:[]}),[s,a]=b.useState(null),[l,d]=b.useState(null);if(b.useEffect(()=>{const p=w=>{var m;if(!(w.origin!==window.location.origin||w.source!==window.parent)&&(w.data.type===ve.UPDATE_DRAFTS&&(t(w.data.draft),n(w.data.globalDraft),(m=w.data.menuConfig)!=null&&m.main&&i({main:w.data.menuConfig.main}),w.data.themeConfig&&Qn.setTheme(w.data.themeConfig)),w.data.type===ve.SYNC_SELECTION&&a(w.data.selectedId),w.data.type===ve.REQUEST_SCROLL_TO_SECTION&&d(w.data.sectionId??null),w.data.type===ve.REQUEST_INLINE_FLUSH)){const v=typeof w.data.requestId=="string"?w.data.requestId:null;window.dispatchEvent(new CustomEvent(ve.REQUEST_INLINE_FLUSH,{detail:{requestId:v}})),setTimeout(()=>{window.parent.postMessage({type:ve.INLINE_FLUSHED,requestId:v},window.location.origin)},0)}};return window.addEventListener("message",p),window.parent.postMessage({type:ve.STAGE_READY},"*"),()=>window.removeEventListener("message",p)},[]),b.useEffect(()=>{const p=v=>!!v.closest(y0),w=v=>!!(v.closest('[data-jp-ignore-select="true"]')||v.closest(w0)&&!p(v)||v.closest("a[href]")&&!p(v)),m=v=>{var M,Y,H;const y=v.target;if(w(y)){y.closest("a[href]")&&v.preventDefault();return}const k=v.clientX,x=v.clientY;let S=null,C=y;for(;C&&C!==document.body;){const U=(M=C.getAttribute)==null?void 0:M.call(C,"data-section-id"),B=(Y=C.getAttribute)==null?void 0:Y.call(C,"data-section-type"),T=(H=C.getAttribute)==null?void 0:H.call(C,"data-section-scope");if(U&&B&&T){S=C;break}C=C.parentElement}if(!S)return;v.preventDefault(),v.stopPropagation();const j=S.getAttribute("data-section-id"),N=S.getAttribute("data-section-type"),E=S.getAttribute("data-section-scope");if(!j||!N||!E)return;const D={id:j,type:N,scope:E};if(y===S){window.parent.postMessage({type:ve.SECTION_SELECT,section:D},"*");return}const R=document.elementFromPoint(k,x)??y;if(!R||!S.contains(R)){window.parent.postMessage({type:ve.SECTION_SELECT,section:D},"*");return}if(R===S){window.parent.postMessage({type:ve.SECTION_SELECT,section:D},"*");return}let I=vc(R,S);if(I.length===0&&R){let U=null;const B=T=>{var re,A;const X=T.getBoundingClientRect();if(X.left<=k&&k<=X.right&&X.top<=x&&x<=X.bottom){for(let W=0;W<T.children.length;W++)B(T.children[W]);((re=T.getAttribute)!=null&&re.call(T,"data-jp-item-id")||(A=T.getAttribute)!=null&&A.call(T,"data-jp-field"))&&(U=T)}};B(R),U&&(I=vc(U,S))}const L={type:ve.SECTION_SELECT,section:D};I.length>0&&(L.itemPath=I),window.parent.postMessage(L,"*")};return document.addEventListener("click",m,!0),()=>document.removeEventListener("click",m,!0)},[]),b.useEffect(()=>{if(!l)return;const p=setTimeout(()=>d(null),600);return()=>clearTimeout(p)},[l]),!e||!r)return c.jsx("div",{className:"flex items-center justify-center h-screen w-full bg-zinc-950 text-zinc-500 font-mono text-xs uppercase tracking-widest animate-pulse",children:"Waiting for Studio Signal..."});const u={main:rn((h=r.header)==null?void 0:h.data,o.main)},f=p=>{window.parent.postMessage({type:ve.ACTIVE_SECTION_CHANGED,activeSectionId:p},"*")};return c.jsx(Xr,{mode:"studio",children:c.jsx("div",{className:"jp-ice-active",children:c.jsx(fo,{pageConfig:e,siteConfig:r,menuConfig:u,selectedId:s,scrollToSectionId:l,onActiveSectionChange:f})})})};function k0(e){return e.split("-").map(t=>t.charAt(0).toUpperCase()+t.slice(1).toLowerCase()).join(" ")}const wc=({open:e,onClose:t,sectionTypes:r,sectionTypeLabels:n,onSelect:o})=>{if(b.useEffect(()=>{if(!e)return;const s=a=>{a.key==="Escape"&&t()};return window.addEventListener("keydown",s),()=>window.removeEventListener("keydown",s)},[e,t]),!e)return null;const i=s=>(n==null?void 0:n[s])??k0(s);return c.jsxs("div",{className:"fixed inset-0 z-[100] flex items-center justify-center p-4",role:"dialog","aria-modal":"true","aria-labelledby":"jp-add-section-title",children:[c.jsx("div",{className:"absolute inset-0 bg-zinc-950/80 backdrop-blur-sm",onClick:t,"aria-hidden":"true"}),c.jsxs("div",{className:"relative w-full max-w-md max-h-[85vh] flex flex-col rounded-xl border border-zinc-700 bg-zinc-900 shadow-2xl overflow-hidden",children:[c.jsxs("div",{className:"flex items-center justify-between px-5 py-4 border-b border-zinc-800 shrink-0",children:[c.jsxs("div",{className:"flex items-center gap-2",children:[c.jsx("div",{className:"p-1.5 rounded-lg bg-blue-500/20 text-blue-400",children:c.jsx(lo,{size:18})}),c.jsx("h2",{id:"jp-add-section-title",className:"text-sm font-bold text-white",children:"Add section"})]}),c.jsx("button",{type:"button",onClick:t,className:"p-1.5 rounded-md text-zinc-400 hover:text-white hover:bg-zinc-800 transition-colors","aria-label":"Close",children:c.jsx(Ut,{size:18})})]}),c.jsx("div",{className:"flex-1 overflow-y-auto p-4",children:r.length===0?c.jsx("p",{className:"text-xs text-zinc-500 text-center py-8",children:"No section types available. Configure addableSectionTypes or schemas."}):c.jsx("ul",{className:"grid gap-2",role:"listbox",children:r.map(s=>c.jsx("li",{role:"option",children:c.jsxs("button",{type:"button",onClick:()=>{o(s),t()},className:oe("w-full flex items-center gap-3 px-4 py-3 rounded-lg text-left","border border-zinc-700/80 bg-zinc-800/50","hover:border-blue-500/40 hover:bg-zinc-800 transition-colors","focus:outline-none focus:ring-2 focus:ring-blue-500/50 focus:ring-offset-2 focus:ring-offset-zinc-900"),children:[c.jsx("span",{className:"flex items-center justify-center w-9 h-9 rounded-md bg-zinc-700/80 text-zinc-400 text-xs font-mono shrink-0",children:s}),c.jsx("span",{className:"text-sm font-medium text-zinc-200",children:i(s)})]})},s))})}),c.jsx("div",{className:"px-5 py-3 border-t border-zinc-800 shrink-0",children:c.jsx("p",{className:"text-[10px] text-zinc-500 uppercase tracking-wider",children:"Choose a section type to add to the bottom of this page"})})]})]})},yc=()=>c.jsxs("div",{style:{"--local-bg":"var(--color-background)","--local-text":"var(--color-text)","--local-text-muted":"var(--color-text-muted)","--local-primary":"var(--color-primary)","--local-radius-md":"var(--radius-md)"},className:"min-h-screen flex flex-col items-center justify-center bg-[var(--local-bg)] px-6",children:[c.jsx("h1",{className:"text-6xl font-bold text-[var(--local-text)] mb-4",children:"404"}),c.jsx("p",{className:"text-xl text-[var(--local-text-muted)] mb-8",children:"Page not found"}),c.jsx("a",{href:"/",className:"inline-flex items-center gap-2 px-6 py-3 rounded-[var(--local-radius-md)] bg-[var(--local-primary)] text-[var(--local-bg)] font-semibold text-sm hover:opacity-90 transition-opacity",children:"Back to Home"})]});function wi(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function kc(e){return e==null?e:JSON.parse(JSON.stringify(e))}function Sc(){if(typeof window>"u")return null;const e=window;return e.__olonWebMcpTools__||(e.__olonWebMcpTools__=new Map),e.__olonWebMcpTools__}function yi(e){return`update-${e}`}function Cc(e){return e.startsWith("update-")?e.slice(7):null}function Ec(e){return{type:"object",additionalProperties:!1,properties:{slug:{type:"string"},sectionId:{type:"string"},scope:{type:"string",enum:["local","global"],default:"local"},data:{type:"object",description:`Full replacement payload validated against the "${e}" section schema.`},itemPath:{type:"array",description:"Optional root-to-leaf path for targeted field updates.",items:{type:"object",additionalProperties:!1,properties:{fieldKey:{type:"string"},itemId:{type:"string"}},required:["fieldKey"]}},fieldKey:{type:"string",description:"Shorthand for a top-level scalar field update when itemPath is omitted."},value:{description:"Value written to the targeted field or array item."}},required:["sectionId"],oneOf:[{required:["data"]},{required:["itemPath","value"]},{required:["fieldKey","value"]}]}}function ki(e,t,r){if(t.length===0)throw new Error("Selection path is empty.");const n=kc(e);let o=n;for(let i=0;i<t.length;i+=1){const s=t[i],a=i===t.length-1;if(!wi(o))throw new Error(`Cannot navigate path segment "${s.fieldKey}" on a non-object value.`);if(s.itemId!=null){const l=o[s.fieldKey];if(!Array.isArray(l))throw new Error(`Field "${s.fieldKey}" is not an array.`);const d=l.findIndex(u=>wi(u)&&String(u.id??"")===String(s.itemId));if(d===-1)throw new Error(`Array item "${s.itemId}" not found under "${s.fieldKey}".`);if(a)return l[d]=r,n;o=l[d];continue}if(a)return o[s.fieldKey]=r,n;o=o[s.fieldKey]}return n}function Si(e,t){if(t.data&&wi(t.data))return kc(t.data);if(Array.isArray(t.itemPath)&&t.itemPath.length>0)return ki(e,t.itemPath,t.value);if(typeof t.fieldKey=="string"&&t.fieldKey.trim().length>0)return ki(e,[{fieldKey:t.fieldKey}],t.value);throw new Error('WebMCP mutation requires either "data", "itemPath", or "fieldKey".')}async function jc(e){if(e.startsWith("olon://pages/")){const t=e.replace("olon://pages/",""),r=window.location.pathname.replace(/\/admin(\/.*)?$/,"").replace(/\/$/,""),n=await fetch(`${r}/pages/${t}.json`);if(!n.ok)throw new Error(`Resource not found: ${e} (at ${r}/pages/${t}.json)`);return await n.json()}throw new Error(`Unsupported URI scheme: ${e}`)}function eo(){if(typeof window>"u"||typeof navigator>"u")return;const e=Sc();if(!e)return;const t=navigator;t.modelContext||(t.modelContext={}),t.modelContext.registerTool=function(r){e.set(r.name,r)},t.modelContext.unregisterTool=function(r){e.delete(r)},t.modelContext.readResource=jc,t.modelContextProtocol||(t.modelContextProtocol={}),t.modelContextProtocol.listTools=function(){return Array.from(e.values()).map(({execute:r,...n})=>n)},t.modelContextProtocol.executeTool=async function(r,n){const o=e.get(r);if(!o)throw new Error(`Unknown WebMCP tool: ${r}`);const i=n?JSON.parse(n):{},s=await o.execute(i);return JSON.stringify(s)},t.modelContextProtocol.readResource=async function(r){const n=await jc(r);return JSON.stringify(n)}}function Nc(e){var n,o;if(typeof navigator>"u")return()=>{};eo();const t=navigator,r=Sc();return!t.modelContext||!r?()=>{}:((o=(n=t.modelContext).registerTool)==null||o.call(n,e),r.set(e.name,e),()=>{var i,s;r.delete(e.name),(s=(i=t.modelContext)==null?void 0:i.unregisterTool)==null||s.call(i,e.name)})}const S0='/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-200:oklch(88.5% .062 18.334);--color-red-300:oklch(80.8% .114 19.571);--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-900:oklch(39.6% .141 25.723);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-500:oklch(76.9% .188 70.08);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-zinc-100:oklch(96.7% .001 286.375);--color-zinc-200:oklch(92% .004 286.32);--color-zinc-300:oklch(87.1% .006 286.286);--color-zinc-400:oklch(70.5% .015 286.067);--color-zinc-500:oklch(55.2% .016 285.938);--color-zinc-600:oklch(44.2% .017 285.786);--color-zinc-700:oklch(37% .013 285.805);--color-zinc-800:oklch(27.4% .006 286.033);--color-zinc-900:oklch(21% .006 285.885);--color-zinc-950:oklch(14.1% .005 285.823);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-md:28rem;--container-lg:32rem;--container-2xl:42rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-6xl:3.75rem;--text-6xl--line-height:1;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-black:900;--tracking-tight:-.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--blur-sm:8px;--blur-md:12px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-background:var(--background);--color-foreground:var(--foreground);--color-primary:var(--primary);--color-primary-foreground:var(--primary-foreground);--color-destructive:var(--destructive);--color-ring:var(--ring)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border)}body{background-color:var(--background);color:var(--foreground);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing)*0)}.inset-x-0{inset-inline:calc(var(--spacing)*0)}.top-0{top:calc(var(--spacing)*0)}.top-1\\/2{top:50%}.top-2{top:calc(var(--spacing)*2)}.right-0{right:calc(var(--spacing)*0)}.right-2{right:calc(var(--spacing)*2)}.bottom-0{bottom:calc(var(--spacing)*0)}.left-0{left:calc(var(--spacing)*0)}.left-1\\/2{left:50%}.left-2{left:calc(var(--spacing)*2)}.left-3{left:calc(var(--spacing)*3)}.z-0{z-index:0}.z-10{z-index:10}.z-50,.z-\\[50\\]{z-index:50}.z-\\[60\\]{z-index:60}.z-\\[70\\]{z-index:70}.z-\\[100\\]{z-index:100}.z-\\[9998\\]{z-index:9998}.z-\\[9999\\]{z-index:9999}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.m-4{margin:calc(var(--spacing)*4)}.mx-1{margin-inline:calc(var(--spacing)*1)}.mx-1\\.5{margin-inline:calc(var(--spacing)*1.5)}.mx-2{margin-inline:calc(var(--spacing)*2)}.mx-3{margin-inline:calc(var(--spacing)*3)}.my-1{margin-block:calc(var(--spacing)*1)}.mt-0\\.5{margin-top:calc(var(--spacing)*.5)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-1\\.5{margin-top:calc(var(--spacing)*1.5)}.mt-2{margin-top:calc(var(--spacing)*2)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-1\\.5{margin-bottom:calc(var(--spacing)*1.5)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-auto{margin-left:auto}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.aspect-\\[4\\/3\\]{aspect-ratio:4/3}.size-4{width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.h-1\\.5{height:calc(var(--spacing)*1.5)}.h-2{height:calc(var(--spacing)*2)}.h-3{height:calc(var(--spacing)*3)}.h-3\\.5{height:calc(var(--spacing)*3.5)}.h-4{height:calc(var(--spacing)*4)}.h-6{height:calc(var(--spacing)*6)}.h-7{height:calc(var(--spacing)*7)}.h-8{height:calc(var(--spacing)*8)}.h-9{height:calc(var(--spacing)*9)}.h-10{height:calc(var(--spacing)*10)}.h-12{height:calc(var(--spacing)*12)}.h-20{height:calc(var(--spacing)*20)}.h-40{height:calc(var(--spacing)*40)}.h-\\[var\\(--radix-select-trigger-height\\)\\]{height:var(--radix-select-trigger-height)}.h-full{height:100%}.h-screen{height:100vh}.max-h-96{max-height:calc(var(--spacing)*96)}.max-h-\\[45vh\\]{max-height:45vh}.max-h-\\[85vh\\]{max-height:85vh}.max-h-\\[90vh\\]{max-height:90vh}.max-h-\\[320px\\]{max-height:320px}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-16{min-height:calc(var(--spacing)*16)}.min-h-\\[18px\\]{min-height:18px}.min-h-\\[96px\\]{min-height:96px}.min-h-\\[240px\\]{min-height:240px}.min-h-screen{min-height:100vh}.w-1{width:calc(var(--spacing)*1)}.w-1\\.5{width:calc(var(--spacing)*1.5)}.w-2{width:calc(var(--spacing)*2)}.w-3{width:calc(var(--spacing)*3)}.w-3\\.5{width:calc(var(--spacing)*3.5)}.w-3\\/4{width:75%}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-7{width:calc(var(--spacing)*7)}.w-8{width:calc(var(--spacing)*8)}.w-9{width:calc(var(--spacing)*9)}.w-10{width:calc(var(--spacing)*10)}.w-12{width:calc(var(--spacing)*12)}.w-\\[calc\\(100\\%-2rem\\)\\]{width:calc(100% - 2rem)}.w-\\[var\\(--radix-popover-trigger-width\\)\\]{width:var(--radix-popover-trigger-width)}.w-full{width:100%}.w-px{width:1px}.w-screen{width:100vw}.max-w-2xl{max-width:var(--container-2xl)}.max-w-\\[280px\\]{max-width:280px}.max-w-\\[var\\(--inspector-width\\,280px\\)\\]{max-width:var(--inspector-width,280px)}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.min-w-0{min-width:calc(var(--spacing)*0)}.min-w-\\[8rem\\]{min-width:8rem}.min-w-\\[18px\\]{min-width:18px}.min-w-\\[156px\\]{min-width:156px}.min-w-\\[var\\(--radix-popover-trigger-width\\)\\]{min-width:var(--radix-popover-trigger-width)}.min-w-\\[var\\(--radix-select-trigger-width\\)\\]{min-width:var(--radix-select-trigger-width)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.-translate-x-1\\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-0\\.5{--tw-translate-x:calc(var(--spacing)*.5);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-3{--tw-translate-x:calc(var(--spacing)*3);translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-1\\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.cursor-col-resize{cursor:col-resize}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize-none{resize:none}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-nowrap{flex-wrap:nowrap}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0{gap:calc(var(--spacing)*0)}.gap-0\\.5{gap:calc(var(--spacing)*.5)}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-2\\.5{gap:calc(var(--spacing)*2.5)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}:where(.space-y-0\\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*2)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-x-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-\\[inherit\\]{border-radius:inherit}.rounded-\\[var\\(--local-radius-md\\)\\]{border-radius:var(--local-radius-md)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-none{--tw-border-style:none;border-style:none}.border-solid{--tw-border-style:solid;border-style:solid}.border-amber-500\\/20{border-color:#f99c0033}@supports (color:color-mix(in lab,red,red)){.border-amber-500\\/20{border-color:color-mix(in oklab,var(--color-amber-500)20%,transparent)}}.border-amber-500\\/30{border-color:#f99c004d}@supports (color:color-mix(in lab,red,red)){.border-amber-500\\/30{border-color:color-mix(in oklab,var(--color-amber-500)30%,transparent)}}.border-blue-500{border-color:var(--color-blue-500)}.border-blue-500\\/50{border-color:#3080ff80}@supports (color:color-mix(in lab,red,red)){.border-blue-500\\/50{border-color:color-mix(in oklab,var(--color-blue-500)50%,transparent)}}.border-blue-600{border-color:var(--color-blue-600)}.border-emerald-500\\/60{border-color:#00bb7f99}@supports (color:color-mix(in lab,red,red)){.border-emerald-500\\/60{border-color:color-mix(in oklab,var(--color-emerald-500)60%,transparent)}}.border-primary{border-color:var(--color-primary)}.border-red-500\\/20{border-color:#fb2c3633}@supports (color:color-mix(in lab,red,red)){.border-red-500\\/20{border-color:color-mix(in oklab,var(--color-red-500)20%,transparent)}}.border-red-500\\/50{border-color:#fb2c3680}@supports (color:color-mix(in lab,red,red)){.border-red-500\\/50{border-color:color-mix(in oklab,var(--color-red-500)50%,transparent)}}.border-red-900\\/30{border-color:#82181a4d}@supports (color:color-mix(in lab,red,red)){.border-red-900\\/30{border-color:color-mix(in oklab,var(--color-red-900)30%,transparent)}}.border-transparent{border-color:#0000}.border-zinc-700{border-color:var(--color-zinc-700)}.border-zinc-700\\/60{border-color:#3f3f4699}@supports (color:color-mix(in lab,red,red)){.border-zinc-700\\/60{border-color:color-mix(in oklab,var(--color-zinc-700)60%,transparent)}}.border-zinc-700\\/80{border-color:#3f3f46cc}@supports (color:color-mix(in lab,red,red)){.border-zinc-700\\/80{border-color:color-mix(in oklab,var(--color-zinc-700)80%,transparent)}}.border-zinc-800{border-color:var(--color-zinc-800)}.border-zinc-800\\/50{border-color:#27272a80}@supports (color:color-mix(in lab,red,red)){.border-zinc-800\\/50{border-color:color-mix(in oklab,var(--color-zinc-800)50%,transparent)}}.border-zinc-800\\/60{border-color:#27272a99}@supports (color:color-mix(in lab,red,red)){.border-zinc-800\\/60{border-color:color-mix(in oklab,var(--color-zinc-800)60%,transparent)}}.border-l-transparent{border-left-color:#0000}.bg-\\[var\\(--color-background\\)\\]{background-color:var(--color-background)}.bg-\\[var\\(--local-bg\\)\\]{background-color:var(--local-bg)}.bg-\\[var\\(--local-primary\\)\\]{background-color:var(--local-primary)}.bg-amber-500{background-color:var(--color-amber-500)}.bg-amber-500\\/5{background-color:#f99c000d}@supports (color:color-mix(in lab,red,red)){.bg-amber-500\\/5{background-color:color-mix(in oklab,var(--color-amber-500)5%,transparent)}}.bg-amber-500\\/10{background-color:#f99c001a}@supports (color:color-mix(in lab,red,red)){.bg-amber-500\\/10{background-color:color-mix(in oklab,var(--color-amber-500)10%,transparent)}}.bg-background{background-color:var(--color-background)}.bg-black{background-color:var(--color-black)}.bg-black\\/0{background-color:#0000}@supports (color:color-mix(in lab,red,red)){.bg-black\\/0{background-color:color-mix(in oklab,var(--color-black)0%,transparent)}}.bg-black\\/20{background-color:#0003}@supports (color:color-mix(in lab,red,red)){.bg-black\\/20{background-color:color-mix(in oklab,var(--color-black)20%,transparent)}}.bg-black\\/30{background-color:#0000004d}@supports (color:color-mix(in lab,red,red)){.bg-black\\/30{background-color:color-mix(in oklab,var(--color-black)30%,transparent)}}.bg-black\\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\\/50{background-color:color-mix(in oklab,var(--color-black)50%,transparent)}}.bg-black\\/60{background-color:#0009}@supports (color:color-mix(in lab,red,red)){.bg-black\\/60{background-color:color-mix(in oklab,var(--color-black)60%,transparent)}}.bg-blue-500{background-color:var(--color-blue-500)}.bg-blue-500\\/5{background-color:#3080ff0d}@supports (color:color-mix(in lab,red,red)){.bg-blue-500\\/5{background-color:color-mix(in oklab,var(--color-blue-500)5%,transparent)}}.bg-blue-500\\/10{background-color:#3080ff1a}@supports (color:color-mix(in lab,red,red)){.bg-blue-500\\/10{background-color:color-mix(in oklab,var(--color-blue-500)10%,transparent)}}.bg-blue-500\\/15{background-color:#3080ff26}@supports (color:color-mix(in lab,red,red)){.bg-blue-500\\/15{background-color:color-mix(in oklab,var(--color-blue-500)15%,transparent)}}.bg-blue-500\\/20{background-color:#3080ff33}@supports (color:color-mix(in lab,red,red)){.bg-blue-500\\/20{background-color:color-mix(in oklab,var(--color-blue-500)20%,transparent)}}.bg-blue-500\\/\\[0\\.04\\]{background-color:#3080ff0a}@supports (color:color-mix(in lab,red,red)){.bg-blue-500\\/\\[0\\.04\\]{background-color:color-mix(in oklab,var(--color-blue-500)4%,transparent)}}.bg-blue-600{background-color:var(--color-blue-600)}.bg-blue-600\\/10{background-color:#155dfc1a}@supports (color:color-mix(in lab,red,red)){.bg-blue-600\\/10{background-color:color-mix(in oklab,var(--color-blue-600)10%,transparent)}}.bg-destructive\\/15{background-color:var(--color-destructive)}@supports (color:color-mix(in lab,red,red)){.bg-destructive\\/15{background-color:color-mix(in oklab,var(--color-destructive)15%,transparent)}}.bg-emerald-500{background-color:var(--color-emerald-500)}.bg-primary,.bg-primary\\/10{background-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.bg-primary\\/10{background-color:color-mix(in oklab,var(--color-primary)10%,transparent)}}.bg-primary\\/\\[0\\.08\\]{background-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.bg-primary\\/\\[0\\.08\\]{background-color:color-mix(in oklab,var(--color-primary)8%,transparent)}}.bg-red-500\\/10{background-color:#fb2c361a}@supports (color:color-mix(in lab,red,red)){.bg-red-500\\/10{background-color:color-mix(in oklab,var(--color-red-500)10%,transparent)}}.bg-red-500\\/15{background-color:#fb2c3626}@supports (color:color-mix(in lab,red,red)){.bg-red-500\\/15{background-color:color-mix(in oklab,var(--color-red-500)15%,transparent)}}.bg-red-900\\/10{background-color:#82181a1a}@supports (color:color-mix(in lab,red,red)){.bg-red-900\\/10{background-color:color-mix(in oklab,var(--color-red-900)10%,transparent)}}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-white\\/15{background-color:#ffffff26}@supports (color:color-mix(in lab,red,red)){.bg-white\\/15{background-color:color-mix(in oklab,var(--color-white)15%,transparent)}}.bg-white\\/20{background-color:#fff3}@supports (color:color-mix(in lab,red,red)){.bg-white\\/20{background-color:color-mix(in oklab,var(--color-white)20%,transparent)}}.bg-white\\/\\[0\\.01\\]{background-color:#ffffff03}@supports (color:color-mix(in lab,red,red)){.bg-white\\/\\[0\\.01\\]{background-color:color-mix(in oklab,var(--color-white)1%,transparent)}}.bg-white\\/\\[0\\.02\\]{background-color:#ffffff05}@supports (color:color-mix(in lab,red,red)){.bg-white\\/\\[0\\.02\\]{background-color:color-mix(in oklab,var(--color-white)2%,transparent)}}.bg-white\\/\\[0\\.03\\]{background-color:#ffffff08}@supports (color:color-mix(in lab,red,red)){.bg-white\\/\\[0\\.03\\]{background-color:color-mix(in oklab,var(--color-white)3%,transparent)}}.bg-zinc-700{background-color:var(--color-zinc-700)}.bg-zinc-700\\/80{background-color:#3f3f46cc}@supports (color:color-mix(in lab,red,red)){.bg-zinc-700\\/80{background-color:color-mix(in oklab,var(--color-zinc-700)80%,transparent)}}.bg-zinc-800{background-color:var(--color-zinc-800)}.bg-zinc-800\\/30{background-color:#27272a4d}@supports (color:color-mix(in lab,red,red)){.bg-zinc-800\\/30{background-color:color-mix(in oklab,var(--color-zinc-800)30%,transparent)}}.bg-zinc-800\\/50{background-color:#27272a80}@supports (color:color-mix(in lab,red,red)){.bg-zinc-800\\/50{background-color:color-mix(in oklab,var(--color-zinc-800)50%,transparent)}}.bg-zinc-800\\/60{background-color:#27272a99}@supports (color:color-mix(in lab,red,red)){.bg-zinc-800\\/60{background-color:color-mix(in oklab,var(--color-zinc-800)60%,transparent)}}.bg-zinc-800\\/80{background-color:#27272acc}@supports (color:color-mix(in lab,red,red)){.bg-zinc-800\\/80{background-color:color-mix(in oklab,var(--color-zinc-800)80%,transparent)}}.bg-zinc-900{background-color:var(--color-zinc-900)}.bg-zinc-900\\/20{background-color:#18181b33}@supports (color:color-mix(in lab,red,red)){.bg-zinc-900\\/20{background-color:color-mix(in oklab,var(--color-zinc-900)20%,transparent)}}.bg-zinc-900\\/40{background-color:#18181b66}@supports (color:color-mix(in lab,red,red)){.bg-zinc-900\\/40{background-color:color-mix(in oklab,var(--color-zinc-900)40%,transparent)}}.bg-zinc-900\\/50{background-color:#18181b80}@supports (color:color-mix(in lab,red,red)){.bg-zinc-900\\/50{background-color:color-mix(in oklab,var(--color-zinc-900)50%,transparent)}}.bg-zinc-900\\/60{background-color:#18181b99}@supports (color:color-mix(in lab,red,red)){.bg-zinc-900\\/60{background-color:color-mix(in oklab,var(--color-zinc-900)60%,transparent)}}.bg-zinc-950{background-color:var(--color-zinc-950)}.bg-zinc-950\\/80{background-color:#09090bcc}@supports (color:color-mix(in lab,red,red)){.bg-zinc-950\\/80{background-color:color-mix(in oklab,var(--color-zinc-950)80%,transparent)}}.bg-gradient-to-t{--tw-gradient-position:to top in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-black\\/70{--tw-gradient-from:#000000b3}@supports (color:color-mix(in lab,red,red)){.from-black\\/70{--tw-gradient-from:color-mix(in oklab,var(--color-black)70%,transparent)}}.from-black\\/70{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-black\\/80{--tw-gradient-from:#000c}@supports (color:color-mix(in lab,red,red)){.from-black\\/80{--tw-gradient-from:color-mix(in oklab,var(--color-black)80%,transparent)}}.from-black\\/80{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:calc(var(--spacing)*0)}.p-1{padding:calc(var(--spacing)*1)}.p-1\\.5{padding:calc(var(--spacing)*1.5)}.p-2\\.5{padding:calc(var(--spacing)*2.5)}.p-4{padding:calc(var(--spacing)*4)}.p-5{padding:calc(var(--spacing)*5)}.p-6{padding:calc(var(--spacing)*6)}.p-8{padding:calc(var(--spacing)*8)}.p-px{padding:1px}.px-2{padding-inline:calc(var(--spacing)*2)}.px-2\\.5{padding-inline:calc(var(--spacing)*2.5)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-3\\.5{padding-inline:calc(var(--spacing)*3.5)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-5{padding-inline:calc(var(--spacing)*5)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-2\\.5{padding-block:calc(var(--spacing)*2.5)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-7{padding-block:calc(var(--spacing)*7)}.py-8{padding-block:calc(var(--spacing)*8)}.py-10{padding-block:calc(var(--spacing)*10)}.py-12{padding-block:calc(var(--spacing)*12)}.pt-1{padding-top:calc(var(--spacing)*1)}.pt-4{padding-top:calc(var(--spacing)*4)}.pr-2{padding-right:calc(var(--spacing)*2)}.pr-4{padding-right:calc(var(--spacing)*4)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.pl-1{padding-left:calc(var(--spacing)*1)}.pl-3{padding-left:calc(var(--spacing)*3)}.pl-8{padding-left:calc(var(--spacing)*8)}.pl-9{padding-left:calc(var(--spacing)*9)}.text-center{text-align:center}.text-left{text-align:left}.font-mono{font-family:var(--font-mono)}.text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\\[9px\\]{font-size:9px}.text-\\[10px\\]{font-size:10px}.text-\\[11px\\]{font-size:11px}.text-\\[12px\\]{font-size:12px}.text-\\[13px\\]{font-size:13px}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\\[0\\.01em\\]{--tw-tracking:.01em;letter-spacing:.01em}.tracking-\\[0\\.02em\\]{--tw-tracking:.02em;letter-spacing:.02em}.tracking-\\[0\\.04em\\]{--tw-tracking:.04em;letter-spacing:.04em}.tracking-\\[0\\.05em\\]{--tw-tracking:.05em;letter-spacing:.05em}.tracking-\\[0\\.06em\\]{--tw-tracking:.06em;letter-spacing:.06em}.tracking-\\[0\\.08em\\]{--tw-tracking:.08em;letter-spacing:.08em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.whitespace-nowrap{white-space:nowrap}.text-\\[var\\(--local-bg\\)\\]{color:var(--local-bg)}.text-\\[var\\(--local-text\\)\\]{color:var(--local-text)}.text-\\[var\\(--local-text-muted\\)\\]{color:var(--local-text-muted)}.text-amber-200{color:var(--color-amber-200)}.text-amber-500{color:var(--color-amber-500)}.text-amber-500\\/70{color:#f99c00b3}@supports (color:color-mix(in lab,red,red)){.text-amber-500\\/70{color:color-mix(in oklab,var(--color-amber-500)70%,transparent)}}.text-blue-400{color:var(--color-blue-400)}.text-blue-500{color:var(--color-blue-500)}.text-blue-600{color:var(--color-blue-600)}.text-destructive{color:var(--color-destructive)}.text-emerald-400{color:var(--color-emerald-400)}.text-foreground{color:var(--color-foreground)}.text-primary{color:var(--color-primary)}.text-primary-foreground{color:var(--color-primary-foreground)}.text-red-300{color:var(--color-red-300)}.text-red-400{color:var(--color-red-400)}.text-white{color:var(--color-white)}.text-zinc-200{color:var(--color-zinc-200)}.text-zinc-300{color:var(--color-zinc-300)}.text-zinc-400{color:var(--color-zinc-400)}.text-zinc-500{color:var(--color-zinc-500)}.text-zinc-600{color:var(--color-zinc-600)}.text-zinc-600\\/50{color:#52525c80}@supports (color:color-mix(in lab,red,red)){.text-zinc-600\\/50{color:color-mix(in oklab,var(--color-zinc-600)50%,transparent)}}.text-zinc-700{color:var(--color-zinc-700)}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\\[0_0_8px_rgba\\(245\\,158\\,11\\,0\\.5\\)\\]{--tw-shadow:0 0 8px var(--tw-shadow-color,#f59e0b80);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-black\\/30{--tw-shadow-color:#0000004d}@supports (color:color-mix(in lab,red,red)){.shadow-black\\/30{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--color-black)30%,transparent)var(--tw-shadow-alpha),transparent)}}.shadow-primary\\/20{--tw-shadow-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.shadow-primary\\/20{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--color-primary)20%,transparent)var(--tw-shadow-alpha),transparent)}}.ring-blue-500{--tw-ring-color:var(--color-blue-500)}.ring-blue-500\\/40{--tw-ring-color:#3080ff66}@supports (color:color-mix(in lab,red,red)){.ring-blue-500\\/40{--tw-ring-color:color-mix(in oklab,var(--color-blue-500)40%,transparent)}}.ring-zinc-800{--tw-ring-color:var(--color-zinc-800)}.ring-offset-1{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.ring-offset-zinc-900{--tw-ring-offset-color:var(--color-zinc-900)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.brightness-\\[0\\.6\\]{--tw-brightness:brightness(.6);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.brightness-\\[0\\.85\\]{--tw-brightness:brightness(.85);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition-\\[border-color\\,opacity\\]{transition-property:border-color,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[filter\\]{transition-property:filter;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}@media(hover:hover){.group-hover\\:border-dashed:is(:where(.group):hover *){--tw-border-style:dashed;border-style:dashed}.group-hover\\:border-blue-400\\/50:is(:where(.group):hover *){border-color:#54a2ff80}@supports (color:color-mix(in lab,red,red)){.group-hover\\:border-blue-400\\/50:is(:where(.group):hover *){border-color:color-mix(in oklab,var(--color-blue-400)50%,transparent)}}.group-hover\\:opacity-100:is(:where(.group):hover *){opacity:1}.group-hover\\:brightness-100:is(:where(.group):hover *){--tw-brightness:brightness(100%);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.hover\\:scale-\\[1\\.02\\]:hover{scale:1.02}.hover\\:border-blue-500\\/30:hover{border-color:#3080ff4d}@supports (color:color-mix(in lab,red,red)){.hover\\:border-blue-500\\/30:hover{border-color:color-mix(in oklab,var(--color-blue-500)30%,transparent)}}.hover\\:border-blue-500\\/40:hover{border-color:#3080ff66}@supports (color:color-mix(in lab,red,red)){.hover\\:border-blue-500\\/40:hover{border-color:color-mix(in oklab,var(--color-blue-500)40%,transparent)}}.hover\\:border-zinc-600:hover{border-color:var(--color-zinc-600)}.hover\\:border-zinc-700:hover{border-color:var(--color-zinc-700)}.hover\\:bg-blue-500\\/\\[0\\.03\\]:hover{background-color:#3080ff08}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-blue-500\\/\\[0\\.03\\]:hover{background-color:color-mix(in oklab,var(--color-blue-500)3%,transparent)}}.hover\\:bg-blue-600\\/20:hover{background-color:#155dfc33}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-blue-600\\/20:hover{background-color:color-mix(in oklab,var(--color-blue-600)20%,transparent)}}.hover\\:bg-destructive\\/25:hover{background-color:var(--color-destructive)}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-destructive\\/25:hover{background-color:color-mix(in oklab,var(--color-destructive)25%,transparent)}}.hover\\:bg-primary\\/40:hover{background-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-primary\\/40:hover{background-color:color-mix(in oklab,var(--color-primary)40%,transparent)}}.hover\\:bg-primary\\/90:hover{background-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-primary\\/90:hover{background-color:color-mix(in oklab,var(--color-primary)90%,transparent)}}.hover\\:bg-red-500\\/10:hover{background-color:#fb2c361a}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-red-500\\/10:hover{background-color:color-mix(in oklab,var(--color-red-500)10%,transparent)}}.hover\\:bg-red-500\\/25:hover{background-color:#fb2c3640}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-red-500\\/25:hover{background-color:color-mix(in oklab,var(--color-red-500)25%,transparent)}}.hover\\:bg-white\\/30:hover{background-color:#ffffff4d}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-white\\/30:hover{background-color:color-mix(in oklab,var(--color-white)30%,transparent)}}.hover\\:bg-white\\/\\[0\\.02\\]:hover{background-color:#ffffff05}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-white\\/\\[0\\.02\\]:hover{background-color:color-mix(in oklab,var(--color-white)2%,transparent)}}.hover\\:bg-zinc-600:hover{background-color:var(--color-zinc-600)}.hover\\:bg-zinc-800:hover{background-color:var(--color-zinc-800)}.hover\\:bg-zinc-800\\/40:hover{background-color:#27272a66}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-zinc-800\\/40:hover{background-color:color-mix(in oklab,var(--color-zinc-800)40%,transparent)}}.hover\\:bg-zinc-800\\/50:hover{background-color:#27272a80}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-zinc-800\\/50:hover{background-color:color-mix(in oklab,var(--color-zinc-800)50%,transparent)}}.hover\\:bg-zinc-900:hover{background-color:var(--color-zinc-900)}.hover\\:text-blue-400:hover{color:var(--color-blue-400)}.hover\\:text-destructive:hover{color:var(--color-destructive)}.hover\\:text-primary:hover{color:var(--color-primary)}.hover\\:text-red-200:hover{color:var(--color-red-200)}.hover\\:text-red-400:hover{color:var(--color-red-400)}.hover\\:text-red-500:hover{color:var(--color-red-500)}.hover\\:text-white:hover{color:var(--color-white)}.hover\\:text-zinc-200:hover{color:var(--color-zinc-200)}.hover\\:text-zinc-300:hover{color:var(--color-zinc-300)}.hover\\:text-zinc-400:hover{color:var(--color-zinc-400)}.hover\\:opacity-90:hover{opacity:.9}.hover\\:ring-zinc-600:hover{--tw-ring-color:var(--color-zinc-600)}}.focus\\:bg-zinc-800:focus{background-color:var(--color-zinc-800)}.focus\\:text-white:focus{color:var(--color-white)}.focus\\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\\:ring-blue-500\\/50:focus{--tw-ring-color:#3080ff80}@supports (color:color-mix(in lab,red,red)){.focus\\:ring-blue-500\\/50:focus{--tw-ring-color:color-mix(in oklab,var(--color-blue-500)50%,transparent)}}.focus\\:ring-blue-600:focus{--tw-ring-color:var(--color-blue-600)}.focus\\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus\\:ring-offset-zinc-900:focus{--tw-ring-offset-color:var(--color-zinc-900)}.focus\\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\\:border-zinc-600:focus-visible{border-color:var(--color-zinc-600)}.focus-visible\\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\\:ring-blue-500:focus-visible{--tw-ring-color:var(--color-blue-500)}.focus-visible\\:ring-blue-500\\/80:focus-visible{--tw-ring-color:#3080ffcc}@supports (color:color-mix(in lab,red,red)){.focus-visible\\:ring-blue-500\\/80:focus-visible{--tw-ring-color:color-mix(in oklab,var(--color-blue-500)80%,transparent)}}.focus-visible\\:ring-blue-600:focus-visible{--tw-ring-color:var(--color-blue-600)}.focus-visible\\:ring-ring:focus-visible{--tw-ring-color:var(--color-ring)}.focus-visible\\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus-visible\\:ring-offset-zinc-900:focus-visible{--tw-ring-offset-color:var(--color-zinc-900)}.focus-visible\\:ring-offset-zinc-950:focus-visible{--tw-ring-offset-color:var(--color-zinc-950)}.focus-visible\\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.focus-visible\\:ring-inset:focus-visible{--tw-ring-inset:inset}.active\\:cursor-grabbing:active{cursor:grabbing}.active\\:bg-primary\\/60:active{background-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.active\\:bg-primary\\/60:active{background-color:color-mix(in oklab,var(--color-primary)60%,transparent)}}.disabled\\:pointer-events-none:disabled{pointer-events:none}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:opacity-20:disabled{opacity:.2}.disabled\\:opacity-30:disabled{opacity:.3}.disabled\\:opacity-50:disabled{opacity:.5}.data-\\[disabled\\]\\:pointer-events-none[data-disabled]{pointer-events:none}.data-\\[disabled\\]\\:opacity-50[data-disabled]{opacity:.5}.data-\\[side\\=bottom\\]\\:translate-y-1[data-side=bottom]{--tw-translate-y:calc(var(--spacing)*1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\\[side\\=left\\]\\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\\[side\\=right\\]\\:translate-x-1[data-side=right]{--tw-translate-x:calc(var(--spacing)*1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\\[side\\=top\\]\\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\\[state\\=open\\]\\:border-zinc-800[data-state=open]{border-color:var(--color-zinc-800)}.data-\\[state\\=open\\]\\:bg-zinc-950[data-state=open]{background-color:var(--color-zinc-950)}.data-\\[state\\=open\\]\\:text-zinc-100[data-state=open]{color:var(--color-zinc-100)}@media(min-width:40rem){.sm\\:max-w-\\[280px\\]{max-width:280px}}.\\[\\&_svg\\]\\:shrink-0 svg{flex-shrink:0}.\\[\\&\\>span\\]\\:line-clamp-1>span{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.\\[\\&\\>span\\]\\:flex>span{display:flex}.\\[\\&\\>span\\]\\:items-center>span{align-items:center}.\\[\\&\\>span\\]\\:gap-2>span{gap:calc(var(--spacing)*2)}}:root{--background:oklch(14.1% .005 285.823);--foreground:oklch(98.5% 0 0);--card:oklch(21% .006 285.885);--card-foreground:oklch(98.5% 0 0);--popover:oklch(21% .006 285.885);--popover-foreground:oklch(98.5% 0 0);--primary:oklch(42% .18 266);--primary-foreground:oklch(97% .014 254.604);--secondary:oklch(27.4% .006 286.033);--secondary-foreground:oklch(98.5% 0 0);--muted:oklch(27.4% .006 286.033);--muted-foreground:oklch(70.5% .015 286.067);--accent:oklch(42% .18 266);--accent-foreground:oklch(97% .014 254.604);--destructive:oklch(70.4% .191 22.216);--destructive-foreground:oklch(97% .014 254.604);--border:oklch(100% 0 0/.1);--input:oklch(100% 0 0/.15);--ring:oklch(55.2% .016 285.938);--radius:.5rem;--jp-inspector-label-size:11px;--jp-inspector-field-size:13px;font-family:ui-sans-serif,system-ui,sans-serif}[data-radix-portal]{z-index:9999!important}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@keyframes pulse{50%{opacity:.5}}';class C0 extends b.Component{constructor(t){super(t),this.state={hasError:!1,error:null}}static getDerivedStateFromError(t){return{hasError:!0,error:t}}componentDidCatch(t,r){console.error("[JsonPages Engine]",t,r)}render(){return this.state.hasError&&this.state.error?c.jsxs("div",{style:{minHeight:"100vh",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",padding:24,backgroundColor:"#0f172a",color:"#e2e8f0",fontFamily:"ui-sans-serif, system-ui, sans-serif"},children:[c.jsx("h1",{style:{fontSize:"1.25rem",fontWeight:700,marginBottom:8},children:"JsonPages Engine Error"}),c.jsx("pre",{style:{maxWidth:"100%",overflow:"auto",padding:16,backgroundColor:"rgba(0,0,0,0.3)",borderRadius:8,fontSize:12,marginTop:8},children:this.state.error.message})]}):this.props.children}}function Fr(e){return e.split("/").map(t=>t.trim()).filter(Boolean).join("/")}function Ac(e,t=""){const r=Fr(t);let o=e.replace(/\/+/g,"/");if(r){const s=`/${r}`;o===s?o="/":o.startsWith(`${s}/`)&&(o=o.slice(s.length))}return Fr(o)||"home"}function Ci(e,t){const r=Fr(t)||"home";return e[r]}function Ei(e,t){return rn(e,t)}function ji(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function to(e,t){if(typeof document>"u")return;const r=`link[rel="${e}"]`;let n=document.head.querySelector(r);n||(n=document.createElement("link"),n.rel=e,document.head.appendChild(n)),n.href=t}function Tc(e,t,r){if(typeof document>"u")return;const n="olonjs-webmcp-jsonld";let o=document.getElementById(n);o||(o=document.createElement("script"),o.type="application/ld+json",o.id=n,document.head.appendChild(o)),o.textContent=JSON.stringify({"@context":"https://schema.org","@type":"WebPage",name:e,description:t,url:r})}function zc(e){return`/mcp-manifests/${e}.json`}function Pc(e){return`/schemas/${e}.schema.json`}const Oc=({pageRegistry:e,siteConfig:t,menuConfig:r,themeConfig:n,refDocuments:o,tenantCss:i,adminCss:s,NotFoundComponent:a})=>{const l=Je.useLocation(),d=Ac(l.pathname),u=b.useMemo(()=>It({pages:e,siteConfig:t,themeConfig:n,menuConfig:r,refDocuments:o}),[e,t,n,r,o]),f=Ci(u.pages,d);return b.useEffect(()=>{var h;try{(h=u.themeConfig)!=null&&h.tokens&&Qn.setTheme(u.themeConfig)}catch(p){console.warn("[JsonPages] visitor theme resolution failed",p)}},[u.themeConfig]),b.useEffect(()=>{var w,m;if(!f)return;const h=typeof((w=f.meta)==null?void 0:w.title)=="string"?f.meta.title:d,p=typeof((m=f.meta)==null?void 0:m.description)=="string"?f.meta.description:"";to("mcp-manifest",zc(d)),to("olon-contract",Pc(d)),Tc(h,p,d==="home"?"/":`/${d}`)},[f,d]),f?c.jsx(on,{mode:"tenant",tenantCss:i,adminCss:s,children:c.jsx(Xr,{mode:"visitor",children:c.jsx(fo,{pageConfig:f,siteConfig:u.siteConfig,menuConfig:u.menuConfig})})}):c.jsx(a,{})},Ic=({pageRegistry:e,schemas:t,siteConfig:r,menuConfig:n,themeConfig:o,refDocuments:i,tenantCss:s,adminCss:a,addSectionConfig:l,addableSectionTypes:d,webMcp:u,saveToFile:f,hotSave:h,showLegacySave:p=!0,showHotSave:w=!1})=>{var Ee;const m=Je.useLocation(),v=Ac(m.pathname,"admin"),y=Je.useNavigate(),k=Object.keys(e).sort((z,O)=>z==="home"?-1:O==="home"?1:z.localeCompare(O)),[x,S]=b.useState(null),[C,j]=b.useState(!1),[N,E]=b.useState(!1),[D,R]=b.useState(!1),[I,L]=b.useState(!1),[M,Y]=b.useState(()=>{try{const z=JSON.parse(JSON.stringify(r??{}));return z.identity||(z.identity={title:"Site"}),z.pages||(z.pages=[]),z}catch{return{identity:{title:"Site"},pages:[]}}}),[H,U]=b.useState(null),[B,T]=b.useState(null),[X,re]=b.useState(null),[A,W]=b.useState(null),[q,G]=b.useState(!1),[me,se]=b.useState(400),P=b.useMemo(()=>It({pages:x?{[v]:x}:{},siteConfig:M,themeConfig:o,menuConfig:n,refDocuments:i}),[x,M,o,n,i,v]),J=x?P.pages[v]??x:null,te=b.useRef(x),F=b.useRef(M),ne=360,Q=920;b.useEffect(()=>{te.current=x},[x]),b.useEffect(()=>{F.current=M},[M]);const xe=b.useCallback(z=>{z.preventDefault();const O=z.currentTarget;O.setPointerCapture(z.pointerId);const $=z.clientX,Z=me,ce=be=>{const je=$-be.clientX,it=Math.min(Q,Math.max(ne,Z+je));se(it)},de=()=>{O.releasePointerCapture(z.pointerId),O.removeEventListener("pointermove",ce),O.removeEventListener("pointerup",de),O.removeEventListener("pointercancel",de),document.body.style.cursor="",document.body.style.userSelect=""};document.body.style.cursor="col-resize",document.body.style.userSelect="none",O.addEventListener("pointermove",ce),O.addEventListener("pointerup",de),O.addEventListener("pointercancel",de)},[me]),ge=x?[...M.header?[{id:M.header.id,type:M.header.type,scope:"global",title:"Header"}]:[],...x.sections.map(z=>{var O,$;return{id:z.id,type:z.type,scope:"local",title:((O=z.data)==null?void 0:O.title)??(($=z.data)==null?void 0:$.titleHighlight)}}),...M.footer?[{id:M.footer.id,type:M.footer.type,scope:"global",title:"Footer"}]:[]]:[];b.useEffect(()=>{const z=Ci(e,v);z&&S(JSON.parse(JSON.stringify(z))),U(null),T(null),j(!1)},[v,e]);const ze=b.useCallback(()=>{const z=Ci(e,v);z&&S(JSON.parse(JSON.stringify(z))),U(null),T(null),j(!1)},[v,e]),Oe=b.useCallback((z,O,$)=>{const Z=[...$.sections],ce=Z.findIndex(je=>je.id===z);if(ce===-1||O<0||O>=Z.length)return;const[de]=Z.splice(ce,1),be=O>ce?O-1:O;Z.splice(Math.min(be,Z.length),0,de),S({...$,sections:Z}),j(!0)},[]),Be=b.useCallback(z=>{if(z.origin===window.location.origin){if(z.data.type===ve.SECTION_SELECT){U(z.data.section);const O=z.data.itemPath;Array.isArray(O)&&O.length>0?T(O.map($=>({fieldKey:$.fieldKey,...$.itemId!=null?{itemId:String($.itemId)}:{}}))):T(null)}if(z.data.type===ve.INLINE_FIELD_UPDATE){const O=typeof z.data.sectionId=="string"?z.data.sectionId:null,$=typeof z.data.fieldKey=="string"?z.data.fieldKey:null;O&&$&&(S(Z=>{if(!Z)return Z;const ce={...Z,sections:Z.sections.map(de=>de.id===O?{...de,data:{...de.data,[$]:z.data.value}}:de)};return te.current=ce,ce}),j(!0))}if(z.data.type===ve.ACTIVE_SECTION_CHANGED&&re(z.data.activeSectionId??null),z.data.type==="jsonpages:section-reorder"&&te.current){const{sectionId:O,newIndex:$}=z.data;typeof O=="string"&&typeof $=="number"&&$>=0&&Oe(O,$,te.current)}if(z.data.type===ve.WEBMCP_TOOL_CALL){const O=typeof z.data.requestId=="string"?z.data.requestId:crypto.randomUUID(),$=typeof z.data.toolName=="string"?z.data.toolName:"";_($,z.data.args).then(Z=>{window.postMessage({type:ve.WEBMCP_TOOL_RESULT,requestId:O,toolName:$,result:Z,ok:!0},window.location.origin)}).catch(Z=>{const ce=Z instanceof Error?Z.message:String(Z);window.postMessage({type:ve.WEBMCP_TOOL_RESULT,requestId:O,toolName:$,ok:!1,error:ce},window.location.origin)})}}},[Oe,_]);b.useEffect(()=>(window.addEventListener("message",Be),()=>window.removeEventListener("message",Be)),[Be]),b.useEffect(()=>{if(!(u!=null&&u.enabled))return;eo();const z=te.current;if(!z)return;const $=Array.from(new Set([...F.current.header?[F.current.header.type]:[],...F.current.footer?[F.current.footer.type]:[],...z.sections.map(Z=>Z.type)])).map(Z=>Nc({name:yi(Z),description:`Update a ${Z} section in OlonJS Studio and persist immediately to file.`,inputSchema:Ec(Z),execute:ce=>_(yi(Z),ce)}));return()=>{for(const Z of $)Z()}},[u==null?void 0:u.enabled,v,x,M,_]);const Nt=b.useCallback(z=>{const O=ge.find($=>$.id===z);O&&U({id:O.id,type:O.type,scope:O.scope}),T(null),W(z)},[ge]),Xe=b.useCallback(()=>{W(null)},[]),He=b.useCallback(z=>{S(O=>O&&{...O,sections:O.sections.filter($=>$.id!==z)}),j(!0),U(O=>(O==null?void 0:O.id)===z?null:O)},[]),Ve=z=>{if(!(!H||!x))if(j(!0),H.scope==="global")H.type==="header"&&M.header!=null?Y({...M,header:{...M.header,data:z}}):H.type==="footer"&&M.footer!=null&&Y({...M,footer:{...M.footer,data:z}});else{const O=x.sections.map($=>$.id===H.id?{...$,data:z}:$);S({...x,sections:O})}},mt=b.useCallback((z,O,$,Z)=>{var ce,de;if(j(!0),O==="global")((ce=M.header)==null?void 0:ce.id)===z?Y({...M,header:{...M.header,data:Z}}):((de=M.footer)==null?void 0:de.id)===z&&Y({...M,footer:{...M.footer,data:Z}});else if(x){const be=x.sections.map(je=>je.id===z?{...je,data:Z}:je);S({...x,sections:be})}},[x,M]),ot=b.useCallback(async()=>{const z=document.querySelector("iframe");if(!(z!=null&&z.contentWindow))return;const O=crypto.randomUUID();await new Promise($=>{var de;let Z=!1;const ce=be=>{var je,it;be.origin===window.location.origin&&((je=be.data)==null?void 0:je.type)===ve.INLINE_FLUSHED&&((it=be.data)==null?void 0:it.requestId)===O&&(Z=!0,window.removeEventListener("message",ce),$())};window.addEventListener("message",ce),(de=z.contentWindow)==null||de.postMessage({type:ve.REQUEST_INLINE_FLUSH,requestId:O},"*"),window.setTimeout(()=>{Z||(window.removeEventListener("message",ce),$())},400)})},[]),At=b.useCallback(async(z,O)=>{var de;if(!f)throw new Error("saveToFile is not configured for this tenant.");const $=It({pages:{[v]:z},siteConfig:O,themeConfig:o,menuConfig:n,refDocuments:i}),Z=(de=$.siteConfig.header)==null?void 0:de.data,ce={page:z,site:O,menu:{main:Ei(Z,n.main)},theme:$.themeConfig};await f(ce,v),j(!1),E(!0),typeof window<"u"&&window.setTimeout(()=>E(!1),2500)},[f,v,o,n,i]),Wr=b.useCallback(async(z,O)=>{var Re,Le;if(!f)throw new Error("WebMCP requires saveToFile persistence in Studio mode.");if(!ji(O)||typeof O.sectionId!="string")throw new Error("WebMCP mutation requires a sectionId.");const $=O,Z=typeof $.slug=="string"?Fr($.slug):v;if(Z!==v)throw new Error(`WebMCP slug mismatch. Active Studio slug is "${v}", received "${Z}".`);await ot();const ce=te.current,de=F.current;if(!ce)throw new Error("Studio draft is not ready yet.");const be=t[z];if(!be||typeof be.parse!="function")throw new Error(`Missing schema for section type "${z}".`);const je=$.scope==="global"?"global":"local";let it=ce,Ce=de;if(je==="global"){const Se=((Re=de.header)==null?void 0:Re.id)===$.sectionId?de.header:((Le=de.footer)==null?void 0:Le.id)===$.sectionId?de.footer:null;if(!Se)throw new Error(`Global section "${$.sectionId}" was not found.`);if(Se.type!==z)throw new Error(`Section "${$.sectionId}" is type "${Se.type}", not "${z}".`);const $e=ji(Se.data)?Se.data:{},De=Si($e,$),Ke=be.parse(De),Ue={...Se,data:Ke};Ce={...de,...Se.type==="header"?{header:Ue}:{footer:Ue}},F.current=Ce,Y(Ce)}else{const Se=ce.sections.find(Ue=>Ue.id===$.sectionId);if(!Se)throw new Error(`Local section "${$.sectionId}" was not found in page "${v}".`);if(Se.type!==z)throw new Error(`Section "${$.sectionId}" is type "${Se.type}", not "${z}".`);const $e=ji(Se.data)?Se.data:{},De=Si($e,$),Ke=be.parse(De);it={...ce,sections:ce.sections.map(Ue=>Ue.id===$.sectionId?{...Ue,data:Ke}:Ue)},te.current=it,S(it)}return U({id:$.sectionId,type:z,scope:je}),T(Array.isArray($.itemPath)?$.itemPath:null),j(!0),await At(it,Ce),{content:[{type:"text",text:JSON.stringify({ok:!0,slug:v,sectionId:$.sectionId,sectionType:z,scope:je})}],isError:!1}},[f,v,ot,t,At]);async function _(z,O){const $=Cc(z);if(!$)throw new Error(`Unknown WebMCP tool "${z}".`);return Wr($,O)}const ee=async()=>{var de;if(!f)return;await ot();const z=te.current,O=F.current;if(!z)return;const $=It({pages:{[v]:z},siteConfig:O,themeConfig:o,menuConfig:n,refDocuments:i}),Z=(de=$.siteConfig.header)==null?void 0:de.data,ce={page:z,site:O,menu:{main:Ei(Z,n.main)},theme:$.themeConfig};f(ce,v).then(()=>{j(!1),E(!0),typeof window<"u"&&window.setTimeout(()=>E(!1),2500)}).catch(be=>{console.error("[JsonPages] saveToFile failed",be);const je=be instanceof Error?be.message:String(be);alert(`Save to file failed: ${je}`)})},ie=async()=>{var de;if(!h)return;await ot();const z=te.current,O=F.current;if(!z)return;const $=It({pages:{[v]:z},siteConfig:O,themeConfig:o,menuConfig:n,refDocuments:i}),Z=(de=$.siteConfig.header)==null?void 0:de.data,ce={page:z,site:O,menu:{main:Ei(Z,n.main)},theme:$.themeConfig};L(!0),h(ce,v).then(()=>{j(!1),R(!0),typeof window<"u"&&window.setTimeout(()=>R(!1),2500)}).catch(be=>{console.error("[JsonPages] hotSave failed",be);const je=be instanceof Error?be.message:String(be);alert(`Hot save failed: ${je}`)}).finally(()=>{L(!1)})},fe=z=>{var Z;if(!x)return;const O=((Z=l==null?void 0:l.getDefaultSectionData)==null?void 0:Z.call(l,z))??{},$={id:crypto.randomUUID(),type:z,data:O,settings:void 0};S({...x,sections:[...x.sections,$]}),j(!0),U({id:$.id,type:z,scope:"local"})};if(b.useEffect(()=>{var Z,ce;const z=J??x,O=typeof((Z=z==null?void 0:z.meta)==null?void 0:Z.title)=="string"?z.meta.title:v,$=typeof((ce=z==null?void 0:z.meta)==null?void 0:ce.description)=="string"?z.meta.description:"";to("mcp-manifest",zc(v)),to("olon-contract",Pc(v)),Tc(O,$,`/admin${v==="home"?"":`/${v}`}`)},[x,J,v]),!x)return c.jsx("div",{children:"Loading Studio..."});const Ie=(H==null?void 0:H.scope)==="global"?{sections:[P.siteConfig.header,P.siteConfig.footer].filter(z=>z!=null)}:J??x,ye=[...P.siteConfig.header?[P.siteConfig.header]:[],...((Ee=J??x)==null?void 0:Ee.sections)??[],...P.siteConfig.footer?[P.siteConfig.footer]:[]];return c.jsx(on,{mode:"admin",tenantCss:s,adminCss:a,children:c.jsx(Xr,{mode:"studio",children:c.jsxs("div",{className:"flex flex-col h-screen w-screen bg-background text-foreground overflow-hidden",children:[c.jsxs("div",{className:"flex flex-1 min-h-0 overflow-hidden",children:[c.jsx("main",{className:"flex-1 min-w-0 relative bg-zinc-900/50 overflow-hidden",children:c.jsx(gc,{draft:J??x,globalDraft:P.siteConfig,menuConfig:P.menuConfig,themeConfig:P.themeConfig,slug:v,selectedId:H==null?void 0:H.id,scrollToSectionId:A,onScrollRequested:Xe})}),c.jsxs("div",{className:"flex shrink-0 relative h-full z-10",style:{width:me,minWidth:ne,maxWidth:Q},children:[c.jsx("div",{role:"separator","aria-label":"Resize inspector",className:"absolute left-0 top-0 bottom-0 w-1.5 cursor-col-resize hover:bg-primary/40 active:bg-primary/60 transition-colors shrink-0",style:{zIndex:9999},onPointerDown:xe}),c.jsx(mc,{selectedSection:H,pageData:Ie,allSectionsData:ye,onUpdate:Ve,onUpdateSection:mt,onClose:()=>{U(null),T(null)},expandedItemPath:B,onReorderSection:x?(z,O)=>Oe(z,O,x):void 0,allLayers:ge,activeSectionId:X,onRequestScrollToSection:Nt,onDeleteSection:x?He:void 0,onAddSection:d.length>0?()=>G(!0):void 0,hasChanges:C,onSaveToFile:f!=null?ee:void 0,saveSuccessFeedback:N,onHotSave:h!=null?ie:void 0,hotSaveSuccessFeedback:D,hotSaveInProgress:I,showLegacySave:p,showHotSave:w,onResetToFile:ze,pageSlugs:k,currentSlug:v,onPageChange:k.length>1?z=>{const O=Fr(z);y(O==="home"?"/admin":`/admin/${O}`)}:void 0})]})]}),c.jsx(wc,{open:q,onClose:()=>G(!1),sectionTypes:d,sectionTypeLabels:l==null?void 0:l.sectionTypeLabels,onSelect:fe})]})})})},Dc=({tenantCss:e,adminCss:t})=>c.jsx(on,{mode:"tenant",tenantCss:e,adminCss:t,children:c.jsx(xc,{})});function E0({config:e}){var k,x,S,C,j;const{registry:t={},schemas:r={},pages:n={},siteConfig:o,themeConfig:i,menuConfig:s,refDocuments:a,themeCss:l,addSection:d,NotFoundComponent:u=yc}=e,f=(d==null?void 0:d.addableSectionTypes)??Object.keys(r).filter(N=>N!=="header"&&N!=="footer"),h={saveToFile:(k=e.persistence)==null?void 0:k.saveToFile,hotSave:(x=e.persistence)==null?void 0:x.hotSave,showLegacySave:((S=e.persistence)==null?void 0:S.showLegacySave)??!0,showHotSave:((C=e.persistence)==null?void 0:C.showHotSave)??!1},p=typeof(l==null?void 0:l.tenant)=="string"?l.tenant:"",w=typeof(l==null?void 0:l.admin)=="string"?l.admin:S0,m=b.useMemo(()=>It({pages:n,siteConfig:o,themeConfig:i,menuConfig:s,refDocuments:a}),[n,o,i,s,a]),[v,y]=b.useState(!1);return b.useEffect(()=>{var N,E;try{(N=m.themeConfig)!=null&&N.tokens&&Qn.setTheme(m.themeConfig)}catch(D){console.warn("[JsonPages] setTheme failed",D)}(E=e.webmcp)!=null&&E.enabled&&eo(),y(!0)},[m.themeConfig,(j=e.webmcp)==null?void 0:j.enabled]),v?c.jsx(C0,{children:c.jsx(Zi,{config:{registry:t,schemas:r,tenantId:e.tenantId??"default",assets:e.assets,overlayDisabledSectionTypes:e.overlayDisabledSectionTypes},children:c.jsx(Je.BrowserRouter,{children:c.jsxs(Je.Routes,{children:[c.jsx(Je.Route,{path:"/",element:c.jsx(Oc,{pageRegistry:n,siteConfig:o,menuConfig:s,themeConfig:m.themeConfig,refDocuments:a,tenantCss:p,adminCss:w,NotFoundComponent:u})}),c.jsx(Je.Route,{path:"/*",element:c.jsx(Oc,{pageRegistry:n,siteConfig:o,menuConfig:s,themeConfig:m.themeConfig,refDocuments:a,tenantCss:p,adminCss:w,NotFoundComponent:u})}),c.jsx(Je.Route,{path:"/admin",element:c.jsx(Ic,{pageRegistry:n,schemas:r,siteConfig:o,menuConfig:s,themeConfig:m.themeConfig,refDocuments:a,tenantCss:p,adminCss:w,addSectionConfig:d,addableSectionTypes:f,webMcp:e.webmcp,saveToFile:h.saveToFile,hotSave:h.hotSave,showLegacySave:h.showLegacySave,showHotSave:h.showHotSave})}),c.jsx(Je.Route,{path:"/admin/*",element:c.jsx(Ic,{pageRegistry:n,schemas:r,siteConfig:o,menuConfig:s,themeConfig:m.themeConfig,refDocuments:a,tenantCss:p,adminCss:w,addSectionConfig:d,addableSectionTypes:f,webMcp:e.webmcp,saveToFile:h.saveToFile,hotSave:h.hotSave,showLegacySave:h.showLegacySave,showHotSave:h.showHotSave})}),c.jsx(Je.Route,{path:"/admin/preview",element:c.jsx(Dc,{tenantCss:p,adminCss:w})}),c.jsx(Je.Route,{path:"/admin/preview/*",element:c.jsx(Dc,{tenantCss:p,adminCss:w})}),c.jsx(Je.Route,{path:"*",element:c.jsx(u,{})})]})})})}):c.jsx("div",{style:{minHeight:"100vh",display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"#0f172a",color:"#94a3b8",fontFamily:"ui-sans-serif, system-ui, sans-serif",fontSize:14},children:"Loading..."})}ae.AddSectionLibrary=wc,ae.AdminSidebar=mc,ae.ConfigProvider=Zi,ae.DefaultNotFound=yc,ae.FormFactory=Ir,ae.InputWidgets=ir,ae.JsonPagesEngine=E0,ae.PageRenderer=fo,ae.PreviewEntry=xc,ae.STUDIO_EVENTS=ve,ae.SectionRenderer=hr,ae.StudioProvider=Xr,ae.StudioStage=gc,ae.ThemeLoader=on,ae.applyValueAtSelectionPath=ki,ae.buildWebMcpToolName=yi,ae.cn=oe,ae.createWebMcpToolInputSchema=Ec,ae.ensureWebMcpRuntime=eo,ae.parseWebMcpToolName=Cc,ae.registerWebMcpTool=Nc,ae.resolveAssetUrl=Ul,ae.resolveHeaderMenuItems=rn,ae.resolveRuntimeConfig=It,ae.resolveSectionMenuItems=nn,ae.resolveWebMcpMutationData=Si,ae.shouldRenderSiteGlobalHeader=Ti,ae.themeManager=Qn,ae.useConfig=pr,ae.useStudio=es,Object.defineProperty(ae,Symbol.toStringTag,{value:"Module"})}));