vendor: 5,690 bytes, lines 1-9
1var xd=e=>{throw TypeError(e)};var us=(e,t,i)=>t.has(e)||xd("Cannot "+i);var k=(e,t,i)=>(us(e,t,"read from private field"),i?i.call(e):t.get(e)),Y=(e,t,i)=>t.has(e)?xd("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,i),G=(e,t,i,n)=>(us(e,t,"write to private field"),n?n.call(e,i):t.set(e,i),i),ke=(e,t,i)=>(us(e,t,"access private method"),i);var vo=(e,t,i,n)=>({set _(r){G(e,t,r,i)},get _(){return k(e,t,n)}});function Ch(e,t){for(var i=0;i<t.length;i++){const n=t[i];if(typeof n!="string"&&!Array.isArray(n)){for(const r in n)if(r!=="default"&&!(r in e)){const o=Object.getOwnPropertyDescriptor(n,r);o&&Object.defineProperty(e,r,o.get?o:{enumerable:!0,get:()=>n[r]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))n(r);new MutationObserver(r=>{for(const o of r)if(o.type==="childList")for(const a of o.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&n(a)}).observe(document,{childList:!0,subtree:!0});function i(r){const o={};return r.integrity&&(o.integrity=r.integrity),r.referrerPolicy&&(o.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?o.credentials="include":r.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function n(r){if(r.ep)return;r.ep=!0;const o=i(r);fetch(r.href,o)}})();function yp(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var bp={exports:{}},Ta={},wp={exports:{}},Q={};/** 2 * @license React 3 * react.production.min.js 4 * 5 * Copyright (c) Facebook, Inc. and its affiliates. 6 * 7 * This source code is licensed under the MIT license found in the 8 * LICENSE file in the root directory of this source tree. 9 */var oo=Symbol.for("react.element"),Ah=Symbol.for("react.portal"),Ih=Symbol.for("react.fragment"),kh=Symbol.for("react.strict_mode"),Eh=Symbol.for("react.profiler"),Rh=Symbol.for("react.provider"),zh=Symbol.for("react.context"),Ph=Symbol.for("react.forward_ref"),Th=Symbol.for("react.suspense"),Lh=Symbol.for("react.memo"),Nh=Symbol.for("react.lazy"),yd=Symbol.iterator;function Mh(e){return e===null||typeof e!="object"?null:(e=yd&&e[yd]||e["@@iterator"],typeof e=="function"?e:null)}var Sp={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Cp=Object.assign,Ap={};function er(e,t,i){this.props=e,this.context=t,this.refs=Ap,this.updater=i||Sp}er.prototype.isReactComponent={};er.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};er.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function Ip(){}Ip.prototype=er.prototype;function Jl(e,t,i){this.props=e,this.context=t,this.refs=Ap,this.updater=i||Sp}var ec=Jl.prototype=new Ip;ec.constructor=Jl;Cp(ec,er.prototype);ec.isPureReactComponent=!0;var bd=Array.isArray,kp=Object.prototype.hasOwnProperty,tc={current:null},Ep={key:!0,ref:!0,__self:!0,__source:!0};function Rp(e,t,i){var n,r={},o=null,a=null;if(t!=null)for(n in t.ref!==void 0&&(a=t.ref),t.key!==void 0&&(o=""+t.key),t)kp.call(t,n)&&!Ep.hasOwnProperty(n)&&(r[n]=t[n]);var s=arguments.length-2;if(s===1)r.children=i;else if(1<s){for(var l=Array(s),c=0;c<s;c++)l[c]=arguments[c+2];r.children=l}if(e&&e.defaultProps)for(n in s=e.defaultProps,s)r[n]===void 0&&(r[n]=s[n]);return{$$typeof:oo,type:e,key:o,ref:a,props:r,_owner:tc.current}}function Oh(e,t){return{$$typeof:oo,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}function ic(e){return typeof e=="object"&&e!==null&&e.$$typeof===oo}function Uh(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,function(i){return t[i]})}var wd=/\/+/g;function ps(e,t){return typeof e=="object"&&e!==null&&e.key!=null?Uh(""+e.key):t.toString(36)}function Fo(e,t,i,n,r){var o=typeof e;(o==="undefined"||o==="boolean")&&(e=null);var a=!1;if(e===null)a=!0;else switch(o){case"string":case"number":a=!0;break;case"object":switch(e.$$typeof){case oo:case Ah:a=!0}}if(a)return a=e,r=r(a),e=n===""?"."+ps(a,0):n,bd(r)?(i="",e!=null&&(i=e.replace(wd,"$&/")+"/"),Fo(r,t,i,"",function(c){return c})):r!=null&&(ic(r)&&(r=Oh(r,i+(!r.key||a&&a.key===r.key?"":(""+r.key).replace(wd,"$&/")+"/")+e)),t.push(r)),1;if(a=0,n=n===""?".":n+":",bd(e))for(var s=0;s<e.length;s++){o=e[s];var l=n+ps(o,s);a+=Fo(o,t,i,l,r)}else if(l=Mh(e),typeof l=="function")for(e=l.call(e),s=0;!(o=e.next()).done;)o=o.value,l=n+ps(o,s++),a+=Fo(o,t,i,l,r);else if(o==="object")throw t=String(e),Error("Objects are not valid as a React child (found: "+(t==="[object Object]"?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.");return a}function xo(e,t,i){if(e==null)return e;var n=[],r=0;return Fo(e,n,"","",function(o){return t.call(i,o,r++)}),n}function jh(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(i){(e._status===0||e._status===-1)&&(e._status=1,e._result=i)},function(i){(e._status===0||e._status===-1)&&(e._status=2,e._result=i)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var Ue={current:null},_o={transition:null},Bh={ReactCurrentDispatcher:Ue,ReactCurrentBatchConfig:_o,ReactCurrentOwner:tc};function zp(){throw Error("act(...) is not supported in production builds of React.")}
vendor: 5,411 bytes, lines 9-25
9Q.Children={map:xo,forEach:function(e,t,i){xo(e,function(){t.apply(this,arguments)},i)},count:function(e){var t=0;return xo(e,function(){t++}),t},toArray:function(e){return xo(e,function(t){return t})||[]},only:function(e){if(!ic(e))throw Error("React.Children.only expected to receive a single React element child.");return e}};Q.Component=er;Q.Fragment=Ih;Q.Profiler=Eh;Q.PureComponent=Jl;Q.StrictMode=kh;Q.Suspense=Th;Q.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=Bh;Q.act=zp;Q.cloneElement=function(e,t,i){if(e==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var n=Cp({},e.props),r=e.key,o=e.ref,a=e._owner;if(t!=null){if(t.ref!==void 0&&(o=t.ref,a=tc.current),t.key!==void 0&&(r=""+t.key),e.type&&e.type.defaultProps)var s=e.type.defaultProps;for(l in t)kp.call(t,l)&&!Ep.hasOwnProperty(l)&&(n[l]=t[l]===void 0&&s!==void 0?s[l]:t[l])}var l=arguments.length-2;if(l===1)n.children=i;else if(1<l){s=Array(l);for(var c=0;c<l;c++)s[c]=arguments[c+2];n.children=s}return{$$typeof:oo,type:e.type,key:r,ref:o,props:n,_owner:a}};Q.createContext=function(e){return e={$$typeof:zh,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},e.Provider={$$typeof:Rh,_context:e},e.Consumer=e};Q.createElement=Rp;Q.createFactory=function(e){var t=Rp.bind(null,e);return t.type=e,t};Q.createRef=function(){return{current:null}};Q.forwardRef=function(e){return{$$typeof:Ph,render:e}};Q.isValidElement=ic;Q.lazy=function(e){return{$$typeof:Nh,_payload:{_status:-1,_result:e},_init:jh}};Q.memo=function(e,t){return{$$typeof:Lh,type:e,compare:t===void 0?null:t}};Q.startTransition=function(e){var t=_o.transition;_o.transition={};try{e()}finally{_o.transition=t}};Q.unstable_act=zp;Q.useCallback=function(e,t){return Ue.current.useCallback(e,t)};Q.useContext=function(e){return Ue.current.useContext(e)};Q.useDebugValue=function(){};Q.useDeferredValue=function(e){return Ue.current.useDeferredValue(e)};Q.useEffect=function(e,t){return Ue.current.useEffect(e,t)};Q.useId=function(){return Ue.current.useId()};Q.useImperativeHandle=function(e,t,i){return Ue.current.useImperativeHandle(e,t,i)};Q.useInsertionEffect=function(e,t){return Ue.current.useInsertionEffect(e,t)};Q.useLayoutEffect=function(e,t){return Ue.current.useLayoutEffect(e,t)};Q.useMemo=function(e,t){return Ue.current.useMemo(e,t)};Q.useReducer=function(e,t,i){return Ue.current.useReducer(e,t,i)};Q.useRef=function(e){return Ue.current.useRef(e)};Q.useState=function(e){return Ue.current.useState(e)};Q.useSyncExternalStore=function(e,t,i){return Ue.current.useSyncExternalStore(e,t,i)};Q.useTransition=function(){return Ue.current.useTransition()};Q.version="18.3.1";wp.exports=Q;var x=wp.exports;const T=yp(x),Pp=Ch({__proto__:null,default:T},[x]);/** 10 * @license React 11 * react-jsx-runtime.production.min.js 12 * 13 * Copyright (c) Facebook, Inc. and its affiliates. 14 * 15 * This source code is licensed under the MIT license found in the 16 * LICENSE file in the root directory of this source tree. 17 */var Dh=x,Fh=Symbol.for("react.element"),_h=Symbol.for("react.fragment"),Gh=Object.prototype.hasOwnProperty,Hh=Dh.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,$h={key:!0,ref:!0,__self:!0,__source:!0};function Tp(e,t,i){var n,r={},o=null,a=null;i!==void 0&&(o=""+i),t.key!==void 0&&(o=""+t.key),t.ref!==void 0&&(a=t.ref);for(n in t)Gh.call(t,n)&&!$h.hasOwnProperty(n)&&(r[n]=t[n]);if(e&&e.defaultProps)for(n in t=e.defaultProps,t)r[n]===void 0&&(r[n]=t[n]);return{$$typeof:Fh,type:e,key:o,ref:a,props:r,_owner:Hh.current}}Ta.Fragment=_h;Ta.jsx=Tp;Ta.jsxs=Tp;bp.exports=Ta;var I=bp.exports,Lp={exports:{}},Xe={},Np={exports:{}},Mp={};/** 18 * @license React 19 * scheduler.production.min.js 20 * 21 * Copyright (c) Facebook, Inc. and its affiliates. 22 * 23 * This source code is licensed under the MIT license found in the 24 * LICENSE file in the root directory of this source tree. 25 */(function(e){function t(E,R){var O=E.length;E.push(R);e:for(;0<O;){var $=O-1>>>1,B=E[$];if(0<r(B,R))E[$]=R,E[O]=B,O=$;else break e}}function i(E){return E.length===0?null:E[0]}function n(E){if(E.length===0)return null;var R=E[0],O=E.pop();if(O!==R){E[0]=O;e:for(var $=0,B=E.length,q=B>>>1;$<q;){var K=2*($+1)-1,fe=E[K],Ie=K+1,J=E[Ie];if(0>r(fe,O))Ie<B&&0>r(J,fe)?(E[$]=J,E[Ie]=O,$=Ie):(E[$]=fe,E[K]=O,$=K);else if(Ie<B&&0>r(J,O))E[$]=J,E[Ie]=O,$=Ie;else break e}}return R}function r(E,R){var O=E.sortIndex-R.sortIndex;return O!==0?O:E.id-R.id}if(typeof performance=="object"&&typeof performance.now=="function"){var o=performance;e.unstable_now=function(){return o.now()}}else{var a=Date,s=a.now();e.unstable_now=function(){return a.now()-s}}var l=[],c=[],u=1,p=null,g=3,d=!1,y=!1,h=!1,b=typeof setTimeout=="function"?setTimeout:null,m=typeof clearTimeout=="function"?clearTimeout:null,f=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function v(E){for(var R=i(c);R!==null;){if(R.callback===null)n(c);else if(R.startTime<=E)n(c),R.sortIndex=R.expirationTime,t(l,R);else break;R=i(c)}}function w(E){if(h=!1,v(E),!y)if(i(l)!==null)y=!0,F(S);else{var R=i(c);R!==null&&H(w,R.startTime-E)}}function S(E,R){y=!1,h&&(h=!1,m(z),z=-1),d=!0;var O=g;try{for(v(R),p=i(l);p!==null&&(!(p.expirationTime>
vendor: 9,184 bytes, lines 25-34
25R)||E&&!D());){var $=p.callback;if(typeof $=="function"){p.callback=null,g=p.priorityLevel;var B=$(p.expirationTime<=R);R=e.unstable_now(),typeof B=="function"?p.callback=B:p===i(l)&&n(l),v(R)}else n(l);p=i(l)}if(p!==null)var q=!0;else{var K=i(c);K!==null&&H(w,K.startTime-R),q=!1}return q}finally{p=null,g=O,d=!1}}var C=!1,A=null,z=-1,N=5,L=-1;function D(){return!(e.unstable_now()-L<N)}function j(){if(A!==null){var E=e.unstable_now();L=E;var R=!0;try{R=A(!0,E)}finally{R?W():(C=!1,A=null)}}else C=!1}var W;if(typeof f=="function")W=function(){f(j)};else if(typeof MessageChannel<"u"){var M=new MessageChannel,Z=M.port2;M.port1.onmessage=j,W=function(){Z.postMessage(null)}}else W=function(){b(j,0)};function F(E){A=E,C||(C=!0,W())}function H(E,R){z=b(function(){E(e.unstable_now())},R)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(E){E.callback=null},e.unstable_continueExecution=function(){y||d||(y=!0,F(S))},e.unstable_forceFrameRate=function(E){0>E||125<E?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):N=0<E?Math.floor(1e3/E):5},e.unstable_getCurrentPriorityLevel=function(){return g},e.unstable_getFirstCallbackNode=function(){return i(l)},e.unstable_next=function(E){switch(g){case 1:case 2:case 3:var R=3;break;default:R=g}var O=g;g=R;try{return E()}finally{g=O}},e.unstable_pauseExecution=function(){},e.unstable_requestPaint=function(){},e.unstable_runWithPriority=function(E,R){switch(E){case 1:case 2:case 3:case 4:case 5:break;default:E=3}var O=g;g=E;try{return R()}finally{g=O}},e.unstable_scheduleCallback=function(E,R,O){var $=e.unstable_now();switch(typeof O=="object"&&O!==null?(O=O.delay,O=typeof O=="number"&&0<O?$+O:$):O=$,E){case 1:var B=-1;break;case 2:B=250;break;case 5:B=1073741823;break;case 4:B=1e4;break;default:B=5e3}return B=O+B,E={id:u++,callback:R,priorityLevel:E,startTime:O,expirationTime:B,sortIndex:-1},O>$?(E.sortIndex=O,t(c,E),i(l)===null&&E===i(c)&&(h?(m(z),z=-1):h=!0,H(w,O-$))):(E.sortIndex=B,t(l,E),y||d||(y=!0,F(S))),E},e.unstable_shouldYield=D,e.unstable_wrapCallback=function(E){var R=g;return function(){var O=g;g=R;try{return E.apply(this,arguments)}finally{g=O}}}})(Mp);Np.exports=Mp;var Vh=Np.exports;/** 26 * @license React 27 * react-dom.production.min.js 28 * 29 * Copyright (c) Facebook, Inc. and its affiliates. 30 * 31 * This source code is licensed under the MIT license found in the 32 * LICENSE file in the root directory of this source tree. 33 */var Wh=x,Ke=Vh;function P(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,i=1;i<arguments.length;i++)t+="&args[]="+encodeURIComponent(arguments[i]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var Op=new Set,Mr={};function sn(e,t){Vn(e,t),Vn(e+"Capture",t)}function Vn(e,t){for(Mr[e]=t,e=0;e<t.length;e++)Op.add(t[e])}var Vt=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Ws=Object.prototype.hasOwnProperty,qh=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,Sd={},Cd={};function Qh(e){return Ws.call(Cd,e)?!0:Ws.call(Sd,e)?!1:qh.test(e)?Cd[e]=!0:(Sd[e]=!0,!1)}function Zh(e,t,i,n){if(i!==null&&i.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return n?!1:i!==null?!i.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function Kh(e,t,i,n){if(t===null||typeof t>"u"||Zh(e,t,i,n))return!0;if(n)return!1;if(i!==null)switch(i.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function je(e,t,i,n,r,o,a){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=n,this.attributeNamespace=r,this.mustUseProperty=i,this.propertyName=e,this.type=t,this.sanitizeURL=o,this.removeEmptyString=a}var Ae={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){Ae[e]=new je(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];Ae[t]=new je(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){Ae[e]=new je(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){Ae[e]=new je(e,2,!1,e,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){Ae[e]=new je(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){Ae[e]=new je(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){Ae[e]=new je(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){Ae[e]=new je(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){Ae[e]=new je(e,5,!1,e.toLowerCase(),null,!1,!1)});var nc=/[\-:]([a-z])/g;function rc(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(nc,rc);Ae[t]=new je(t,1,!1,e,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(nc,rc);Ae[t]=new je(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(nc,rc);Ae[t]=new je(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){Ae[e]=new je(e,1,!1,e.toLowerCase(),null,!1,!1)});Ae.xlinkHref=new je("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){Ae[e]=new je(e,1,!1,e.toLowerCase(),null,!0,!0)});function oc(e,t,i,n){var r=Ae.hasOwnProperty(t)?Ae[t]:null;(r!==null?r.type!==0:n||!(2<t.length)||t[0]!=="o"&&t[0]!=="O"||t[1]!=="n"&&t[1]!=="N")&&(Kh(t,i,r,n)&&(i=null),n||r===null?Qh(t)&&(i===null?e.removeAttribute(t):e.setAttribute(t,""+i)):r.mustUseProperty?e[r.propertyName]=i===null?r.type===3?!1:"":i:(t=r.attributeName,n=r.attributeNamespace,i===null?e.removeAttribute(t):(r=r.type,i=r===3||r===4&&i===!0?"":""+i,n?e.setAttributeNS(n,t,i):e.setAttribute(t,i))))}var Xt=Wh.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,yo=Symbol.for("react.element"),vn=Symbol.for("react.portal"),xn=Symbol.for("react.fragment"),ac=Symbol.for("react.strict_mode"),qs=Symbol.for("react.profiler"),Up=Symbol.for("react.provider"),jp=Symbol.for("react.context"),sc=Symbol.for("react.forward_ref"),Qs=Symbol.for("react.suspense"),Zs=Symbol.for("react.suspense_list"),lc=Symbol.for("react.memo"),li=Symbol.for("react.lazy"),Bp=Symbol.for("react.offscreen"),Ad=Symbol.iterator;function dr(e){return e===null||typeof e!="object"?null:(e=Ad&&e[Ad]||e["@@iterator"],typeof e=="function"?e:null)}var de=Object.assign,gs;function br(e){if(gs===void 0)try{throw Error()}catch(i){var t=i.stack.trim().match(/\n( *(at )?)/);gs=t&&t[1]||""}return` 34`+gs+e}var fs=!1;function ms(e,t){if(!e||fs)return"";fs=!0;var i=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(t,[])}catch(c){var n=c}Reflect.construct(e,[],t)}else{try{t.call()}catch(c){n=c}e.call(t.prototype)}else{try{throw Error()}catch(c){n=c}e()}}
vendor: 5,497 bytes, lines 34-37
34catch(c){if(c&&n&&typeof c.stack=="string"){for(var r=c.stack.split(` 35`),o=n.stack.split(` 36`),a=r.length-1,s=o.length-1;1<=a&&0<=s&&r[a]!==o[s];)s--;for(;1<=a&&0<=s;a--,s--)if(r[a]!==o[s]){if(a!==1||s!==1)do if(a--,s--,0>s||r[a]!==o[s]){var l=` 37`+r[a].replace(" at new "," at ");return e.displayName&&l.includes("<anonymous>")&&(l=l.replace("<anonymous>",e.displayName)),l}while(1<=a&&0<=s);break}}}finally{fs=!1,Error.prepareStackTrace=i}return(e=e?e.displayName||e.name:"")?br(e):""}function Xh(e){switch(e.tag){case 5:return br(e.type);case 16:return br("Lazy");case 13:return br("Suspense");case 19:return br("SuspenseList");case 0:case 2:case 15:return e=ms(e.type,!1),e;case 11:return e=ms(e.type.render,!1),e;case 1:return e=ms(e.type,!0),e;default:return""}}function Ks(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case xn:return"Fragment";case vn:return"Portal";case qs:return"Profiler";case ac:return"StrictMode";case Qs:return"Suspense";case Zs:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case jp:return(e.displayName||"Context")+".Consumer";case Up:return(e._context.displayName||"Context")+".Provider";case sc:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case lc:return t=e.displayName||null,t!==null?t:Ks(e.type)||"Memo";case li:t=e._payload,e=e._init;try{return Ks(e(t))}catch{}}return null}function Yh(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return Ks(t);case 8:return t===ac?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function Ri(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function Dp(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function Jh(e){var t=Dp(e)?"checked":"value",i=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),n=""+e[t];if(!e.hasOwnProperty(t)&&typeof i<"u"&&typeof i.get=="function"&&typeof i.set=="function"){var r=i.get,o=i.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return r.call(this)},set:function(a){n=""+a,o.call(this,a)}}),Object.defineProperty(e,t,{enumerable:i.enumerable}),{getValue:function(){return n},setValue:function(a){n=""+a},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function bo(e){e._valueTracker||(e._valueTracker=Jh(e))}function Fp(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var i=t.getValue(),n="";return e&&(n=Dp(e)?e.checked?"true":"false":e.value),e=n,e!==i?(t.setValue(e),!0):!1}function ta(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function Xs(e,t){var i=t.checked;return de({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:i??e._wrapperState.initialChecked})}function Id(e,t){var i=t.defaultValue==null?"":t.defaultValue,n=t.checked!=null?t.checked:t.defaultChecked;i=Ri(t.value!=null?t.value:i),e._wrapperState={initialChecked:n,initialValue:i,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function _p(e,t){t=t.checked,t!=null&&oc(e,"checked",t,!1)}function Ys(e,t){_p(e,t);var i=Ri(t.value),n=t.type;if(i!=null)n==="number"?(i===0&&e.value===""||e.value!=i)&&(e.value=""+i):e.value!==""+i&&(e.value=""+i);else if(n==="submit"||n==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?Js(e,t.type,i):t.hasOwnProperty("defaultValue")&&Js(e,t.type,Ri(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function kd(e,t,i){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var n=t.type;if(!(n!=="submit"&&n!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,i||t===e.value||(e.value=t),e.defaultValue=t}i=e.name,i!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,i!==""&&(e.name=i)}function Js(e,t,i){(t!=="number"||ta(e.ownerDocument)!==e)&&(i==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+i&&(e.defaultValue=""+i))}var wr=Array.isArray;function zn(e,t,i,n){if(e=e.options,t){t={};for(var r=0;r<i.length;r++)t["$"+i[r]]=!0;for(i=0;i<e.length;i++)r=t.hasOwnProperty("$"+e[i].value),e[i].selected!==r&&(e[i].selected=r),r&&n&&(e[i].defaultSelected=!0)}else{for(i=""+Ri(i),t=null,r=0;r<e.length;r++){if(e[r].value===i){e[r].selected=!0,n&&(e[r].defaultSelected=!0);return}t!==null||e[r].disabled||(t=e[r])}t!==null&&(t.selected=!0)}}function el(e,t){if(t.dangerouslySetInnerHTML!=null)throw Error(P(91));return de({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function Ed(e,t){var i=t.value;if(i==null){if(i=t.children,t=t.defaultValue,i!=null){if(t!=null)throw Error(P(92));
vendor: 12,680 bytes, line 37
37if(wr(i)){if(1<i.length)throw Error(P(93));i=i[0]}t=i}t==null&&(t=""),i=t}e._wrapperState={initialValue:Ri(i)}}function Gp(e,t){var i=Ri(t.value),n=Ri(t.defaultValue);i!=null&&(i=""+i,i!==e.value&&(e.value=i),t.defaultValue==null&&e.defaultValue!==i&&(e.defaultValue=i)),n!=null&&(e.defaultValue=""+n)}function Rd(e){var t=e.textContent;t===e._wrapperState.initialValue&&t!==""&&t!==null&&(e.value=t)}function Hp(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function tl(e,t){return e==null||e==="http://www.w3.org/1999/xhtml"?Hp(t):e==="http://www.w3.org/2000/svg"&&t==="foreignObject"?"http://www.w3.org/1999/xhtml":e}var wo,$p=function(e){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(t,i,n,r){MSApp.execUnsafeLocalFunction(function(){return e(t,i,n,r)})}:e}(function(e,t){if(e.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in e)e.innerHTML=t;else{for(wo=wo||document.createElement("div"),wo.innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=wo.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function Or(e,t){if(t){var i=e.firstChild;if(i&&i===e.lastChild&&i.nodeType===3){i.nodeValue=t;return}}e.textContent=t}var Ar={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},ev=["Webkit","ms","Moz","O"];Object.keys(Ar).forEach(function(e){ev.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Ar[t]=Ar[e]})});function Vp(e,t,i){return t==null||typeof t=="boolean"||t===""?"":i||typeof t!="number"||t===0||Ar.hasOwnProperty(e)&&Ar[e]?(""+t).trim():t+"px"}function Wp(e,t){e=e.style;for(var i in t)if(t.hasOwnProperty(i)){var n=i.indexOf("--")===0,r=Vp(i,t[i],n);i==="float"&&(i="cssFloat"),n?e.setProperty(i,r):e[i]=r}}var tv=de({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function il(e,t){if(t){if(tv[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(P(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(P(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(P(61))}if(t.style!=null&&typeof t.style!="object")throw Error(P(62))}}function nl(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var rl=null;function cc(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var ol=null,Pn=null,Tn=null;function zd(e){if(e=lo(e)){if(typeof ol!="function")throw Error(P(280));var t=e.stateNode;t&&(t=Ua(t),ol(e.stateNode,e.type,t))}}function qp(e){Pn?Tn?Tn.push(e):Tn=[e]:Pn=e}function Qp(){if(Pn){var e=Pn,t=Tn;if(Tn=Pn=null,zd(e),t)for(e=0;e<t.length;e++)zd(t[e])}}function Zp(e,t){return e(t)}function Kp(){}var hs=!1;function Xp(e,t,i){if(hs)return e(t,i);hs=!0;try{return Zp(e,t,i)}finally{hs=!1,(Pn!==null||Tn!==null)&&(Kp(),Qp())}}function Ur(e,t){var i=e.stateNode;if(i===null)return null;var n=Ua(i);if(n===null)return null;i=n[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(n=!n.disabled)||(e=e.type,n=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!n;break e;default:e=!1}if(e)return null;if(i&&typeof i!="function")throw Error(P(231,t,typeof i));return i}var al=!1;if(Vt)try{var ur={};Object.defineProperty(ur,"passive",{get:function(){al=!0}}),window.addEventListener("test",ur,ur),window.removeEventListener("test",ur,ur)}catch{al=!1}function iv(e,t,i,n,r,o,a,s,l){var c=Array.prototype.slice.call(arguments,3);try{t.apply(i,c)}catch(u){this.onError(u)}}var Ir=!1,ia=null,na=!1,sl=null,nv={onError:function(e){Ir=!0,ia=e}};function rv(e,t,i,n,r,o,a,s,l){Ir=!1,ia=null,iv.apply(nv,arguments)}function ov(e,t,i,n,r,o,a,s,l){if(rv.apply(this,arguments),Ir){if(Ir){var c=ia;Ir=!1,ia=null}else throw Error(P(198));na||(na=!0,sl=c)}}function ln(e){var t=e,i=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(i=t.return),e=t.return;while(e)}return t.tag===3?i:null}function Yp(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function Pd(e){if(ln(e)!==e)throw Error(P(188))}function av(e){var t=e.alternate;if(!t){if(t=ln(e),t===null)throw Error(P(188));return t!==e?null:e}for(var i=e,n=t;;){var r=i.return;if(r===null)break;var o=r.alternate;if(o===null){if(n=r.return,n!==null){i=n;continue}break}if(r.child===o.child){for(o=r.child;o;){if(o===i)return Pd(r),e;if(o===n)return Pd(r),t;o=o.sibling}throw Error(P(188))}if(i.return!==n.return)i=r,n=o;else{for(var a=!1,s=r.child;s;){if(s===i){a=!0,i=r,n=o;break}if(s===n){a=!0,n=r,i=o;break}s=s.sibling}if(!a){for(s=o.child;s;){if(s===i){a=!0,i=o,n=r;break}if(s===n){a=!0,n=o,i=r;break}s=s.sibling}if(!a)throw Error(P(189))}}if(i.alternate!==n)throw Error(P(190))}if(i.tag!==3)throw Error(P(188));return i.stateNode.current===i?e:t}function Jp(e){return e=av(e),e!==null?eg(e):null}function eg(e){if(e.tag===5||e.tag===6)return e;for(e=e.child;e!==null;){var t=eg(e);if(t!==null)return t;e=e.sibling}return null}var tg=Ke.unstable_scheduleCallback,Td=Ke.unstable_cancelCallback,sv=Ke.unstable_shouldYield,lv=Ke.unstable_requestPaint,ge=Ke.unstable_now,cv=Ke.unstable_getCurrentPriorityLevel,dc=Ke.unstable_ImmediatePriority,ig=Ke.unstable_UserBlockingPriority,ra=Ke.unstable_NormalPriority,dv=Ke.unstable_LowPriority,ng=Ke.unstable_IdlePriority,La=null,Lt=null;function uv(e){if(Lt&&typeof Lt.onCommitFiberRoot=="function")try{Lt.onCommitFiberRoot(La,e,void 0,(e.current.flags&128)===128)}catch{}}var yt=Math.clz32?Math.clz32:fv,pv=Math.log,gv=Math.LN2;function fv(e){return e>>>=0,e===0?32:31-(pv(e)/gv|0)|0}var So=64,Co=4194304;function Sr(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function oa(e,t){var i=e.pendingLanes;if(i===0)return 0;var n=0,r=e.suspendedLanes,o=e.pingedLanes,a=i&268435455;if(a!==0){var s=a&~r;s!==0?n=Sr(s):(o&=a,o!==0&&(n=Sr(o)))}else a=i&~r,a!==0?n=Sr(a):o!==0&&(n=Sr(o));if(n===0)return 0;if(t!==0&&t!==n&&!(t&r)&&(r=n&-n,o=t&-t,r>=o||r===16&&(o&4194240)!==0))return t;if(n&4&&(n|=i&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=n;0<t;)i=31-yt(t),r=1<<i,n|=e[i],t&=~r;return n}function mv(e,t){switch(e){case 1:case 2:case 4:return t+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function hv(e,t){for(var i=e.suspendedLanes,n=e.pingedLanes,r=e.expirationTimes,o=e.pendingLanes;0<o;){var a=31-yt(o),s=1<<a,l=r[a];l===-1?(!(s&i)||s&n)&&(r[a]=mv(s,t)):l<=t&&(e.expiredLanes|=s),o&=~s}}function ll(e){return e=e.pendingLanes&-1073741825,e!==0?e:e&1073741824?1073741824:0}function rg(){var e=So;return So<<=1,!(So&4194240)&&(So=64),e}function vs(e){for(var t=[],i=0;31>i;i++)t.push(e);return t}function ao(e,t,i){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-yt(t),e[t]=i}function vv(e,t){var i=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var n=e.eventTimes;for(e=e.expirationTimes;0<i;){var r=31-yt(i),o=1<<r;t[r]=0,n[r]=-1,e[r]=-1,i&=~o}}function uc(e,t){var i=e.entangledLanes|=t;for(e=e.entanglements;i;){var n=31-yt(i),r=1<<n;r&t|e[n]&t&&(e[n]|=t),i&=~r}}var ee=0;function og(e){return e&=-e,1<e?4<e?e&268435455?16:536870912:4:1}var ag,pc,sg,lg,cg,cl=!1,Ao=[],bi=null,wi=null,Si=null,jr=new Map,Br=new Map,di=[],xv="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function Ld(e,t){switch(e){case"focusin":case"focusout":bi=null;break;case"dragenter":case"dragleave":wi=null;break;case"mouseover":case"mouseout":Si=null;break;case"pointerover":case"pointerout":jr.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":Br.delete(t.pointerId)}}function pr(e,t,i,n,r,o){return e===null||e.nativeEvent!==o?(e={blockedOn:t,domEventName:i,eventSystemFlags:n,nativeEvent:o,targetContainers:[r]},t!==null&&(t=lo(t),t!==null&&pc(t)),e):(e.eventSystemFlags|=n,t=e.targetContainers,r!==null&&t.indexOf(r)===-1&&t.push(r),e)}function yv(e,t,i,n,r){switch(t){case"focusin":return bi=pr(bi,e,t,i,n,r),!0;case"dragenter":return wi=pr(wi,e,t,i,n,r),!0;case"mouseover":return Si=pr(Si,e,t,i,n,r),!0;case"pointerover":var o=r.pointerId;return jr.set(o,pr(jr.get(o)||null,e,t,i,n,r)),!0;case"gotpointercapture":return o=r.pointerId,Br.set(o,pr(Br.get(o)||null,e,t,i,n,r)),!0}return!1}function dg(e){var t=Gi(e.target);if(t!==null){var i=ln(t);if(i!==null){if(t=i.tag,t===13){if(t=Yp(i),t!==null){e.blockedOn=t,cg(e.priority,function(){sg(i)});return}}else if(t===3&&i.stateNode.current.memoizedState.isDehydrated){e.blockedOn=i.tag===3?i.stateNode.containerInfo:null;return}}}e.blockedOn=null}function Go(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var i=dl(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(i===null){i=e.nativeEvent;var n=new i.constructor(i.type,i);rl=n,i.target.dispatchEvent(n),rl=null}else return t=lo(i),t!==null&&pc(t),e.blockedOn=i,!1;t.shift()}return!0}function Nd(e,t,i){Go(e)&&i.delete(t)}function bv(){cl=!1,bi!==null&&Go(bi)&&(bi=null),wi!==null&&Go(wi)&&(wi=null),Si!==null&&Go(Si)&&(Si=null),jr.forEach(Nd),Br.forEach(Nd)}function gr(e,t){e.blockedOn===t&&(e.blockedOn=null,cl||(cl=!0,Ke.unstable_scheduleCallback(Ke.unstable_NormalPriority,bv)))}function Dr(e){function t(r){return gr(r,e)}if(0<Ao.length){gr(Ao[0],e);for(var i=1;i<Ao.length;i++){var n=Ao[i];n.blockedOn===e&&(n.blockedOn=null)}}for(bi!==null&&gr(bi,e),wi!==null&&gr(wi,e),Si!==null&&gr(Si,e),jr.forEach(t),Br.forEach(t),i=0;i<di.length;i++)n=di[i],n.blockedOn===e&&(n.blockedOn=null);for(;0<di.length&&(i=di[0],i.blockedOn===null);)dg(i),i.blockedOn===null&&di.shift()}var Ln=Xt.ReactCurrentBatchConfig,aa=!0;function wv(e,t,i,n){var r=ee,o=Ln.transition;Ln.transition=null;try{ee=1,gc(e,t,i,n)}finally{ee=r,Ln.transition=o}}function Sv(e,t,i,n){var r=ee,o=Ln.transition;Ln.transition=null;try{ee=4,gc(e,t,i,n)}finally{ee=r,Ln.transition=o}}function gc(e,t,i,n){if(aa){var r=dl(e,t,i,n);if(r===null)Es(e,t,n,sa,i),Ld(e,n);else if(yv(r,e,t,i,n))n.stopPropagation();else if(Ld(e,n),t&4&&-1<xv.indexOf(e)){for(;r!==null;){var o=lo(r);if(o!==null&&ag(o),o=dl(e,t,i,n),o===null&&Es(e,t,n,sa,i),o===r)break;r=o}r!==null&&n.stopPropagation()}else Es(e,t,n,null,i)}}var sa=null;function dl(e,t,i,n){if(sa=null,e=cc(n),e=Gi(e),e!==null)if(t=ln(e),t===null)e=null;else if(i=t.tag,i===13){if(e=Yp(t),e!==null)return e;e=null}else if(i===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null);return sa=e,null}
vendor: 10,401 bytes, line 37
37function ug(e){switch(e){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(cv()){case dc:return 1;case ig:return 4;case ra:case dv:return 16;case ng:return 536870912;default:return 16}default:return 16}}var vi=null,fc=null,Ho=null;function pg(){if(Ho)return Ho;var e,t=fc,i=t.length,n,r="value"in vi?vi.value:vi.textContent,o=r.length;for(e=0;e<i&&t[e]===r[e];e++);var a=i-e;for(n=1;n<=a&&t[i-n]===r[o-n];n++);return Ho=r.slice(e,1<n?1-n:void 0)}function $o(e){var t=e.keyCode;return"charCode"in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function Io(){return!0}function Md(){return!1}function Ye(e){function t(i,n,r,o,a){this._reactName=i,this._targetInst=r,this.type=n,this.nativeEvent=o,this.target=a,this.currentTarget=null;for(var s in e)e.hasOwnProperty(s)&&(i=e[s],this[s]=i?i(o):o[s]);return this.isDefaultPrevented=(o.defaultPrevented!=null?o.defaultPrevented:o.returnValue===!1)?Io:Md,this.isPropagationStopped=Md,this}return de(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var i=this.nativeEvent;i&&(i.preventDefault?i.preventDefault():typeof i.returnValue!="unknown"&&(i.returnValue=!1),this.isDefaultPrevented=Io)},stopPropagation:function(){var i=this.nativeEvent;i&&(i.stopPropagation?i.stopPropagation():typeof i.cancelBubble!="unknown"&&(i.cancelBubble=!0),this.isPropagationStopped=Io)},persist:function(){},isPersistent:Io}),t}var tr={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},mc=Ye(tr),so=de({},tr,{view:0,detail:0}),Cv=Ye(so),xs,ys,fr,Na=de({},so,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:hc,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==fr&&(fr&&e.type==="mousemove"?(xs=e.screenX-fr.screenX,ys=e.screenY-fr.screenY):ys=xs=0,fr=e),xs)},movementY:function(e){return"movementY"in e?e.movementY:ys}}),Od=Ye(Na),Av=de({},Na,{dataTransfer:0}),Iv=Ye(Av),kv=de({},so,{relatedTarget:0}),bs=Ye(kv),Ev=de({},tr,{animationName:0,elapsedTime:0,pseudoElement:0}),Rv=Ye(Ev),zv=de({},tr,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),Pv=Ye(zv),Tv=de({},tr,{data:0}),Ud=Ye(Tv),Lv={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},Nv={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},Mv={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function Ov(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=Mv[e])?!!t[e]:!1}function hc(){return Ov}var Uv=de({},so,{key:function(e){if(e.key){var t=Lv[e.key]||e.key;if(t!=="Unidentified")return t}return e.type==="keypress"?(e=$o(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?Nv[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:hc,charCode:function(e){return e.type==="keypress"?$o(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?$o(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),jv=Ye(Uv),Bv=de({},Na,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),jd=Ye(Bv),Dv=de({},so,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:hc}),Fv=Ye(Dv),_v=de({},tr,{propertyName:0,elapsedTime:0,pseudoElement:0}),Gv=Ye(_v),Hv=de({},Na,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),$v=Ye(Hv),Vv=[9,13,27,32],vc=Vt&&"CompositionEvent"in window,kr=null;Vt&&"documentMode"in document&&(kr=document.documentMode);var Wv=Vt&&"TextEvent"in window&&!kr,gg=Vt&&(!vc||kr&&8<kr&&11>=kr),Bd=" ",Dd=!1;function fg(e,t){switch(e){case"keyup":return Vv.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function mg(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var yn=!1;function qv(e,t){switch(e){case"compositionend":return mg(t);case"keypress":return t.which!==32?null:(Dd=!0,Bd);case"textInput":return e=t.data,e===Bd&&Dd?null:e;default:return null}}function Qv(e,t){if(yn)return e==="compositionend"||!vc&&fg(e,t)?(e=pg(),Ho=fc=vi=null,yn=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return gg&&t.locale!=="ko"?null:t.data;default:return null}}var Zv={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function Fd(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t==="input"?!!Zv[e.type]:t==="textarea"}function hg(e,t,i,n){qp(n),t=la(t,"onChange"),0<t.length&&(i=new mc("onChange","change",null,i,n),e.push({event:i,listeners:t}))}var Er=null,Fr=null;function Kv(e){Eg(e,0)}function Ma(e){var t=Sn(e);if(Fp(t))return e}function Xv(e,t){if(e==="change")return t}var vg=!1;if(Vt){var ws;if(Vt){var Ss="oninput"in document;if(!Ss){var _d=document.createElement("div");_d.setAttribute("oninput","return;"),Ss=typeof _d.oninput=="function"}ws=Ss}else ws=!1;vg=ws&&(!document.documentMode||9<document.documentMode)}function Gd(){Er&&(Er.detachEvent("onpropertychange",xg),Fr=Er=null)}function xg(e){if(e.propertyName==="value"&&Ma(Fr)){var t=[];hg(t,Fr,e,cc(e)),Xp(Kv,t)}}function Yv(e,t,i){e==="focusin"?(Gd(),Er=t,Fr=i,Er.attachEvent("onpropertychange",xg)):e==="focusout"&&Gd()}function Jv(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return Ma(Fr)}function e0(e,t){if(e==="click")return Ma(t)}function t0(e,t){if(e==="input"||e==="change")return Ma(t)}function i0(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var wt=typeof Object.is=="function"?Object.is:i0;function _r(e,t){if(wt(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;var i=Object.keys(e),n=Object.keys(t);if(i.length!==n.length)return!1;for(n=0;n<i.length;n++){var r=i[n];if(!Ws.call(t,r)||!wt(e[r],t[r]))return!1}return!0}function Hd(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function $d(e,t){var i=Hd(e);e=0;for(var n;i;){if(i.nodeType===3){if(n=e+i.textContent.length,e<=t&&n>=t)return{node:i,offset:t-e};e=n}e:{for(;i;){if(i.nextSibling){i=i.nextSibling;break e}i=i.parentNode}i=void 0}i=Hd(i)}}function yg(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?yg(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function bg(){for(var e=window,t=ta();t instanceof e.HTMLIFrameElement;){try{var i=typeof t.contentWindow.location.href=="string"}catch{i=!1}if(i)e=t.contentWindow;else break;t=ta(e.document)}return t}function xc(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function n0(e){var t=bg(),i=e.focusedElem,n=e.selectionRange;if(t!==i&&i&&i.ownerDocument&&yg(i.ownerDocument.documentElement,i)){if(n!==null&&xc(i)){if(t=n.start,e=n.end,e===void 0&&(e=t),"selectionStart"in i)i.selectionStart=t,i.selectionEnd=Math.min(e,i.value.length);else if(e=(t=i.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var r=i.textContent.length,o=Math.min(n.start,r);n=n.end===void 0?o:Math.min(n.end,r),!e.extend&&o>n&&(r=n,n=o,o=r),r=$d(i,o);var a=$d(i,n);r&&a&&(e.rangeCount!==1||e.anchorNode!==r.node||e.anchorOffset!==r.offset||e.focusNode!==a.node||e.focusOffset!==a.offset)&&(t=t.createRange(),t.setStart(r.node,r.offset),e.removeAllRanges(),o>n?(e.addRange(t),e.extend(a.node,a.offset)):(t.setEnd(a.node,a.offset),e.addRange(t)))}}for(t=[],e=i;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof i.focus=="function"&&i.focus(),i=0;i<t.length;i++)e=t[i],e.element.scrollLeft=e.left,e.element.scrollTop=e.top}}var r0=Vt&&"documentMode"in document&&11>=document.documentMode,bn=null,ul=null,Rr=null,pl=!1;function Vd(e,t,i){var n=i.window===i?i.document:i.nodeType===9?i:i.ownerDocument;pl||bn==null||bn!==ta(n)||(n=bn,"selectionStart"in n&&xc(n)?n={start:n.selectionStart,end:n.selectionEnd}:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focu
vendor: 4,501 bytes, line 37
37sNode:n.focusNode,focusOffset:n.focusOffset}),Rr&&_r(Rr,n)||(Rr=n,n=la(ul,"onSelect"),0<n.length&&(t=new mc("onSelect","select",null,t,i),e.push({event:t,listeners:n}),t.target=bn)))}function ko(e,t){var i={};return i[e.toLowerCase()]=t.toLowerCase(),i["Webkit"+e]="webkit"+t,i["Moz"+e]="moz"+t,i}var wn={animationend:ko("Animation","AnimationEnd"),animationiteration:ko("Animation","AnimationIteration"),animationstart:ko("Animation","AnimationStart"),transitionend:ko("Transition","TransitionEnd")},Cs={},wg={};Vt&&(wg=document.createElement("div").style,"AnimationEvent"in window||(delete wn.animationend.animation,delete wn.animationiteration.animation,delete wn.animationstart.animation),"TransitionEvent"in window||delete wn.transitionend.transition);function Oa(e){if(Cs[e])return Cs[e];if(!wn[e])return e;var t=wn[e],i;for(i in t)if(t.hasOwnProperty(i)&&i in wg)return Cs[e]=t[i];return e}var Sg=Oa("animationend"),Cg=Oa("animationiteration"),Ag=Oa("animationstart"),Ig=Oa("transitionend"),kg=new Map,Wd="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function Mi(e,t){kg.set(e,t),sn(t,[e])}for(var As=0;As<Wd.length;As++){var Is=Wd[As],o0=Is.toLowerCase(),a0=Is[0].toUpperCase()+Is.slice(1);Mi(o0,"on"+a0)}Mi(Sg,"onAnimationEnd");Mi(Cg,"onAnimationIteration");Mi(Ag,"onAnimationStart");Mi("dblclick","onDoubleClick");Mi("focusin","onFocus");Mi("focusout","onBlur");Mi(Ig,"onTransitionEnd");Vn("onMouseEnter",["mouseout","mouseover"]);Vn("onMouseLeave",["mouseout","mouseover"]);Vn("onPointerEnter",["pointerout","pointerover"]);Vn("onPointerLeave",["pointerout","pointerover"]);sn("onChange","change click focusin focusout input keydown keyup selectionchange".split(" "));sn("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" "));sn("onBeforeInput",["compositionend","keypress","textInput","paste"]);sn("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" "));sn("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" "));sn("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Cr="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),s0=new Set("cancel close invalid load scroll toggle".split(" ").concat(Cr));function qd(e,t,i){var n=e.type||"unknown-event";e.currentTarget=i,ov(n,t,void 0,e),e.currentTarget=null}function Eg(e,t){t=(t&4)!==0;for(var i=0;i<e.length;i++){var n=e[i],r=n.event;n=n.listeners;e:{var o=void 0;if(t)for(var a=n.length-1;0<=a;a--){var s=n[a],l=s.instance,c=s.currentTarget;if(s=s.listener,l!==o&&r.isPropagationStopped())break e;qd(r,s,c),o=l}else for(a=0;a<n.length;a++){if(s=n[a],l=s.instance,c=s.currentTarget,s=s.listener,l!==o&&r.isPropagationStopped())break e;qd(r,s,c),o=l}}}if(na)throw e=sl,na=!1,sl=null,e}function re(e,t){var i=t[vl];i===void 0&&(i=t[vl]=new Set);var n=e+"__bubble";i.has(n)||(Rg(t,e,2,!1),i.add(n))}function ks(e,t,i){var n=0;t&&(n|=4),Rg(i,e,n,t)}var Eo="_reactListening"+Math.random().toString(36).slice(2);function Gr(e){if(!e[Eo]){e[Eo]=!0,Op.forEach(function(i){i!=="selectionchange"&&(s0.has(i)||ks(i,!1,e),ks(i,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[Eo]||(t[Eo]=!0,ks("selectionchange",!1,t))}}function Rg(e,t,i,n){switch(ug(t)){case 1:var r=wv;break;case 4:r=Sv;break;default:r=gc}i=r.bind(null,t,i,e),r=void 0,!al||t!=="touchstart"&&t!=="touchmove"&&t!=="wheel"||(r=!0),n?r!==void 0?e.addEventListener(t,i,{capture:!0,passive:r}):e.addEventListener(t,i,!0):r!==void 0?e.addEventListener(t,i,{passive:r}):e.addEventListener(t,i,!1)}function Es(e,t,i,n,r){var o=n;if(!(t&1)&&!(t&2)&&n!==null)e:for(;;){if(n===null)return;var a=n.tag;if(a===3||a===4){var s=n.stateNode.containerInfo;
vendor: 34,393 bytes, lines 37-40
37if(s===r||s.nodeType===8&&s.parentNode===r)break;if(a===4)for(a=n.return;a!==null;){var l=a.tag;if((l===3||l===4)&&(l=a.stateNode.containerInfo,l===r||l.nodeType===8&&l.parentNode===r))return;a=a.return}for(;s!==null;){if(a=Gi(s),a===null)return;if(l=a.tag,l===5||l===6){n=o=a;continue e}s=s.parentNode}}n=n.return}Xp(function(){var c=o,u=cc(i),p=[];e:{var g=kg.get(e);if(g!==void 0){var d=mc,y=e;switch(e){case"keypress":if($o(i)===0)break e;case"keydown":case"keyup":d=jv;break;case"focusin":y="focus",d=bs;break;case"focusout":y="blur",d=bs;break;case"beforeblur":case"afterblur":d=bs;break;case"click":if(i.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":d=Od;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":d=Iv;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":d=Fv;break;case Sg:case Cg:case Ag:d=Rv;break;case Ig:d=Gv;break;case"scroll":d=Cv;break;case"wheel":d=$v;break;case"copy":case"cut":case"paste":d=Pv;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":d=jd}var h=(t&4)!==0,b=!h&&e==="scroll",m=h?g!==null?g+"Capture":null:g;h=[];for(var f=c,v;f!==null;){v=f;var w=v.stateNode;if(v.tag===5&&w!==null&&(v=w,m!==null&&(w=Ur(f,m),w!=null&&h.push(Hr(f,w,v)))),b)break;f=f.return}0<h.length&&(g=new d(g,y,null,i,u),p.push({event:g,listeners:h}))}}if(!(t&7)){e:{if(g=e==="mouseover"||e==="pointerover",d=e==="mouseout"||e==="pointerout",g&&i!==rl&&(y=i.relatedTarget||i.fromElement)&&(Gi(y)||y[Wt]))break e;if((d||g)&&(g=u.window===u?u:(g=u.ownerDocument)?g.defaultView||g.parentWindow:window,d?(y=i.relatedTarget||i.toElement,d=c,y=y?Gi(y):null,y!==null&&(b=ln(y),y!==b||y.tag!==5&&y.tag!==6)&&(y=null)):(d=null,y=c),d!==y)){if(h=Od,w="onMouseLeave",m="onMouseEnter",f="mouse",(e==="pointerout"||e==="pointerover")&&(h=jd,w="onPointerLeave",m="onPointerEnter",f="pointer"),b=d==null?g:Sn(d),v=y==null?g:Sn(y),g=new h(w,f+"leave",d,i,u),g.target=b,g.relatedTarget=v,w=null,Gi(u)===c&&(h=new h(m,f+"enter",y,i,u),h.target=v,h.relatedTarget=b,w=h),b=w,d&&y)t:{for(h=d,m=y,f=0,v=h;v;v=hn(v))f++;for(v=0,w=m;w;w=hn(w))v++;for(;0<f-v;)h=hn(h),f--;for(;0<v-f;)m=hn(m),v--;for(;f--;){if(h===m||m!==null&&h===m.alternate)break t;h=hn(h),m=hn(m)}h=null}else h=null;d!==null&&Qd(p,g,d,h,!1),y!==null&&b!==null&&Qd(p,b,y,h,!0)}}e:{if(g=c?Sn(c):window,d=g.nodeName&&g.nodeName.toLowerCase(),d==="select"||d==="input"&&g.type==="file")var S=Xv;else if(Fd(g))if(vg)S=t0;else{S=Jv;var C=Yv}else(d=g.nodeName)&&d.toLowerCase()==="input"&&(g.type==="checkbox"||g.type==="radio")&&(S=e0);if(S&&(S=S(e,c))){hg(p,S,i,u);break e}C&&C(e,g,c),e==="focusout"&&(C=g._wrapperState)&&C.controlled&&g.type==="number"&&Js(g,"number",g.value)}switch(C=c?Sn(c):window,e){case"focusin":(Fd(C)||C.contentEditable==="true")&&(bn=C,ul=c,Rr=null);break;case"focusout":Rr=ul=bn=null;break;case"mousedown":pl=!0;break;case"contextmenu":case"mouseup":case"dragend":pl=!1,Vd(p,i,u);break;case"selectionchange":if(r0)break;case"keydown":case"keyup":Vd(p,i,u)}var A;if(vc)e:{switch(e){case"compositionstart":var z="onCompositionStart";break e;case"compositionend":z="onCompositionEnd";break e;case"compositionupdate":z="onCompositionUpdate";break e}z=void 0}else yn?fg(e,i)&&(z="onCompositionEnd"):e==="keydown"&&i.keyCode===229&&(z="onCompositionStart");z&&(gg&&i.locale!=="ko"&&(yn||z!=="onCompositionStart"?z==="onCompositionEnd"&&yn&&(A=pg()):(vi=u,fc="value"in vi?vi.value:vi.textContent,yn=!0)),C=la(c,z),0<C.length&&(z=new Ud(z,e,null,i,u),p.push({event:z,listeners:C}),A?z.data=A:(A=mg(i),A!==null&&(z.data=A)))),(A=Wv?qv(e,i):Qv(e,i))&&(c=la(c,"onBeforeInput"),0<c.length&&(u=new Ud("onBeforeInput","beforeinput",null,i,u),p.push({event:u,listeners:c}),u.data=A))}Eg(p,t)})}function Hr(e,t,i){return{instance:e,listener:t,currentTarget:i}}function la(e,t){for(var i=t+"Capture",n=[];e!==null;){var r=e,o=r.stateNode;r.tag===5&&o!==null&&(r=o,o=Ur(e,i),o!=null&&n.unshift(Hr(e,o,r)),o=Ur(e,t),o!=null&&n.push(Hr(e,o,r))),e=e.return}return n}function hn(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5);return e||null}function Qd(e,t,i,n,r){for(var o=t._reactName,a=[];i!==null&&i!==n;){var s=i,l=s.alternate,c=s.stateNode;if(l!==null&&l===n)break;s.tag===5&&c!==null&&(s=c,r?(l=Ur(i,o),l!=null&&a.unshift(Hr(i,l,s))):r||(l=Ur(i,o),l!=null&&a.push(Hr(i,l,s)))),i=i.return}a.length!==0&&e.push({event:t,listeners:a})}var l0=/\r\n?/g,c0=/\u0000|\uFFFD/g;function Zd(e){return(typeof e=="string"?e:""+e).replace(l0,` 38`).replace(c0,"")}function Ro(e,t,i){if(t=Zd(t),Zd(e)!==t&&i)throw Error(P(425))}function ca(){}var gl=null,fl=null;function ml(e,t){return e==="textarea"||e==="noscript"||typeof t.children=="string"||typeof t.children=="number"||typeof t.dangerouslySetInnerHTML=="object"&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var hl=typeof setTimeout=="function"?setTimeout:void 0,d0=typeof clearTimeout=="function"?clearTimeout:void 0,Kd=typeof Promise=="function"?Promise:void 0,u0=typeof queueMicrotask=="function"?queueMicrotask:typeof Kd<"u"?function(e){return Kd.resolve(null).then(e).catch(p0)}:hl;function p0(e){setTimeout(function(){throw e})}function Rs(e,t){var i=t,n=0;do{var r=i.nextSibling;if(e.removeChild(i),r&&r.nodeType===8)if(i=r.data,i==="/$"){if(n===0){e.removeChild(r),Dr(t);return}n--}else i!=="$"&&i!=="$?"&&i!=="$!"||n++;i=r}while(i);Dr(t)}function Ci(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t==="$"||t==="$!"||t==="$?")break;if(t==="/$")return null}}return e}function Xd(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var i=e.data;if(i==="$"||i==="$!"||i==="$?"){if(t===0)return e;t--}else i==="/$"&&t++}e=e.previousSibling}return null}var ir=Math.random().toString(36).slice(2),Pt="__reactFiber$"+ir,$r="__reactProps$"+ir,Wt="__reactContainer$"+ir,vl="__reactEvents$"+ir,g0="__reactListeners$"+ir,f0="__reactHandles$"+ir;function Gi(e){var t=e[Pt];if(t)return t;for(var i=e.parentNode;i;){if(t=i[Wt]||i[Pt]){if(i=t.alternate,t.child!==null||i!==null&&i.child!==null)for(e=Xd(e);e!==null;){if(i=e[Pt])return i;e=Xd(e)}return t}e=i,i=e.parentNode}return null}function lo(e){return e=e[Pt]||e[Wt],!e||e.tag!==5&&e.tag!==6&&e.tag!==13&&e.tag!==3?null:e}function Sn(e){if(e.tag===5||e.tag===6)return e.stateNode;throw Error(P(33))}function Ua(e){return e[$r]||null}var xl=[],Cn=-1;function Oi(e){return{current:e}}function oe(e){0>Cn||(e.current=xl[Cn],xl[Cn]=null,Cn--)}function ie(e,t){Cn++,xl[Cn]=e.current,e.current=t}var zi={},Te=Oi(zi),_e=Oi(!1),en=zi;function Wn(e,t){var i=e.type.contextTypes;if(!i)return zi;var n=e.stateNode;if(n&&n.__reactInternalMemoizedUnmaskedChildContext===t)return n.__reactInternalMemoizedMaskedChildContext;var r={},o;for(o in i)r[o]=t[o];return n&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=r),r}function Ge(e){return e=e.childContextTypes,e!=null}function da(){oe(_e),oe(Te)}function Yd(e,t,i){if(Te.current!==zi)throw Error(P(168));ie(Te,t),ie(_e,i)}function zg(e,t,i){var n=e.stateNode;if(t=t.childContextTypes,typeof n.getChildContext!="function")return i;n=n.getChildContext();for(var r in n)if(!(r in t))throw Error(P(108,Yh(e)||"Unknown",r));return de({},i,n)}function ua(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||zi,en=Te.current,ie(Te,e),ie(_e,_e.current),!0}function Jd(e,t,i){var n=e.stateNode;if(!n)throw Error(P(169));i?(e=zg(e,t,en),n.__reactInternalMemoizedMergedChildContext=e,oe(_e),oe(Te),ie(Te,e)):oe(_e),ie(_e,i)}var Ft=null,ja=!1,zs=!1;function Pg(e){Ft===null?Ft=[e]:Ft.push(e)}function m0(e){ja=!0,Pg(e)}function Ui(){if(!zs&&Ft!==null){zs=!0;var e=0,t=ee;try{var i=Ft;for(ee=1;e<i.length;e++){var n=i[e];do n=n(!0);while(n!==null)}Ft=null,ja=!1}catch(r){throw Ft!==null&&(Ft=Ft.slice(e+1)),tg(dc,Ui),r}finally{ee=t,zs=!1}}return null}var An=[],In=0,pa=null,ga=0,it=[],nt=0,tn=null,Gt=1,Ht="";function Fi(e,t){An[In++]=ga,An[In++]=pa,pa=e,ga=t}function Tg(e,t,i){it[nt++]=Gt,it[nt++]=Ht,it[nt++]=tn,tn=e;var n=Gt;e=Ht;var r=32-yt(n)-1;n&=~(1<<r),i+=1;var o=32-yt(t)+r;if(30<o){var a=r-r%5;o=(n&(1<<a)-1).toString(32),n>>=a,r-=a,Gt=1<<32-yt(t)+r|i<<r|n,Ht=o+e}else Gt=1<<o|i<<r|n,Ht=e}function yc(e){e.return!==null&&(Fi(e,1),Tg(e,1,0))}function bc(e){for(;e===pa;)pa=An[--In],An[In]=null,ga=An[--In],An[In]=null;for(;e===tn;)tn=it[--nt],it[nt]=null,Ht=it[--nt],it[nt]=null,Gt=it[--nt],it[nt]=null}var Qe=null,qe=null,se=!1,xt=null;function Lg(e,t){var i=rt(5,null,null,0);i.elementType="DELETED",i.stateNode=t,i.return=e,t=e.deletions,t===null?(e.deletions=[i],e.flags|=16):t.push(i)}function eu(e,t){switch(e.tag){case 5:var i=e.type;return t=t.nodeType!==1||i.toLowerCase()!==t.nodeName.toLowerCase()?null:t,t!==null?(e.stateNode=t,Qe=e,qe=Ci(t.firstChild),!0):!1;case 6:return t=e.pendingProps===""||t.nodeType!==3?null:t,t!==null?(e.stateNode=t,Qe=e,qe=null,!0):!1;case 13:return t=t.nodeType!==8?null:t,t!==null?(i=tn!==null?{id:Gt,overflow:Ht}:null,e.memoizedState={dehydrated:t,treeContext:i,retryLane:1073741824},i=rt(18,null,null,0),i.stateNode=t,i.return=e,e.child=i,Qe=e,qe=null,!0):!1;default:return!1}}function yl(e){return(e.mode&1)!==0&&(e.flags&128)===0}function bl(e){if(se){var t=qe;if(t){var i=t;if(!eu(e,t)){if(yl(e))throw Error(P(418));t=Ci(i.nextSibling);var n=Qe;t&&eu(e,t)?Lg(n,i):(e.flags=e.flags&-4097|2,se=!1,Qe=e)}}else{if(yl(e))throw Error(P(418));e.flags=e.flags&-4097|2,se=!1,Qe=e}}}function tu(e){for(e=e.return;e!==null&&e.tag!==5&&e.tag!==3&&e.tag!==13;)e=e.return;Qe=e}function zo(e){if(e!==Qe)return!1;if(!se)return tu(e),se=!0,!1;var t;if((t=e.tag!==3)&&!(t=e.tag!==5)&&(t=e.type,t=t!=="head"&&t!=="body"&&!ml(e.type,e.memoizedProps)),t&&(t=qe)){if(yl(e))throw Ng(),Error(P(418));for(;t;)Lg(e,t),t=Ci(t.nextSibling)}if(tu(e),e.tag===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(P(317));e:{for(e=e.nextSibling,t=0;e;){if(e.nodeType===8){var i=e.data;if(i==="/$"){if(t===0){qe=Ci(e.nextSibling);break e}t--}else i!=="$"&&i!=="$!"&&i!=="$?"||t++}e=e.nextSibling}qe=null}}else qe=Qe?Ci(e.stateNode.nextSibling):null;return!0}function Ng(){for(var e=qe;e;)e=Ci(e.nextSibling)}function qn(){qe=Qe=null,se=!1}function wc(e){xt===null?xt=[e]:xt.push(e)}var h0=Xt.ReactCurrentBatchConfig;function mr(e,t,i){if(e=i.ref,e!==null&&typeof e!="function"&&typeof e!="object"){if(i._owner){if(i=i._owner,i){if(i.tag!==1)throw Error(P(309));var n=i.stateNode}if(!n)throw Error(P(147,e));var r=n,o=""+e;return t!==null&&t.ref!==null&&typeof t.ref=="function"&&t.ref._stringRef===o?t.ref:(t=function(a){var s=r.refs;a===null?delete s[o]:s[o]=a},t._stringRef=o,t)}if(typeof e!="string")throw Error(P(284));if(!i._owner)throw Error(P(290,e))}return e}function Po(e,t){throw e=Object.prototype.toString.call(t),Error(P(31,e==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":e))}function iu(e){var t=e._init;return t(e._payload)}function Mg(e){function t(m,f){if(e){var v=m.deletions;v===null?(m.deletions=[f],m.flags|=16):v.push(f)}}function i(m,f){if(!e)return null;for(;f!==null;)t(m,f),f=f.sibling;return null}function n(m,f){for(m=new Map;f!==null;)f.key!==null?m.set(f.key,f):m.set(f.index,f),f=f.sibling;return m}function r(m,f){return m=Ei(m,f),m.index=0,m.sibling=null,m}function o(m,f,v){return m.index=v,e?(v=m.alternate,v!==null?(v=v.index,v<f?(m.flags|=2,f):v):(m.flags|=2,f)):(m.flags|=1048576,f)}function a(m){return e&&m.alternate===null&&(m.flags|=2),m}function s(m,f,v,w){return f===null||f.tag!==6?(f=Us(v,m.mode,w),f.return=m,f):(f=r(f,v),f.return=m,f)}function l(m,f,v,w){var S=v.type;return S===xn?u(m,f,v.props.children,w,v.key):f!==null&&(f.elementType===S||typeof S=="object"&&S!==null&&S.$$typeof===li&&iu(S)===f.type)?(w=r(f,v.props),w.ref=mr(m,f,v),w.return=m,w):(w=Xo(v.type,v.key,v.props,null,m.mode,w),w.ref=mr(m,f,v),w.return=m,w)}function c(m,f,v,w){return f===null||f.tag!==4||f.stateNode.containerInfo!==v.containerInfo||f.stateNode.implementation!==v.implementation?(f=js(v,m.mode,w),f.return=m,f):(f=r(f,v.children||[]),f.return=m,f)}function u(m,f,v,w,S){return f===null||f.tag!==7?(f=Yi(v,m.mode,w,S),f.return=m,f):(f=r(f,v),f.return=m,f)}function p(m,f,v){if(typeof f=="string"&&f!==""||typeof f=="number")return f=Us(""+f,m.mode,v),f.return=m,f;if(typeof f=="object"&&f!==null){switch(f.$$typeof){case yo:return v=Xo(f.type,f.key,f.props,null,m.mode,v),v.ref=mr(m,null,f),v.return=m,v;case vn:return f=js(f,m.mode,v),f.return=m,f;case li:var w=f._init;return p(m,w(f._payload),v)}if(wr(f)||dr(f))return f=Yi(f,m.mode,v,null),f.return=m,f;Po(m,f)}return null}function g(m,f,v,w){var S=f!==null?f.key:null;if(typeof v=="string"&&v!==""||typeof v=="number")return S!==null?null:s(m,f,""+v,w);if(typeof v=="object"&&v!==null){switch(v.$$typeof){case yo:return v.key===S?l(m,f,v,w):null;case vn:return v.key===S?c(m,f,v,w):null;case li:return S=v._init,g(m,f,S(v._payload),w)}if(wr(v)||dr(v))return S!==null?null:u(m,f,v,w,null);Po(m,v)}return null}function d(m,f,v,w,S){if(typeof w=="string"&&w!==""||typeof w=="number")return m=m.get(v)||null,s(f,m,""+w,S);if(typeof w=="object"&&w!==null){switch(w.$$typeof){case yo:return m=m.get(w.key===null?v:w.key)||null,l(f,m,w,S);case vn:return m=m.get(w.key===null?v:w.key)||null,c(f,m,w,S);case li:var C=w._init;return d(m,f,v,C(w._payload),S)}if(wr(w)||dr(w))return m=m.get(v)||null,u(f,m,w,S,null);Po(f,w)}return null}function y(m,f,v,w){for(var S=null,C=null,A=f,z=f=0,N=null;A!==null&&z<v.length;z++){A.index>z?(N=A,A=null):N=A.sibling;var L=g(m,A,v[z],w);if(L===null){A===null&&(A=N);break}e&&A&&L.alternate===null&&t(m,A),f=o(L,f,z),C===null?S=L:C.sibling=L,C=L,A=N}if(z===v.length)return i(m,A),se&&Fi(m,z),S;if(A===null){for(;z<v.length;z++)A=p(m,v[z],w),A!==null&&(f=o(A,f,z),C===null?S=A:C.sibling=A,C=A);return se&&Fi(m,z),S}for(A=n(m,A);z<v.length;z++)N=d(A,m,z,v[z],w),N!==null&&(e&&N.alternate!==null&&A.delete(N.key===null?z:N.key),f=o(N,f,z),C===null?S=N:C.sibling=N,C=N);return e&&A.forEach(function(D){return t(m,D)}),se&&Fi(m,z),S}function h(m,f,v,w){var S=dr(v);if(typeof S!="function")throw Error(P(150));if(v=S.call(v),v==null)throw Error(P(151));for(var C=S=null,A=f,z=f=0,N=null,L=v.next();A!==null&&!L.done;z++,L=v.next()){A.index>z?(N=A,A=null):N=A.sibling;var D=g(m,A,L.value,w);if(D===null){A===null&&(A=N);break}e&&A&&D.alternate===null&&t(m,A),f=o(D,f,z),C===null?S=D:C.sibling=D,C=D,A=N}if(L.done)return i(m,A),se&&Fi(m,z),S;if(A===null){for(;!L.done;z++,L=v.next())L=p(m,L.value,w),L!==null&&(f=o(L,f,z),C===null?S=L:C.sibling=L,C=L);return se&&Fi(m,z),S}for(A=n(m,A);!L.done;z++,L=v.next())L=d(A,m,z,L.value,w),L!==null&&(e&&L.alternate!==null&&A.delete(L.key===null?z:L.key),f=o(L,f,z),C===null?S=L:C.sibling=L,C=L);return e&&A.forEach(function(j){return t(m,j)}),se&&Fi(m,z),S}function b(m,f,v,w){if(typeof v=="object"&&v!==null&&v.type===xn&&v.key===null&&(v=v.props.children),typeof v=="object"&&v!==null){switch(v.$$typeof){case yo:e:{for(var S=v.key,C=f;C!==null;){if(C.key===S){if(S=v.type,S===xn){if(C.tag===7){i(m,C.sibling),f=r(C,v.props.children),f.return=m,m=f;break e}}else if(C.elementType===S||typeof S=="object"&&S!==null&&S.$$typeof===li&&iu(S)===C.type){i(m,C.sibling),f=r(C,v.props),f.ref=mr(m,C,v),f.return=m,m=f;break e}i(m,C);break}else t(m,C);C=C.sibling}v.type===xn?(f=Yi(v.props.children,m.mode,w,v.key),f.return=m,m=f):(w=Xo(v.type,v.key,v.props,null,m.mode,w),w.ref=mr(m,f,v),w.return=m,m=w)}return a(m);case vn:e:{for(C=v.key;f!==null;){if(f.key===C)if(f.tag===4&&f.stateNode.containerInfo===v.containerInfo&&f.stateNode.implementation===v.implementation){i(m,f.sibling),f=r(f,v.children||[]),f.return=m,m=f;break e}else{i(m,f);break}else t(m,f);f=f.sibling}f=js(v,m.mode,w),f.return=m,m=f}return a(m);case li:return C=v._init,b(m,f,C(v._payload),w)}if(wr(v))return y(m,f,v,w);if(dr(v))return h(m,f,v,w);Po(m,v)}return typeof v=="string"&&v!==""||typeof v=="number"?(v=""+v,f!==null&&f.tag===6?(i(m,f.sibling),f=r(f,v),f.return=m,m=f):(i(m,f),f=Us(v,m.mode,w),f.return=m,m=f),a(m)):i(m,f)}return b}var Qn=Mg(!0),Og=Mg(!1),fa=Oi(null),ma=null,kn=null,Sc=null;function Cc(){Sc=kn=ma=null}function Ac(e){var t=fa.current;oe(fa),e._currentValue=t}function wl(e,t,i){for(;e!==null;){var n=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,n!==null&&(n.childLanes|=t)):n!==null&&(n.childLanes&t)!==t&&(n.childLanes|=t),e===i)break;e=e.return}}function Nn(e,t){ma=e,Sc=kn=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(Fe=!0),e.firstContext=null)}function at(e){var t=e._currentValue;if(Sc!==e)if(e={context:e,memoizedValue:t,next:null},kn===null){if(ma===null)throw Error(P(308));kn=e,ma.dependencies={lanes:0,firstContext:e}}else kn=kn.next=e;return t}var Hi=null;function Ic(e){Hi===null?Hi=[e]:Hi.push(e)}function Ug(e,t,i,n){var r=t.interleaved;return r===null?(i.next=i,Ic(t)):(i.next=r.next,r.next=i),t.interleaved=i,qt(e,n)}function qt(e,t){e.lanes|=t;var i=e.alternate;for(i!==null&&(i.lanes|=t),i=e,e=e.return;e!==null;)e.childLanes|=t,i=e.alternate,i!==null&&(i.childLanes|=t),i=e,e=e.return;return i.tag===3?i.stateNode:null}var ci=!1;function kc(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function jg(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function $t(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function Ai(e,t,i){var n=e.updateQueue;if(n===null)return null;if(n=n.shared,X&2){var r=n.pending;return r===null?t.next=t:(t.next=r.next,r.next=t),n.pending=t,qt(e,i)}return r=n.interleaved,r===null?(t.next=t,Ic(n)):(t.next=r.next,r.next=t),n.interleaved=t,qt(e,i)}function Vo(e,t,i){if(t=t.updateQueue,t!==null&&(t=t.shared,(i&4194240)!==0)){var n=t.lanes;n&=e.pendingLanes,i|=n,t.lanes=i,uc(e,i)}}function nu(e,t){var i=e.updateQueue,n=e.alternate;if(n!==null&&(n=n.updateQueue,i===n)){var r=null,o=null;if(i=i.firstBaseUpdate,i!==null){do{var a={eventTime:i.eventTime,lane:i.lane,tag:i.tag,payload:i.payload,callback:i.callback,next:null};o===null?r=o=a:o=o.next=a,i=i.next}while(i!==null);o===null?r=o=t:o=o.next=t}else r=o=t;i={baseState:n.baseState,firstBaseUpdate:r,lastBaseUpdate:o,shared:n.shared,effects:n.effects},e.updateQueue=i;return}e=i.lastBaseUpdate,e===null?i.firstBaseUpdate=t:e.next=t,i.lastBaseUpdate=t}function ha(e,t,i,n){var r=e.updateQueue;ci=!1;var o=r.firstBaseUpdate,a=r.lastBaseUpdate,s=r.shared.pending;if(s!==null){r.shared.pending=null;var l=s,c=l.next;l.next=null,a===null?o=c:a.next=c,a=l;var u=e.alternate;u!==null&&(u=u.updateQueue,s=u.lastBaseUpdate,s!==a&&(s===null?u.firstBaseUpdate=c:s.next=c,u.lastBaseUpdate=l))}if(o!==null){var p=r.baseState;a=0,u=c=l=null,s=o;do{var g=s.lane,d=s.eventTime;if((n&g)===g){u!==null&&(u=u.next={eventTime:d,lane:0,tag:s.tag,payload:s.payload,callback:s.callback,next:null});e:{var y=e,h=s;switch(g=t,d=i,h.tag){case 1:if(y=h.payload,typeof y=="function"){p=y.call(d,p,g);break e}p=y;break e;case 3:y.flags=y.flags&-65537|128;case 0:if(y=h.payload,g=typeof y=="function"?y.call(d,p,g):y,g==null)break e;p=de({},p,g);break e;case 2:ci=!0}}s.callback!==null&&s.lane!==0&&(e.flags|=64,g=r.effects,g===null?r.effects=[s]:g.push(s))}else d={eventTime:d,lane:g,tag:s.tag,payload:s.payload,callback:s.callback,next:null},u===null?(c=u=d,l=p):u=u.next=d,a|=g;if(s=s.next,s===null){if(s=r.shared.pending,s===null)break;g=s,s=g.next,g.next=null,r.lastBaseUpdate=g,r.shared.pending=null}}while(!0);if(u===null&&(l=p),r.baseState=l,r.firstBaseUpdate=c,r.lastBaseUpdate=u,t=r.shared.interleaved,t!==null){r=t;do a|=r.lane,r=r.next;while(r!==t)}else o===null&&(r.shared.lanes=0);rn|=a,e.lanes=a,e.memoizedState=p}}function ru(e,t,i){if(e=t.effects,t.effects=null,e!==null)for(t=0;t<e.length;t++){var n=e[t],r=n.callback;if(r!==null){if(n.callback=null,n=i,typeof r!="function")throw Error(P(191,r));r.call(n)}}}var co={},Nt=Oi(co),Vr=Oi(co),Wr=Oi(co);function $i(e){if(e===co)throw Error(P(174));return e}function Ec(e,t){switch(ie(Wr,t),ie(Vr,e),ie(Nt,co),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:tl(null,"");break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=tl(t,e)}oe(Nt),ie(Nt,t)}function Zn(){oe(Nt),oe(Vr),oe(Wr)}function Bg(e){$i(Wr.current);var t=$i(Nt.current),i=tl(t,e.type);t!==i&&(ie(Vr,e),ie(Nt,i))}function Rc(e){Vr.current===e&&(oe(Nt),oe(Vr))}var le=Oi(0);function va(e){for(var t=e;t!==null;){if(t.tag===13){var i=t.memoizedState;if(i!==null&&(i=i.dehydrated,i===null||i.data==="$?"||i.data==="$!"))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!==void 0){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var Ps=[];function zc(){for(var e=0;e<Ps.length;e++)Ps[e]._workInProgressVersionPrimary=null;Ps.length=0}var Wo=Xt.ReactCurrentDispatcher,Ts=Xt.ReactCurrentBatchConfig,nn=0,ce=null,he=null,be=null,xa=!1,zr=!1,qr=0,v0=0;function Ee(){throw Error(P(321))}function Pc(e,t){if(t===null)return!1;for(var i=0;i<t.length&&i<e.length;i++)if(!wt(e[i],t[i]))return!1;return!0}function Tc(e,t,i,n,r,o){if(nn=o,ce=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,Wo.current=e===null||e.memoizedState===null?w0:S0,e=i(n,r),zr){o=0;do{if(zr=!1,qr=0,25<=o)throw Error(P(301));o+=1,be=he=null,t.updateQueue=null,Wo.current=C0,e=i(n,r)}while(zr)}if(Wo.current=ya,t=he!==null&&he.next!==null,nn=0,be=he=ce=null,xa=!1,t)throw Error(P(300));return e}function Lc(){var e=qr!==0;return qr=0,e}function kt(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return be===null?ce.memoizedState=be=e:be=be.next=e,be}function st(){if(he===null){var e=ce.alternate;e=e!==null?e.memoizedState:null}else e=he.next;var t=be===null?ce.memoizedState:be.next;if(t!==null)be=t,he=e;else{if(e===null)throw Error(P(310));he=e,e={memoizedState:he.memoizedState,baseState:he.baseState,baseQueue:he.baseQueue,queue:he.queue,next:null},be===null?ce.memoizedState=be=e:be=be.next=e}return be}function Qr(e,t){return typeof t=="function"?t(e):t}function Ls(e){var t=st(),i=t.queue;if(i===null)throw Error(P(311));i.lastRenderedReducer=e;var n=he,r=n.baseQueue,o=i.pending;if(o!==null){if(r!==null){var a=r.next;r.next=o.next,o.next=a}n.baseQueue=r=o,i.pending=null}if(r!==null){o=r.next,n=n.baseState;var s=a=null,l=null,c=o;do{var u=c.lane;if((nn&u)===u)l!==null&&(l=l.next={lane:0,action:c.action,hasEagerState:c.hasEagerState,eagerState:c.eagerState,next:null}),n=c.hasEagerState?c.eagerState:e(n,c.action);else{var p={lane:u,action:c.action,hasEagerState:c.hasEagerState,eagerState:c.eagerState,next:null};l===null?(s=l=p,a=n):l=l.next=p,ce.lanes|=u,rn|=u}c=c.next}while(c!==null&&c!==o);l===null?a=n:l.next=s,wt(n,t.memoizedState)||(Fe=!0),t.memoizedState=n,t.baseState=a,t.baseQueue=l,i.lastRenderedState=n}if(e=i.interleaved,e!==null){r=e;do o=r.lane,ce.lanes|=o,rn|=o,r=r.next;while(r!==e)}else r===null&&(i.lanes=0);return[t.memoizedState,i.dispatch]}function Ns(e){var t=st(),i=t.queue;if(i===null)throw Error(P(311));i.lastRenderedReducer=e;var n=i.dispatch,r=i.pending,o=t.memoizedState;if(r!==null){i.pending=null;var a=r=r.next;do o=e(o,a.action),a=a.next;while(a!==r);wt(o,t.memoizedState)||(Fe=!0),t.memoizedState=o,t.baseQueue===null&&(t.baseState=o),i.lastRenderedState=o}return[o,n]}function Dg(){}function Fg(e,t){var i=ce,n=st(),r=t(),o=!wt(n.memoizedState,r);if(o&&(n.memoizedState=r,Fe=!0),n=n.queue,Nc(Hg.bind(null,i,n,e),[e]),n.getSnapshot!==t||o||be!==null&&be.memoizedState.tag&1){if(i.flags|=2048,Zr(9,Gg.bind(null,i,n,r,t),void 0,null),we===null)throw Error(P(349));nn&30||_g(i,t,r)}return r}function _g(e,t,i){e.flags|=16384,e={getSnapshot:t,value:i},t=ce.updateQueue,t===null?(t={lastEffect:null,stores:null},ce.updateQueue=t,t.stores=[e]):(i=t.stores,i===null?t.stores=[e]:i.push(e))}function Gg(e,t,i,n){t.value=i,t.getSnapshot=n,$g(t)&&Vg(e)}function Hg(e,t,i){return i(function(){$g(t)&&Vg(e)})}function $g(e){var t=e.getSnapshot;e=e.value;try{var i=t();return!wt(e,i)}catch{return!0}}function Vg(e){var t=qt(e,1);t!==null&&bt(t,e,1,-1)}function ou(e){var t=kt();return typeof e=="function"&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Qr,lastRenderedState:e},t.queue=e,e=e.dispatch=b0.bind(null,ce,e),[t.memoizedState,e]}function Zr(e,t,i,n){return e={tag:e,create:t,destroy:i,deps:n,next:null},t=ce.updateQueue,t===null?(t={lastEffect:null,stores:null},ce.updateQueue=t,t.lastEffect=e.next=e):(i=t.lastEffect,i===null?t.lastEffect=e.next=e:(n=i.next,i.next=e,e.next=n,t.lastEffect=e)),e}function Wg(){return st().memoizedState}function qo(e,t,i,n){var r=kt();ce.flags|=e,r.memoizedState=Zr(1|t,i,void 0,n===void 0?null:n)}function Ba(e,t,i,n){var r=st();n=n===void 0?null:n;var o=void 0;if(he!==null){var a=he.memoizedState;if(o=a.destroy,n!==null&&Pc(n,a.deps)){r.memoizedState=Zr(t,i,o,n);return}}ce.flags|=e,r.memoizedState=Zr(1|t,i,o,n)}function au(e,t){return qo(8390656,8,e,t)}function Nc(e,t){return Ba(2048,8,e,t)}function qg(e,t){return Ba(4,2,e,t)}function Qg(e,t){return Ba(4,4,e,t)}function Zg(e,t){if(typeof t=="function")return e=e(),t(e),function(){t(null)};if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function Kg(e,t,i){return i=i!=null?i.concat([e]):null,Ba(4,4,Zg.bind(null,t,e),i)}function Mc(){}function Xg(e,t){var i=st();t=t===void 0?null:t;var n=i.memoizedState;return n!==null&&t!==null&&Pc(t,n[1])?n[0]:(i.memoizedState=[e,t],e)}function Yg(e,t){var i=st();t=t===void 0?null:t;var n=i.memoizedState;return n!==null&&t!==null&&Pc(t,n[1])?n[0]:(e=e(),i.memoizedState=[e,t],e)}function Jg(e,t,i){return nn&21?(wt(i,t)||(i=rg(),ce.lanes|=i,rn|=i,e.baseState=!0),t):(e.baseState&&(e.baseState=!1,Fe=!0),e.memoizedState=i)}function x0(e,t){var i=ee;ee=i!==0&&4>i?i:4,e(!0);var n=Ts.transition;Ts.transition={};try{e(!1),t()}finally{ee=i,Ts.transition=n}}function ef(){return st().memoizedState}function y0(e,t,i){var n=ki(e);if(i={lane:n,action:i,hasEagerState:!1,eagerState:null,next:null},tf(e))nf(t,i);else if(i=Ug(e,t,i,n),i!==null){var r=Oe();bt(i,e,n,r),rf(i,t,n)}}function b0(e,t,i){var n=ki(e),r={lane:n,action:i,hasEagerState:!1,eagerState:null,next:null};if(tf(e))nf(t,r);else{var o=e.alternate;if(e.lanes===0&&(o===null||o.lanes===0)&&(o=t.lastRenderedReducer,o!==null))try{var a=t.lastRenderedState,s=o(a,i);if(r.hasEagerState=!0,r.eagerState=s,wt(s,a)){var l=t.interleaved;l===null?(r.next=r,Ic(t)):(r.next=l.next,l.next=r),t.interleaved=r;return}}catch{}finally{}i=Ug(e,t,r,n),i!==null&&(r=Oe(),bt(i,e,n,r),rf(i,t,n))}}function tf(e){var t=e.alternate;return e===ce||t!==null&&t===ce}function nf(e,t){zr=xa=!0;var i=e.pending;i===null?t.next=t:(t.next=i.next,i.next=t),e.pending=t}function rf(e,t,i){if(i&4194240){var n=t.lanes;n&=e.pendingLanes,i|=n,t.lanes=i,uc(e,i)}}var ya={readContext:at,useCallback:Ee,useContext:Ee,useEffect:Ee,useImperativeHandle:Ee,useInsertionEffect:Ee,useLayoutEffect:Ee,useMemo:Ee,useReducer:Ee,useRef:Ee,useState:Ee,useDebugValue:Ee,useDeferredValue:Ee,useTransition:Ee,useMutableSource:Ee,useSyncExternalStore:Ee,useId:Ee,unstable_isNewReconciler:!1},w0={readContext:at,useCallback:function(e,t){return kt().memoizedState=[e,t===void 0?null:t],e},useContext:at,useEffect:au,useImperativeHandle:function(e,t,i){return i=i!=null?i.concat([e]):null,qo(4194308,4,Zg.bind(null,t,e),i)},useLayoutEffect:function(e,t){return qo(4194308,4,e,t)},useInsertionEffect:function(e,t){return qo(4,2,e,t)},useMemo:function(e,t){var i=kt();return t=t===void 0?null:t,e=e(),i.memoizedState=[e,t],e},useReducer:function(e,t,i){var n=kt();return t=i!==void 0?i(t):t,n.memoizedState=n.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},n.queue=e,e=e.dispatch=y0.bind(null,ce,e),[n.memoizedState,e]},useRef:function(e){var t=kt();return e={current:e},t.memoizedState=e},useState:ou,useDebugValue:Mc,useDeferredValue:function(e){return kt().memoizedState=e},useTransition:function(){var e=ou(!1),t=e[0];return e=x0.bind(null,e[1]),kt().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,i){var n=ce,r=kt();if(se){if(i===void 0)throw Error(P(407));i=i()}else{if(i=t(),we===null)throw Error(P(349));nn&30||_g(n,t,i)}r.memoizedState=i;var o={value:i,getSnapshot:t};return r.queue=o,au(Hg.bind(null,n,o,e),[e]),n.flags|=2048,Zr(9,Gg.bind(null,n,o,i,t),void 0,null),i},useId:function(){var e=kt(),t=we.identifierPrefix;if(se){var i=Ht,n=Gt;i=(n&~(1<<32-yt(n)-1)).toString(32)+i,t=":"+t+"R"+i,i=qr++,0<i&&(t+="H"+i.toString(32)),t+=":"}else i=v0++,t=":"+t+"r"+i.toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},S0={readContext:at,useCallback:Xg,useContext:at,useEffect:Nc,useImperativeHandle:Kg,useInsertionEffect:qg,useLayoutEffect:Qg,useMemo:Yg,useReducer:Ls,useRef:Wg,useState:function(){return Ls(Qr)},useDebugValue:Mc,useDeferredValue:function(e){var t=st();return Jg(t,he.memoizedState,e)},useTransition:function(){var e=Ls(Qr)[0],t=st().memoizedState;return[e,t]},useMutableSource:Dg,useSyncExternalStore:Fg,useId:ef,unstable_isNewReconciler:!1},C0={readContext:at,useCallback:Xg,useContext:at,useEffect:Nc,useImperativeHandle:Kg,useInsertionEffect:qg,useLayoutEffect:Qg,useMemo:Yg,useReducer:Ns,useRef:Wg,useState:function(){return Ns(Qr)},useDebugValue:Mc,useDeferredValue:function(e){var t=st();return he===null?t.memoizedState=e:Jg(t,he.memoizedState,e)},useTransition:function(){var e=Ns(Qr)[0],t=st().memoizedState;return[e,t]},useMutableSource:Dg,useSyncExternalStore:Fg,useId:ef,unstable_isNewReconciler:!1};function gt(e,t){if(e&&e.defaultProps){t=de({},t),e=e.defaultProps;for(var i in e)t[i]===void 0&&(t[i]=e[i]);return t}return t}function Sl(e,t,i,n){t=e.memoizedState,i=i(n,t),i=i==null?t:de({},t,i),e.memoizedState=i,e.lanes===0&&(e.updateQueue.baseState=i)}var Da={isMounted:function(e){return(e=e._reactInternals)?ln(e)===e:!1},enqueueSetState:function(e,t,i){e=e._reactInternals;var n=Oe(),r=ki(e),o=$t(n,r);o.payload=t,i!=null&&(o.callback=i),t=Ai(e,o,r),t!==null&&(bt(t,e,r,n),Vo(t,e,r))},enqueueReplaceState:function(e,t,i){e=e._reactInternals;var n=Oe(),r=ki(e),o=$t(n,r);o.tag=1,o.payload=t,i!=null&&(o.callback=i),t=Ai(e,o,r),t!==null&&(bt(t,e,r,n),Vo(t,e,r))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var i=Oe(),n=ki(e),r=$t(i,n);r.tag=2,t!=null&&(r.callback=t),t=Ai(e,r,n),t!==null&&(bt(t,e,n,i),Vo(t,e,n))}};function su(e,t,i,n,r,o,a){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(n,o,a):t.prototype&&t.prototype.isPureReactComponent?!_r(i,n)||!_r(r,o):!0}function of(e,t,i){var n=!1,r=zi,o=t.contextType;return typeof o=="object"&&o!==null?o=at(o):(r=Ge(t)?en:Te.current,n=t.contextTypes,o=(n=n!=null)?Wn(e,r):zi),t=new t(i,o),e.memoizedState=t.state!==null&&t.state!==void 0?t.state:null,t.updater=Da,e.stateNode=t,t._reactInternals=e,n&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=r,e.__reactInternalMemoizedMaskedChildContext=o),t}function lu(e,t,i,n){e=t.state,typeof t.componentWillReceiveProps=="function"&&t.componentWillReceiveProps(i,n),typeof t.UNSAFE_componentWillReceiveProps=="function"&&t.UNSAFE_componentWillReceiveProps(i,n),t.state!==e&&Da.enqueueReplaceState(t,t.state,null)}function Cl(e,t,i,n){var r=e.stateNode;r.props=i,r.state=e.memoizedState,r.refs={},kc(e);var o=t.contextType;typeof o=="object"&&o!==null?r.context=at(o):(o=Ge(t)?en:Te.current,r.context=Wn(e,o)),r.state=e.memoizedState,o=t.getDerivedStateFromProps,typeof o=="function"&&(Sl(e,t,o,i),r.state=e.memoizedState),typeof t.getDerivedStateFromProps=="function"||typeof r.getSnapshotBeforeUpdate=="function"||typeof r.UNSAFE_componentWillMount!="function"&&typeof r.componentWillMount!="function"||(t=r.state,typeof r.componentWillMount=="function"&&r.componentWillMount(),typeof r.UNSAFE_componentWillMount=="function"&&r.UNSAFE_componentWillMount(),t!==r.state&&Da.enqueueReplaceState(r,r.state,null),ha(e,i,r,n),r.state=e.memoizedState),typeof r.componentDidMount=="function"&&(e.flags|=4194308)}function Kn(e,t){try{var i="",n=t;do i+=Xh(n),n=n.return;while(n);var r=i}catch(o){r=` 39Error generating stack: `+o.message+` 40`+o.stack}return{value:e,source:t,stack:r,digest:null}}function Ms(e,t,i){return{value:e,source:null,stack:i??null,digest:t??null}}function Al(e,t){try{console.error(t.value)}catch(i){setTimeout(function(){throw i})}}var A0=typeof WeakMap=="function"?WeakMap:Map;function af(e,t,i){i=$t(-1,i),i.tag=3,i.payload={element:null};var n=t.value;return i.callback=function(){wa||(wa=!0,Ml=n),Al(e,t)},i}function sf(e,t,i){i=$t(-1,i),i.tag=3;var n=e.type.getDerivedStateFromError;if(typeof n=="function"){var r=t.value;i.payload=function(){return n(r)},i.callback=function(){Al(e,t)}}var o=e.stateNode;return o!==null&&typeof o.componentDidCatch=="function"&&(i.callback=function(){Al(e,t),typeof n!="function"&&(Ii===null?Ii=new Set([this]):Ii.add(this));var a=t.stack;this.componentDidCatch(t.value,{componentStack:a!==null?a:""})}),i}function cu(e,t,i){var n=e.pingCache;if(n===null){n=e.pingCache=new A0;var r=new Set;n.set(t,r)}else r=n.get(t),r===void 0&&(r=new Set,n.set(t,r));r.has(i)||(r.add(i),e=B0.bind(null,e,t,i),t.then(e,e))}function du(e){do{var t;if((t=e.tag===13)&&(t=e.memoizedState,t=t!==null?t.dehydrated!==null:!0),t)return e;e=e.return}while(e!==null);return null}function uu(e,t,i,n,r){return e.mode&1?(e.flags|=65536,e.lanes=r,e):(e===t?e.flags|=65536:(e.flags|=128,i.flags|=131072,i.flags&=-52805,i.tag===1&&(i.alternate===null?i.tag=17:(t=$t(-1,1),t.tag=2,Ai(i,t,1))),i.lanes|=1),e)}var I0=Xt.ReactCurrentOwner,Fe=!1;function Ne(e,t,i,n){t.child=e===null?Og(t,null,i,n):Qn(t,e.child,i,n)}function pu(e,t,i,n,r){i=i.render;var o=t.ref;return Nn(t,r),n=Tc(e,t,i,n,o,r),i=Lc(),e!==null&&!Fe?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~r,Qt(e,t,r)):(se&&i&&yc(t),t.flags|=1,Ne(e,t,n,r),t.child)}
vendor: 7,587 bytes, line 40
40function gu(e,t,i,n,r){if(e===null){var o=i.type;return typeof o=="function"&&!Gc(o)&&o.defaultProps===void 0&&i.compare===null&&i.defaultProps===void 0?(t.tag=15,t.type=o,lf(e,t,o,n,r)):(e=Xo(i.type,null,n,t,t.mode,r),e.ref=t.ref,e.return=t,t.child=e)}if(o=e.child,!(e.lanes&r)){var a=o.memoizedProps;if(i=i.compare,i=i!==null?i:_r,i(a,n)&&e.ref===t.ref)return Qt(e,t,r)}return t.flags|=1,e=Ei(o,n),e.ref=t.ref,e.return=t,t.child=e}function lf(e,t,i,n,r){if(e!==null){var o=e.memoizedProps;if(_r(o,n)&&e.ref===t.ref)if(Fe=!1,t.pendingProps=n=o,(e.lanes&r)!==0)e.flags&131072&&(Fe=!0);else return t.lanes=e.lanes,Qt(e,t,r)}return Il(e,t,i,n,r)}function cf(e,t,i){var n=t.pendingProps,r=n.children,o=e!==null?e.memoizedState:null;if(n.mode==="hidden")if(!(t.mode&1))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},ie(Rn,Ve),Ve|=i;else{if(!(i&1073741824))return e=o!==null?o.baseLanes|i:i,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,ie(Rn,Ve),Ve|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},n=o!==null?o.baseLanes:i,ie(Rn,Ve),Ve|=n}else o!==null?(n=o.baseLanes|i,t.memoizedState=null):n=i,ie(Rn,Ve),Ve|=n;return Ne(e,t,r,i),t.child}function df(e,t){var i=t.ref;(e===null&&i!==null||e!==null&&e.ref!==i)&&(t.flags|=512,t.flags|=2097152)}function Il(e,t,i,n,r){var o=Ge(i)?en:Te.current;return o=Wn(t,o),Nn(t,r),i=Tc(e,t,i,n,o,r),n=Lc(),e!==null&&!Fe?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~r,Qt(e,t,r)):(se&&n&&yc(t),t.flags|=1,Ne(e,t,i,r),t.child)}function fu(e,t,i,n,r){if(Ge(i)){var o=!0;ua(t)}else o=!1;if(Nn(t,r),t.stateNode===null)Qo(e,t),of(t,i,n),Cl(t,i,n,r),n=!0;else if(e===null){var a=t.stateNode,s=t.memoizedProps;a.props=s;var l=a.context,c=i.contextType;typeof c=="object"&&c!==null?c=at(c):(c=Ge(i)?en:Te.current,c=Wn(t,c));var u=i.getDerivedStateFromProps,p=typeof u=="function"||typeof a.getSnapshotBeforeUpdate=="function";p||typeof a.UNSAFE_componentWillReceiveProps!="function"&&typeof a.componentWillReceiveProps!="function"||(s!==n||l!==c)&&lu(t,a,n,c),ci=!1;var g=t.memoizedState;a.state=g,ha(t,n,a,r),l=t.memoizedState,s!==n||g!==l||_e.current||ci?(typeof u=="function"&&(Sl(t,i,u,n),l=t.memoizedState),(s=ci||su(t,i,s,n,g,l,c))?(p||typeof a.UNSAFE_componentWillMount!="function"&&typeof a.componentWillMount!="function"||(typeof a.componentWillMount=="function"&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount=="function"&&a.UNSAFE_componentWillMount()),typeof a.componentDidMount=="function"&&(t.flags|=4194308)):(typeof a.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=n,t.memoizedState=l),a.props=n,a.state=l,a.context=c,n=s):(typeof a.componentDidMount=="function"&&(t.flags|=4194308),n=!1)}else{a=t.stateNode,jg(e,t),s=t.memoizedProps,c=t.type===t.elementType?s:gt(t.type,s),a.props=c,p=t.pendingProps,g=a.context,l=i.contextType,typeof l=="object"&&l!==null?l=at(l):(l=Ge(i)?en:Te.current,l=Wn(t,l));var d=i.getDerivedStateFromProps;(u=typeof d=="function"||typeof a.getSnapshotBeforeUpdate=="function")||typeof a.UNSAFE_componentWillReceiveProps!="function"&&typeof a.componentWillReceiveProps!="function"||(s!==p||g!==l)&&lu(t,a,n,l),ci=!1,g=t.memoizedState,a.state=g,ha(t,n,a,r);var y=t.memoizedState;s!==p||g!==y||_e.current||ci?(typeof d=="function"&&(Sl(t,i,d,n),y=t.memoizedState),(c=ci||su(t,i,c,n,g,y,l)||!1)?(u||typeof a.UNSAFE_componentWillUpdate!="function"&&typeof a.componentWillUpdate!="function"||(typeof a.componentWillUpdate=="function"&&a.componentWillUpdate(n,y,l),typeof a.UNSAFE_componentWillUpdate=="function"&&a.UNSAFE_componentWillUpdate(n,y,l)),typeof a.componentDidUpdate=="function"&&(t.flags|=4),typeof a.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof a.componentDidUpdate!="function"||s===e.memoizedProps&&g===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!="function"||s===e.memoizedProps&&g===e.memoizedState||(t.flags|=1024),t.memoizedProps=n,t.memoizedState=y),a.props=n,a.state=y,a.context=l,n=c):(typeof a.componentDidUpdate!="function"||s===e.memoizedProps&&g===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!="function"||s===e.memoizedProps&&g===e.memoizedState||(t.flags|=1024),n=!1)}return kl(e,t,i,n,o,r)}function kl(e,t,i,n,r,o){df(e,t);var a=(t.flags&128)!==0;if(!n&&!a)return r&&Jd(t,i,!1),Qt(e,t,o);n=t.stateNode,I0.current=t;var s=a&&typeof i.getDerivedStateFromError!="function"?null:n.render();return t.flags|=1,e!==null&&a?(t.child=Qn(t,e.child,null,o),t.child=Qn(t,null,s,o)):Ne(e,t,s,o),t.memoizedState=n.state,r&&Jd(t,i,!0),t.child}function uf(e){var t=e.stateNode;t.pendingContext?Yd(e,t.pendingContext,t.pendingContext!==t.context):t.context&&Yd(e,t.context,!1),Ec(e,t.containerInfo)}function mu(e,t,i,n,r){return qn(),wc(r),t.flags|=256,Ne(e,t,i,n),t.child}var El={dehydrated:null,treeContext:null,retryLane:0};function Rl(e){return{baseLanes:e,cachePool:null,transitions:null}}function pf(e,t,i){var n=t.pendingProps,r=le.current,o=!1,a=(t.flags&128)!==0,s;if((s=a)||(s=e!==null&&e.memoizedState===null?!1:(r&2)!==0),s?(o=!0,t.flags&=-129):(e===null||e.memoizedState!==null)&&(r|=1),ie(le,r&1),e===null)return bl(t),e=t.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?(t.mode&1?e.data==="$!"?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(a=n.children,e=n.fallback,o?(n=t.mode,o=t.child,a={mode:"hidden",children:a},!(n&1)&&o!==null?(o.childLanes=0,o.pendingProps=a):o=Ga(a,n,0,null),e=Yi(e,n,i,null),o.return=t,e.return=t,o.sibling=e,t.child=o,t.child.memoizedState=Rl(i),t.memoizedState=El,e):Oc(t,a));if(r=e.memoizedState,r!==null&&(s=r.dehydrated,s!==null))return k0(e,t,a,n,s,r,i);if(o){o=n.fallback,a=t.mode,r=e.child,s=r.sibling;var l={mode:"hidden",children:n.children};return!(a&1)&&t.child!==r?(n=t.child,n.childLanes=0,n.pendingProps=l,t.deletions=null):(n=Ei(r,l),n.subtreeFlags=r.subtreeFlags&14680064),s!==null?o=Ei(s,o):(o=Yi(o,a,i,null),o.flags|=2),o.return=t,n.return=t,n.sibling=o,t.child=n,n=o,o=t.child,a=e.child.memoizedState,a=a===null?Rl(i):{baseLanes:a.baseLanes|i,cachePool:null,transitions:a.transitions},o.memoizedState=a,o.childLanes=e.childLanes&~i,t.memoizedState=El,n}return o=e.child,e=o.sibling,n=Ei(o,{mode:"visible",children:n.children}),!(t.mode&1)&&(n.lanes=i),n.return=t,n.sibling=null,e!==null&&(i=t.deletions,i===null?(t.deletions=[e],t.flags|=16):i.push(e)),t.child=n,t.memoizedState=null,n}function Oc(e,t){return t=Ga({mode:"visible",children:t},e.mode,0,null),t.return=e,e.child=t}function To(e,t,i,n){return n!==null&&wc(n),Qn(t,e.child,null,i),e=Oc(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function k0(e,t,i,n,r,o,a){if(i)return t.flags&256?(t.flags&=-257,n=Ms(Error(P(422))),To(e,t,a,n)):t.memoizedState!==null?(t.child=e.child,t.flags|=128,null):(o=n.fallback,r=t.mode,n=Ga({mode:"visible",children:n.children},r,0,null),o=Yi(o,r,a,null),o.flags|=2,n.return=t,o.return=t,n.sibling=o,t.child=n,t.mode&1&&Qn(t,e.child,null,a),t.child.memoizedState=Rl(a),t.memoizedState=El,o);if(!(t.mode&1))return To(e,t,a,null);if(r.data==="$!"){if(n=r.nextSibling&&r.nextSibling.dataset,n)var s=n.dgst;return n=s,o=Error(P(419)),n=Ms(o,n,void 0),To(e,t,a,n)}if(s=(a&e.childLanes)!==0,Fe||s){if(n=we,n!==null){switch(a&-a){case 4:r=2;break;case 16:r=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:r=32;break;case 536870912:r=268435456;break;default:r=0}
vendor: 4,522 bytes, line 40
40r=r&(n.suspendedLanes|a)?0:r,r!==0&&r!==o.retryLane&&(o.retryLane=r,qt(e,r),bt(n,e,r,-1))}return _c(),n=Ms(Error(P(421))),To(e,t,a,n)}return r.data==="$?"?(t.flags|=128,t.child=e.child,t=D0.bind(null,e),r._reactRetry=t,null):(e=o.treeContext,qe=Ci(r.nextSibling),Qe=t,se=!0,xt=null,e!==null&&(it[nt++]=Gt,it[nt++]=Ht,it[nt++]=tn,Gt=e.id,Ht=e.overflow,tn=t),t=Oc(t,n.children),t.flags|=4096,t)}function hu(e,t,i){e.lanes|=t;var n=e.alternate;n!==null&&(n.lanes|=t),wl(e.return,t,i)}function Os(e,t,i,n,r){var o=e.memoizedState;o===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:n,tail:i,tailMode:r}:(o.isBackwards=t,o.rendering=null,o.renderingStartTime=0,o.last=n,o.tail=i,o.tailMode=r)}function gf(e,t,i){var n=t.pendingProps,r=n.revealOrder,o=n.tail;if(Ne(e,t,n.children,i),n=le.current,n&2)n=n&1|2,t.flags|=128;else{if(e!==null&&e.flags&128)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&hu(e,i,t);else if(e.tag===19)hu(e,i,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}n&=1}if(ie(le,n),!(t.mode&1))t.memoizedState=null;else switch(r){case"forwards":for(i=t.child,r=null;i!==null;)e=i.alternate,e!==null&&va(e)===null&&(r=i),i=i.sibling;i=r,i===null?(r=t.child,t.child=null):(r=i.sibling,i.sibling=null),Os(t,!1,r,i,o);break;case"backwards":for(i=null,r=t.child,t.child=null;r!==null;){if(e=r.alternate,e!==null&&va(e)===null){t.child=r;break}e=r.sibling,r.sibling=i,i=r,r=e}Os(t,!0,i,null,o);break;case"together":Os(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function Qo(e,t){!(t.mode&1)&&e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2)}function Qt(e,t,i){if(e!==null&&(t.dependencies=e.dependencies),rn|=t.lanes,!(i&t.childLanes))return null;if(e!==null&&t.child!==e.child)throw Error(P(153));if(t.child!==null){for(e=t.child,i=Ei(e,e.pendingProps),t.child=i,i.return=t;e.sibling!==null;)e=e.sibling,i=i.sibling=Ei(e,e.pendingProps),i.return=t;i.sibling=null}return t.child}function E0(e,t,i){switch(t.tag){case 3:uf(t),qn();break;case 5:Bg(t);break;case 1:Ge(t.type)&&ua(t);break;case 4:Ec(t,t.stateNode.containerInfo);break;case 10:var n=t.type._context,r=t.memoizedProps.value;ie(fa,n._currentValue),n._currentValue=r;break;case 13:if(n=t.memoizedState,n!==null)return n.dehydrated!==null?(ie(le,le.current&1),t.flags|=128,null):i&t.child.childLanes?pf(e,t,i):(ie(le,le.current&1),e=Qt(e,t,i),e!==null?e.sibling:null);ie(le,le.current&1);break;case 19:if(n=(i&t.childLanes)!==0,e.flags&128){if(n)return gf(e,t,i);t.flags|=128}if(r=t.memoizedState,r!==null&&(r.rendering=null,r.tail=null,r.lastEffect=null),ie(le,le.current),n)break;return null;case 22:case 23:return t.lanes=0,cf(e,t,i)}return Qt(e,t,i)}var ff,zl,mf,hf;ff=function(e,t){for(var i=t.child;i!==null;){if(i.tag===5||i.tag===6)e.appendChild(i.stateNode);else if(i.tag!==4&&i.child!==null){i.child.return=i,i=i.child;continue}if(i===t)break;for(;i.sibling===null;){if(i.return===null||i.return===t)return;i=i.return}i.sibling.return=i.return,i=i.sibling}};zl=function(){};mf=function(e,t,i,n){var r=e.memoizedProps;if(r!==n){e=t.stateNode,$i(Nt.current);var o=null;switch(i){case"input":r=Xs(e,r),n=Xs(e,n),o=[];break;case"select":r=de({},r,{value:void 0}),n=de({},n,{value:void 0}),o=[];break;case"textarea":r=el(e,r),n=el(e,n),o=[];break;default:typeof r.onClick!="function"&&typeof n.onClick=="function"&&(e.onclick=ca)}il(i,n);var a;i=null;for(c in r)if(!n.hasOwnProperty(c)&&r.hasOwnProperty(c)&&r[c]!=null)if(c==="style"){var s=r[c];for(a in s)s.hasOwnProperty(a)&&(i||(i={}),i[a]="")}else c!=="dangerouslySetInnerHTML"&&c!=="children"&&c!=="suppressContentEditableWarning"&&c!=="suppressHydrationWarning"&&c!=="autoFocus"&&(Mr.hasOwnProperty(c)?o||(o=[]):(o=o||[]).push(c,null));for(c in n){var l=n[c];if(s=r!=null?r[c]:void 0,n.hasOwnProperty(c)&&l!==s&&(l!=null||s!=null))if(c==="style")if(s){for(a in s)!s.hasOwnProperty(a)||l&&l.hasOwnProperty(a)||(i||(i={}),i[a]="");for(a in l)l.hasOwnProperty(a)&&s[a]!==l[a]&&(i||(i={}),i[a]=l[a])}else i||(o||(o=[]),o.push(c,i)),i=l;else c==="dangerouslySetInnerHTML"?(l=l?l.__html:void 0,s=s?s.__html:void 0,l!=null&&s!==l&&(o=o||[]).push(c,l)):c==="children"?typeof l!="string"&&typeof l!="number"||(o=o||[]).push(c,""+l):c!=="suppressContentEditableWarning"&&c!=="suppressHydrationWarning"&&(Mr.hasOwnProperty(c)?(l!=null&&c==="onScroll"&&re("scroll",e),o||s===l||(
vendor: 4,658 bytes, line 40
40o=[])):(o=o||[]).push(c,l))}i&&(o=o||[]).push("style",i);var c=o;(t.updateQueue=c)&&(t.flags|=4)}};hf=function(e,t,i,n){i!==n&&(t.flags|=4)};function hr(e,t){if(!se)switch(e.tailMode){case"hidden":t=e.tail;for(var i=null;t!==null;)t.alternate!==null&&(i=t),t=t.sibling;i===null?e.tail=null:i.sibling=null;break;case"collapsed":i=e.tail;for(var n=null;i!==null;)i.alternate!==null&&(n=i),i=i.sibling;n===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:n.sibling=null}}function Re(e){var t=e.alternate!==null&&e.alternate.child===e.child,i=0,n=0;if(t)for(var r=e.child;r!==null;)i|=r.lanes|r.childLanes,n|=r.subtreeFlags&14680064,n|=r.flags&14680064,r.return=e,r=r.sibling;else for(r=e.child;r!==null;)i|=r.lanes|r.childLanes,n|=r.subtreeFlags,n|=r.flags,r.return=e,r=r.sibling;return e.subtreeFlags|=n,e.childLanes=i,t}function R0(e,t,i){var n=t.pendingProps;switch(bc(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Re(t),null;case 1:return Ge(t.type)&&da(),Re(t),null;case 3:return n=t.stateNode,Zn(),oe(_e),oe(Te),zc(),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),(e===null||e.child===null)&&(zo(t)?t.flags|=4:e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,xt!==null&&(jl(xt),xt=null))),zl(e,t),Re(t),null;case 5:Rc(t);var r=$i(Wr.current);if(i=t.type,e!==null&&t.stateNode!=null)mf(e,t,i,n,r),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!n){if(t.stateNode===null)throw Error(P(166));return Re(t),null}if(e=$i(Nt.current),zo(t)){n=t.stateNode,i=t.type;var o=t.memoizedProps;switch(n[Pt]=t,n[$r]=o,e=(t.mode&1)!==0,i){case"dialog":re("cancel",n),re("close",n);break;case"iframe":case"object":case"embed":re("load",n);break;case"video":case"audio":for(r=0;r<Cr.length;r++)re(Cr[r],n);break;case"source":re("error",n);break;case"img":case"image":case"link":re("error",n),re("load",n);break;case"details":re("toggle",n);break;case"input":Id(n,o),re("invalid",n);break;case"select":n._wrapperState={wasMultiple:!!o.multiple},re("invalid",n);break;case"textarea":Ed(n,o),re("invalid",n)}il(i,o),r=null;for(var a in o)if(o.hasOwnProperty(a)){var s=o[a];a==="children"?typeof s=="string"?n.textContent!==s&&(o.suppressHydrationWarning!==!0&&Ro(n.textContent,s,e),r=["children",s]):typeof s=="number"&&n.textContent!==""+s&&(o.suppressHydrationWarning!==!0&&Ro(n.textContent,s,e),r=["children",""+s]):Mr.hasOwnProperty(a)&&s!=null&&a==="onScroll"&&re("scroll",n)}switch(i){case"input":bo(n),kd(n,o,!0);break;case"textarea":bo(n),Rd(n);break;case"select":case"option":break;default:typeof o.onClick=="function"&&(n.onclick=ca)}n=r,t.updateQueue=n,n!==null&&(t.flags|=4)}else{a=r.nodeType===9?r:r.ownerDocument,e==="http://www.w3.org/1999/xhtml"&&(e=Hp(i)),e==="http://www.w3.org/1999/xhtml"?i==="script"?(e=a.createElement("div"),e.innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):typeof n.is=="string"?e=a.createElement(i,{is:n.is}):(e=a.createElement(i),i==="select"&&(a=e,n.multiple?a.multiple=!0:n.size&&(a.size=n.size))):e=a.createElementNS(e,i),e[Pt]=t,e[$r]=n,ff(e,t,!1,!1),t.stateNode=e;e:{switch(a=nl(i,n),i){case"dialog":re("cancel",e),re("close",e),r=n;break;case"iframe":case"object":case"embed":re("load",e),r=n;break;case"video":case"audio":for(r=0;r<Cr.length;r++)re(Cr[r],e);r=n;break;case"source":re("error",e),r=n;break;case"img":case"image":case"link":re("error",e),re("load",e),r=n;break;case"details":re("toggle",e),r=n;break;case"input":Id(e,n),r=Xs(e,n),re("invalid",e);break;case"option":r=n;break;case"select":e._wrapperState={wasMultiple:!!n.multiple},r=de({},n,{value:void 0}),re("invalid",e);break;case"textarea":Ed(e,n),r=el(e,n),re("invalid",e);break;default:r=n}il(i,r),s=r;for(o in s)if(s.hasOwnProperty(o)){var l=s[o];o==="style"?Wp(e,l):o==="dangerouslySetInnerHTML"?(l=l?l.__html:void 0,l!=null&&$p(e,l)):o==="children"?typeof l=="string"?(i!=="textarea"||l!=="")&&Or(e,l):typeof l=="number"&&Or(e,""+l):o!=="suppressContentEditableWarning"&&o!=="suppressHydrationWarning"&&o!=="autoFocus"&&(Mr.hasOwnProperty(o)?l!=null&&o==="onScroll"&&re("scroll",e):l!=null&&oc(e,o,l,a))}switch(i){case"input":bo(e),kd(e,n,!1);break;case"textarea":bo(e),Rd(e);break;case"option":n.value!=null&&e.setAttribute("value",""+Ri(n.value));break;case"select":e.multiple=!!n.multiple,o=n.value,o!=null?zn(e,!!n.multiple,o,!1):n.defaultValue!=null&&zn(e,!!n.multiple,n.defaultValue,!0);break;default:typeof r.onClick=="function"&&(e.onclick=ca)}switch(i){case"button":case"input":case"select":case"textarea":n=!!n.autoFocus;break e;case"img":n=!0;break e;default:n=!1}}n&&(t.flags|=4)}t.ref!==null&&(t.flags|=512,t.flags|=2097152)}
vendor: 29,903 bytes, line 40
40return Re(t),null;case 6:if(e&&t.stateNode!=null)hf(e,t,e.memoizedProps,n);else{if(typeof n!="string"&&t.stateNode===null)throw Error(P(166));if(i=$i(Wr.current),$i(Nt.current),zo(t)){if(n=t.stateNode,i=t.memoizedProps,n[Pt]=t,(o=n.nodeValue!==i)&&(e=Qe,e!==null))switch(e.tag){case 3:Ro(n.nodeValue,i,(e.mode&1)!==0);break;case 5:e.memoizedProps.suppressHydrationWarning!==!0&&Ro(n.nodeValue,i,(e.mode&1)!==0)}o&&(t.flags|=4)}else n=(i.nodeType===9?i:i.ownerDocument).createTextNode(n),n[Pt]=t,t.stateNode=n}return Re(t),null;case 13:if(oe(le),n=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(se&&qe!==null&&t.mode&1&&!(t.flags&128))Ng(),qn(),t.flags|=98560,o=!1;else if(o=zo(t),n!==null&&n.dehydrated!==null){if(e===null){if(!o)throw Error(P(318));if(o=t.memoizedState,o=o!==null?o.dehydrated:null,!o)throw Error(P(317));o[Pt]=t}else qn(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;Re(t),o=!1}else xt!==null&&(jl(xt),xt=null),o=!0;if(!o)return t.flags&65536?t:null}return t.flags&128?(t.lanes=i,t):(n=n!==null,n!==(e!==null&&e.memoizedState!==null)&&n&&(t.child.flags|=8192,t.mode&1&&(e===null||le.current&1?xe===0&&(xe=3):_c())),t.updateQueue!==null&&(t.flags|=4),Re(t),null);case 4:return Zn(),zl(e,t),e===null&&Gr(t.stateNode.containerInfo),Re(t),null;case 10:return Ac(t.type._context),Re(t),null;case 17:return Ge(t.type)&&da(),Re(t),null;case 19:if(oe(le),o=t.memoizedState,o===null)return Re(t),null;if(n=(t.flags&128)!==0,a=o.rendering,a===null)if(n)hr(o,!1);else{if(xe!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(a=va(e),a!==null){for(t.flags|=128,hr(o,!1),n=a.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),t.subtreeFlags=0,n=i,i=t.child;i!==null;)o=i,e=n,o.flags&=14680066,a=o.alternate,a===null?(o.childLanes=0,o.lanes=e,o.child=null,o.subtreeFlags=0,o.memoizedProps=null,o.memoizedState=null,o.updateQueue=null,o.dependencies=null,o.stateNode=null):(o.childLanes=a.childLanes,o.lanes=a.lanes,o.child=a.child,o.subtreeFlags=0,o.deletions=null,o.memoizedProps=a.memoizedProps,o.memoizedState=a.memoizedState,o.updateQueue=a.updateQueue,o.type=a.type,e=a.dependencies,o.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),i=i.sibling;return ie(le,le.current&1|2),t.child}e=e.sibling}o.tail!==null&&ge()>Xn&&(t.flags|=128,n=!0,hr(o,!1),t.lanes=4194304)}else{if(!n)if(e=va(a),e!==null){if(t.flags|=128,n=!0,i=e.updateQueue,i!==null&&(t.updateQueue=i,t.flags|=4),hr(o,!0),o.tail===null&&o.tailMode==="hidden"&&!a.alternate&&!se)return Re(t),null}else 2*ge()-o.renderingStartTime>Xn&&i!==1073741824&&(t.flags|=128,n=!0,hr(o,!1),t.lanes=4194304);o.isBackwards?(a.sibling=t.child,t.child=a):(i=o.last,i!==null?i.sibling=a:t.child=a,o.last=a)}return o.tail!==null?(t=o.tail,o.rendering=t,o.tail=t.sibling,o.renderingStartTime=ge(),t.sibling=null,i=le.current,ie(le,n?i&1|2:i&1),t):(Re(t),null);case 22:case 23:return Fc(),n=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==n&&(t.flags|=8192),n&&t.mode&1?Ve&1073741824&&(Re(t),t.subtreeFlags&6&&(t.flags|=8192)):Re(t),null;case 24:return null;case 25:return null}throw Error(P(156,t.tag))}function z0(e,t){switch(bc(t),t.tag){case 1:return Ge(t.type)&&da(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Zn(),oe(_e),oe(Te),zc(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return Rc(t),null;case 13:if(oe(le),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(P(340));qn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return oe(le),null;case 4:return Zn(),null;case 10:return Ac(t.type._context),null;case 22:case 23:return Fc(),null;case 24:return null;default:return null}}var Lo=!1,Pe=!1,P0=typeof WeakSet=="function"?WeakSet:Set,U=null;function En(e,t){var i=e.ref;if(i!==null)if(typeof i=="function")try{i(null)}catch(n){pe(e,t,n)}else i.current=null}function Pl(e,t,i){try{i()}catch(n){pe(e,t,n)}}var vu=!1;function T0(e,t){if(gl=aa,e=bg(),xc(e)){if("selectionStart"in e)var i={start:e.selectionStart,end:e.selectionEnd};else e:{i=(i=e.ownerDocument)&&i.defaultView||window;var n=i.getSelection&&i.getSelection();if(n&&n.rangeCount!==0){i=n.anchorNode;var r=n.anchorOffset,o=n.focusNode;n=n.focusOffset;try{i.nodeType,o.nodeType}catch{i=null;break e}var a=0,s=-1,l=-1,c=0,u=0,p=e,g=null;t:for(;;){for(var d;p!==i||r!==0&&p.nodeType!==3||(s=a+r),p!==o||n!==0&&p.nodeType!==3||(l=a+n),p.nodeType===3&&(a+=p.nodeValue.length),(d=p.firstChild)!==null;)g=p,p=d;for(;;){if(p===e)break t;if(g===i&&++c===r&&(s=a),g===o&&++u===n&&(l=a),(d=p.nextSibling)!==null)break;p=g,g=p.parentNode}p=d}i=s===-1||l===-1?null:{start:s,end:l}}else i=null}i=i||{start:0,end:0}}else i=null;for(fl={focusedElem:e,selectionRange:i},aa=!1,U=t;U!==null;)if(t=U,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,U=e;else for(;U!==null;){t=U;try{var y=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(y!==null){var h=y.memoizedProps,b=y.memoizedState,m=t.stateNode,f=m.getSnapshotBeforeUpdate(t.elementType===t.type?h:gt(t.type,h),b);m.__reactInternalSnapshotBeforeUpdate=f}break;case 3:var v=t.stateNode.containerInfo;v.nodeType===1?v.textContent="":v.nodeType===9&&v.documentElement&&v.removeChild(v.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(P(163))}}catch(w){pe(t,t.return,w)}if(e=t.sibling,e!==null){e.return=t.return,U=e;break}U=t.return}return y=vu,vu=!1,y}function Pr(e,t,i){var n=t.updateQueue;if(n=n!==null?n.lastEffect:null,n!==null){var r=n=n.next;do{if((r.tag&e)===e){var o=r.destroy;r.destroy=void 0,o!==void 0&&Pl(t,i,o)}r=r.next}while(r!==n)}}function Fa(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var i=t=t.next;do{if((i.tag&e)===e){var n=i.create;i.destroy=n()}i=i.next}while(i!==t)}}function Tl(e){var t=e.ref;if(t!==null){var i=e.stateNode;switch(e.tag){case 5:e=i;break;default:e=i}typeof t=="function"?t(e):t.current=e}}function vf(e){var t=e.alternate;t!==null&&(e.alternate=null,vf(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[Pt],delete t[$r],delete t[vl],delete t[g0],delete t[f0])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function xf(e){return e.tag===5||e.tag===3||e.tag===4}function xu(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||xf(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Ll(e,t,i){var n=e.tag;if(n===5||n===6)e=e.stateNode,t?i.nodeType===8?i.parentNode.insertBefore(e,t):i.insertBefore(e,t):(i.nodeType===8?(t=i.parentNode,t.insertBefore(e,i)):(t=i,t.appendChild(e)),i=i._reactRootContainer,i!=null||t.onclick!==null||(t.onclick=ca));else if(n!==4&&(e=e.child,e!==null))for(Ll(e,t,i),e=e.sibling;e!==null;)Ll(e,t,i),e=e.sibling}function Nl(e,t,i){var n=e.tag;if(n===5||n===6)e=e.stateNode,t?i.insertBefore(e,t):i.appendChild(e);else if(n!==4&&(e=e.child,e!==null))for(Nl(e,t,i),e=e.sibling;e!==null;)Nl(e,t,i),e=e.sibling}var Se=null,vt=!1;function ri(e,t,i){for(i=i.child;i!==null;)yf(e,t,i),i=i.sibling}function yf(e,t,i){if(Lt&&typeof Lt.onCommitFiberUnmount=="function")try{Lt.onCommitFiberUnmount(La,i)}catch{}switch(i.tag){case 5:Pe||En(i,t);case 6:var n=Se,r=vt;Se=null,ri(e,t,i),Se=n,vt=r,Se!==null&&(vt?(e=Se,i=i.stateNode,e.nodeType===8?e.parentNode.removeChild(i):e.removeChild(i)):Se.removeChild(i.stateNode));break;case 18:Se!==null&&(vt?(e=Se,i=i.stateNode,e.nodeType===8?Rs(e.parentNode,i):e.nodeType===1&&Rs(e,i),Dr(e)):Rs(Se,i.stateNode));break;case 4:n=Se,r=vt,Se=i.stateNode.containerInfo,vt=!0,ri(e,t,i),Se=n,vt=r;break;case 0:case 11:case 14:case 15:if(!Pe&&(n=i.updateQueue,n!==null&&(n=n.lastEffect,n!==null))){r=n=n.next;do{var o=r,a=o.destroy;o=o.tag,a!==void 0&&(o&2||o&4)&&Pl(i,t,a),r=r.next}while(r!==n)}ri(e,t,i);break;case 1:if(!Pe&&(En(i,t),n=i.stateNode,typeof n.componentWillUnmount=="function"))try{n.props=i.memoizedProps,n.state=i.memoizedState,n.componentWillUnmount()}catch(s){pe(i,t,s)}ri(e,t,i);break;case 21:ri(e,t,i);break;case 22:i.mode&1?(Pe=(n=Pe)||i.memoizedState!==null,ri(e,t,i),Pe=n):ri(e,t,i);break;default:ri(e,t,i)}}function yu(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var i=e.stateNode;i===null&&(i=e.stateNode=new P0),t.forEach(function(n){var r=F0.bind(null,e,n);i.has(n)||(i.add(n),n.then(r,r))})}}function ut(e,t){var i=t.deletions;if(i!==null)for(var n=0;n<i.length;n++){var r=i[n];try{var o=e,a=t,s=a;e:for(;s!==null;){switch(s.tag){case 5:Se=s.stateNode,vt=!1;break e;case 3:Se=s.stateNode.containerInfo,vt=!0;break e;case 4:Se=s.stateNode.containerInfo,vt=!0;break e}s=s.return}if(Se===null)throw Error(P(160));yf(o,a,r),Se=null,vt=!1;var l=r.alternate;l!==null&&(l.return=null),r.return=null}catch(c){pe(r,t,c)}}if(t.subtreeFlags&12854)for(t=t.child;t!==null;)bf(t,e),t=t.sibling}function bf(e,t){var i=e.alternate,n=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(ut(t,e),It(e),n&4){try{Pr(3,e,e.return),Fa(3,e)}catch(h){pe(e,e.return,h)}try{Pr(5,e,e.return)}catch(h){pe(e,e.return,h)}}break;case 1:ut(t,e),It(e),n&512&&i!==null&&En(i,i.return);break;case 5:if(ut(t,e),It(e),n&512&&i!==null&&En(i,i.return),e.flags&32){var r=e.stateNode;try{Or(r,"")}catch(h){pe(e,e.return,h)}}if(n&4&&(r=e.stateNode,r!=null)){var o=e.memoizedProps,a=i!==null?i.memoizedProps:o,s=e.type,l=e.updateQueue;if(e.updateQueue=null,l!==null)try{s==="input"&&o.type==="radio"&&o.name!=null&&_p(r,o),nl(s,a);var c=nl(s,o);for(a=0;a<l.length;a+=2){var u=l[a],p=l[a+1];u==="style"?Wp(r,p):u==="dangerouslySetInnerHTML"?$p(r,p):u==="children"?Or(r,p):oc(r,u,p,c)}switch(s){case"input":Ys(r,o);break;case"textarea":Gp(r,o);break;case"select":var g=r._wrapperState.wasMultiple;r._wrapperState.wasMultiple=!!o.multiple;var d=o.value;d!=null?zn(r,!!o.multiple,d,!1):g!==!!o.multiple&&(o.defaultValue!=null?zn(r,!!o.multiple,o.defaultValue,!0):zn(r,!!o.multiple,o.multiple?[]:"",!1))}r[$r]=o}catch(h){pe(e,e.return,h)}}break;case 6:if(ut(t,e),It(e),n&4){if(e.stateNode===null)throw Error(P(162));r=e.stateNode,o=e.memoizedProps;try{r.nodeValue=o}catch(h){pe(e,e.return,h)}}break;case 3:if(ut(t,e),It(e),n&4&&i!==null&&i.memoizedState.isDehydrated)try{Dr(t.containerInfo)}catch(h){pe(e,e.return,h)}break;case 4:ut(t,e),It(e);break;case 13:ut(t,e),It(e),r=e.child,r.flags&8192&&(o=r.memoizedState!==null,r.stateNode.isHidden=o,!o||r.alternate!==null&&r.alternate.memoizedState!==null||(Bc=ge())),n&4&&yu(e);break;case 22:if(u=i!==null&&i.memoizedState!==null,e.mode&1?(Pe=(c=Pe)||u,ut(t,e),Pe=c):ut(t,e),It(e),n&8192){if(c=e.memoizedState!==null,(e.stateNode.isHidden=c)&&!u&&e.mode&1)for(U=e,u=e.child;u!==null;){for(p=U=u;U!==null;){switch(g=U,d=g.child,g.tag){case 0:case 11:case 14:case 15:Pr(4,g,g.return);break;case 1:En(g,g.return);var y=g.stateNode;if(typeof y.componentWillUnmount=="function"){n=g,i=g.return;try{t=n,y.props=t.memoizedProps,y.state=t.memoizedState,y.componentWillUnmount()}catch(h){pe(n,i,h)}}break;case 5:En(g,g.return);break;case 22:if(g.memoizedState!==null){wu(p);continue}}d!==null?(d.return=g,U=d):wu(p)}u=u.sibling}e:for(u=null,p=e;;){if(p.tag===5){if(u===null){u=p;try{r=p.stateNode,c?(o=r.style,typeof o.setProperty=="function"?o.setProperty("display","none","important"):o.display="none"):(s=p.stateNode,l=p.memoizedProps.style,a=l!=null&&l.hasOwnProperty("display")?l.display:null,s.style.display=Vp("display",a))}catch(h){pe(e,e.return,h)}}}else if(p.tag===6){if(u===null)try{p.stateNode.nodeValue=c?"":p.memoizedProps}catch(h){pe(e,e.return,h)}}else if((p.tag!==22&&p.tag!==23||p.memoizedState===null||p===e)&&p.child!==null){p.child.return=p,p=p.child;continue}if(p===e)break e;for(;p.sibling===null;){if(p.return===null||p.return===e)break e;u===p&&(u=null),p=p.return}u===p&&(u=null),p.sibling.return=p.return,p=p.sibling}}break;case 19:ut(t,e),It(e),n&4&&yu(e);break;case 21:break;default:ut(t,e),It(e)}}function It(e){var t=e.flags;if(t&2){try{e:{for(var i=e.return;i!==null;){if(xf(i)){var n=i;break e}i=i.return}throw Error(P(160))}switch(n.tag){case 5:var r=n.stateNode;n.flags&32&&(Or(r,""),n.flags&=-33);var o=xu(e);Nl(e,o,r);break;case 3:case 4:var a=n.stateNode.containerInfo,s=xu(e);Ll(e,s,a);break;default:throw Error(P(161))}}catch(l){pe(e,e.return,l)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function L0(e,t,i){U=e,wf(e)}function wf(e,t,i){for(var n=(e.mode&1)!==0;U!==null;){var r=U,o=r.child;if(r.tag===22&&n){var a=r.memoizedState!==null||Lo;if(!a){var s=r.alternate,l=s!==null&&s.memoizedState!==null||Pe;s=Lo;var c=Pe;if(Lo=a,(Pe=l)&&!c)for(U=r;U!==null;)a=U,l=a.child,a.tag===22&&a.memoizedState!==null?Su(r):l!==null?(l.return=a,U=l):Su(r);for(;o!==null;)U=o,wf(o),o=o.sibling;U=r,Lo=s,Pe=c}bu(e)}else r.subtreeFlags&8772&&o!==null?(o.return=r,U=o):bu(e)}}function bu(e){for(;U!==null;){var t=U;if(t.flags&8772){var i=t.alternate;try{if(t.flags&8772)switch(t.tag){case 0:case 11:case 15:Pe||Fa(5,t);break;case 1:var n=t.stateNode;if(t.flags&4&&!Pe)if(i===null)n.componentDidMount();else{var r=t.elementType===t.type?i.memoizedProps:gt(t.type,i.memoizedProps);n.componentDidUpdate(r,i.memoizedState,n.__reactInternalSnapshotBeforeUpdate)}var o=t.updateQueue;o!==null&&ru(t,o,n);break;case 3:var a=t.updateQueue;if(a!==null){if(i=null,t.child!==null)switch(t.child.tag){case 5:i=t.child.stateNode;break;case 1:i=t.child.stateNode}ru(t,a,i)}break;case 5:var s=t.stateNode;if(i===null&&t.flags&4){i=s;var l=t.memoizedProps;switch(t.type){case"button":case"input":case"select":case"textarea":l.autoFocus&&i.focus();break;case"img":l.src&&(i.src=l.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(t.memoizedState===null){var c=t.alternate;if(c!==null){var u=c.memoizedState;if(u!==null){var p=u.dehydrated;p!==null&&Dr(p)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(P(163))}Pe||t.flags&512&&Tl(t)}catch(g){pe(t,t.return,g)}}if(t===e){U=null;break}if(i=t.sibling,i!==null){i.return=t.return,U=i;break}U=t.return}}function wu(e){for(;U!==null;){var t=U;if(t===e){U=null;break}var i=t.sibling;if(i!==null){i.return=t.return,U=i;break}U=t.return}}function Su(e){for(;U!==null;){var t=U;try{switch(t.tag){case 0:case 11:case 15:var i=t.return;try{Fa(4,t)}catch(l){pe(t,i,l)}break;case 1:var n=t.stateNode;if(typeof n.componentDidMount=="function"){var r=t.return;try{n.componentDidMount()}catch(l){pe(t,r,l)}}var o=t.return;try{Tl(t)}catch(l){pe(t,o,l)}break;case 5:var a=t.return;try{Tl(t)}catch(l){pe(t,a,l)}}}catch(l){pe(t,t.return,l)}if(t===e){U=null;break}var s=t.sibling;if(s!==null){s.return=t.return,U=s;break}U=t.return}}var N0=Math.ceil,ba=Xt.ReactCurrentDispatcher,Uc=Xt.ReactCurrentOwner,ot=Xt.ReactCurrentBatchConfig,X=0,we=null,me=null,Ce=0,Ve=0,Rn=Oi(0),xe=0,Kr=null,rn=0,_a=0,jc=0,Tr=null,De=null,Bc=0,Xn=1/0,Dt=null,wa=!1,Ml=null,Ii=null,No=!1,xi=null,Sa=0,Lr=0,Ol=null,Zo=-1,Ko=0;function Oe(){return X&6?ge():Zo!==-1?Zo:Zo=ge()}function ki(e){return e.mode&1?X&2&&Ce!==0?Ce&-Ce:h0.transition!==null?(Ko===0&&(Ko=rg()),Ko):(e=ee,e!==0||(e=window.event,e=e===void 0?16:ug(e.type)),e):1}function bt(e,t,i,n){if(50<Lr)throw Lr=0,Ol=null,Error(P(185));ao(e,i,n),(!(X&2)||e!==we)&&(e===we&&(!(X&2)&&(_a|=i),xe===4&&ui(e,Ce)),He(e,n),i===1&&X===0&&!(t.mode&1)&&(Xn=ge()+500,ja&&Ui()))}function He(e,t){var i=e.callbackNode;hv(e,t);var n=oa(e,e===we?Ce:0);if(n===0)i!==null&&Td(i),e.callbackNode=null,e.callbackPriority=0;else if(t=n&-n,e.callbackPriority!==t){if(i!=null&&Td(i),t===1)e.tag===0?m0(Cu.bind(null,e)):Pg(Cu.bind(null,e)),u0(function(){!(X&6)&&Ui()}),i=null;else{switch(og(n)){case 1:i=dc;break;case 4:i=ig;break;case 16:i=ra;break;case 536870912:i=ng;break;default:i=ra}i=zf(i,Sf.bind(null,e))}e.callbackPriority=t,e.callbackNode=i}}function Sf(e,t){if(Zo=-1,Ko=0,X&6)throw Error(P(327));var i=e.callbackNode;if(Mn()&&e.callbackNode!==i)return null;var n=oa(e,e===we?Ce:0);if(n===0)return null;if(n&30||n&e.expiredLanes||t)t=Ca(e,n);else{t=n;var r=X;X|=2;var o=Af();(we!==e||Ce!==t)&&(Dt=null,Xn=ge()+500,Xi(e,t));do try{U0();break}catch(s){Cf(e,s)}while(!0);Cc(),ba.current=o,X=r,me!==null?t=0:(we=null,Ce=0,t=xe)}if(t!==0){if(t===2&&(r=ll(e),r!==0&&(n=r,t=Ul(e,r))),t===1)throw i=Kr,Xi(e,0),ui(e,n),He(e,ge()),i;if(t===6)ui(e,n);else{if(r=e.current.alternate,!(n&30)&&!M0(r)&&(t=Ca(e,n),t===2&&(o=ll(e),o!==0&&(n=o,t=Ul(e,o))),t===1))throw i=Kr,Xi(e,0),ui(e,n),He(e,ge()),i;switch(e.finishedWork=r,e.finishedLanes=n,t){case 0:case 1:throw Error(P(345));case 2:_i(e,De,Dt);break;case 3:if(ui(e,n),(n&130023424)===n&&(t=Bc+500-ge(),10<t)){if(oa(e,0)!==0)break;if(r=e.suspendedLanes,(r&n)!==n){Oe(),e.pingedLanes|=e.suspendedLanes&r;break}e.timeoutHandle=hl(_i.bind(null,e,De,Dt),t);break}_i(e,De,Dt);break;case 4:if(ui(e,n),(n&4194240)===n)break;for(t=e.eventTimes,r=-1;0<n;){var a=31-yt(n);o=1<<a,a=t[a],a>r&&(r=a),n&=~o}if(n=r,n=ge()-n,n=(120>n?120:480>n?480:1080>n?1080:1920>n?1920:3e3>n?3e3:4320>n?4320:1960*N0(n/1960))-n,10<n){e.timeoutHandle=hl(_i.bind(null,e,De,Dt),n);break}_i(e,De,Dt);break;case 5:_i(e,De,Dt);break;default:throw Error(P(329))}}}return He(e,ge()),e.callbackNode===i?Sf.bind(null,e):null}function Ul(e,t){var i=Tr;return e.current.memoizedState.isDehydrated&&(Xi(e,t).flags|=256),e=Ca(e,t),e!==2&&(t=De,De=i,t!==null&&jl(t)),e}function jl(e){De===null?De=e:De.push.apply(De,e)}function M0(e){for(var t=e;;){if(t.flags&16384){var i=t.updateQueue;if(i!==null&&(i=i.stores,i!==null))for(var n=0;n<i.length;n++){var r=i[n],o=r.getSnapshot;r=r.value;try{if(!wt(o(),r))return!1}catch{return!1}}}if(i=t.child,t.subtreeFlags&16384&&i!==null)i.return=t,t=i;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function ui(e,t){for(t&=~jc,t&=~_a,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var i=31-yt(t),n=1<<i;e[i]=-1,t&=~n}}function Cu(e){if(X&6)throw Error(P(327));Mn();var t=oa(e,0);if(!(t&1))return He(e,ge()),null;var i=Ca(e,t);if(e.tag!==0&&i===2){var n=ll(e);n!==0&&(t=n,i=Ul(e,n))}if(i===1)throw i=Kr,Xi(e,0),ui(e,t),He(e,ge()),i;if(i===6)throw Error(P(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,_i(e,De,Dt),He(e,ge()),null}function Dc(e,t){var i=X;X|=1;try{return e(t)}finally{X=i,X===0&&(Xn=ge()+500,ja&&Ui())}}function on(e){xi!==null&&xi.tag===0&&!(X&6)&&Mn();var t=X;X|=1;var i=ot.transition,n=ee;try{if(ot.transition=null,ee=1,e)return e()}finally{ee=n,ot.transition=i,X=t,!(X&6)&&Ui()}}function Fc(){Ve=Rn.current,oe(Rn)}function Xi(e,t){e.finishedWork=null,e.finishedLanes=0;var i=e.timeoutHandle;if(i!==-1&&(e.timeoutHandle=-1,d0(i)),me!==null)for(i=me.return;i!==null;){var n=i;switch(bc(n),n.tag){case 1:n=n.type.childContextTypes,n!=null&&da();break;case 3:Zn(),oe(_e),oe(Te),zc();break;case 5:Rc(n);break;case 4:Zn();break;case 13:oe(le);break;case 19:oe(le);break;case 10:Ac(n.type._context);break;case 22:case 23:Fc()}i=i.return}if(we=e,me=e=Ei(e.current,null),Ce=Ve=t,xe=0,Kr=null,jc=_a=rn=0,De=Tr=null,Hi!==null){for(t=0;t<Hi.length;t++)if(i=Hi[t],n=i.interleaved,n!==null){i.interleaved=null;var r=n.next,o=i.pending;if(o!==null){var a=o.next;o.next=r,n.next=a}i.pending=n}Hi=null}return e}function Cf(e,t){do{var i=me;try{if(Cc(),Wo.current=ya,xa){for(var n=ce.memoizedState;n!==null;){var r=n.queue;r!==null&&(r.pending=null),n=n.next}xa=!1}if(nn=0,be=he=ce=null,zr=!1,qr=0,Uc.current=null,i===null||i.return===null){xe=1,Kr=t,me=null;break}e:{var o=e,a=i.return,s=i,l=t;if(t=Ce,s.flags|=32768,l!==null&&typeof l=="object"&&typeof l.then=="function"){var c=l,u=s,p=u.tag;if(!(u.mode&1)&&(p===0||p===11||p===15)){var g=u.alternate;g?(u.updateQueue=g.updateQueue,u.memoizedState=g.memoizedState,u.lanes=g.lanes):(u.updateQueue=null,u.memoizedState=null)}var d=du(a);if(d!==null){d.flags&=-257,uu(d,a,s,o,t),d.mode&1&&cu(o,c,t),t=d,l=c;var y=t.updateQueue;if(y===null){var h=new Set;h.add(l),t.updateQueue=h}else y.add(l);break e}else{if(!(t&1)){cu(o,c,t),_c();break e}l=Error(P(426))}}else if(se&&s.mode&1){var b=du(a);if(b!==null){!(b.flags&65536)&&(b.flags|=256),uu(b,a,s,o,t),wc(Kn(l,s));break e}}o=l=Kn(l,s),xe!==4&&(xe=2),Tr===null?Tr=[o]:Tr.push(o),o=a;do{switch(o.tag){case 3:o.flags|=65536,t&=-t,o.lanes|=t;var m=af(o,l,t);nu(o,m);break e;case 1:s=l;var f=o.type,v=o.stateNode;if(!(o.flags&128)&&(typeof f.getDerivedStateFromError=="function"||v!==null&&typeof v.componentDidCatch=="function"&&(Ii===null||!Ii.has(v)))){o.flags|=65536,t&=-t,o.lanes|=t;var w=sf(o,s,t);nu(o,w);break e}}o=o.return}while(o!==null)}kf(i)}catch(S){t=S,me===i&&i!==null&&(me=i=i.return);continue}break}while(!0)}function Af(){var e=ba.current;return ba.current=ya,e===null?ya:e}function _c(){(xe===0||xe===3||xe===2)&&(xe=4),we===null||!(rn&268435455)&&!(_a&268435455)||ui(we,Ce)}function Ca(e,t){var i=X;X|=2;var n=Af();(we!==e||Ce!==t)&&(Dt=null,Xi(e,t));do try{O0();break}catch(r){Cf(e,r)}while(!0);if(Cc(),X=i,ba.current=n,me!==null)throw Error(P(261));return we=null,Ce=0,xe}function O0(){for(;me!==null;)If(me)}function U0(){for(;me!==null&&!sv();)If(me)}function If(e){var t=Rf(e.alternate,e,Ve);e.memoizedProps=e.pendingProps,t===null?kf(e):me=t,Uc.current=null}function kf(e){var t=e;do{var i=t.alternate;if(e=t.return,t.flags&32768){if(i=z0(i,t),i!==null){i.flags&=32767,me=i;return}if(e!==null)e.flags|=32768,e.subtreeFlags=0,e.deletions=null;else{xe=6,me=null;return}}else if(i=R0(i,t,Ve),i!==null){me=i;return}if(t=t.sibling,t!==null){me=t;return}me=t=e}while(t!==null);xe===0&&(xe=5)}function _i(e,t,i){var n=ee,r=ot.transition;try{ot.transition=null,ee=1,j0(e,t,i,n)}finally{ot.transition=r,ee=n}return null}function j0(e,t,i,n){do Mn();while(xi!==null);if(X&6)throw Error(P(327));i=e.finishedWork;var r=e.finishedLanes;if(i===null)return null;if(e.finishedWork=null,e.finishedLanes=0,i===e.current)throw Error(P(177));e.callbackNode=null,e.callbackPriority=0;var o=i.lanes|i.childLanes;if(vv(e,o),e===we&&(me=we=null,Ce=0),!(i.subtreeFlags&2064)&&!(i.flags&2064)||No||(No=!0,zf(ra,function(){return Mn(),null})),o=(i.flags&15990)!==0,i.subtreeFlags&15990||o){o=ot.transition,ot.transition=null;var a=ee;ee=1;var s=X;X|=4,Uc.current=null,T0(e,i),bf(i,e),n0(fl),aa=!!gl,fl=gl=null,e.current=i,L0(i),lv(),X=s,ee=a,ot.transition=o}else e.current=i;if(No&&(No=!1,xi=e,Sa=r),o=e.pendingLanes,o===0&&(Ii=null),uv(i.stateNode),He(e,ge()),t!==null)for(n=e.onRecoverableError,i=0;i<t.length;i++)r=t[i],n(r.value,{componentStack:r.stack,digest:r.digest});if(wa)throw wa=!1,e=Ml,Ml=null,e;return Sa&1&&e.tag!==0&&Mn(),o=e.pendingLanes,o&1?e===Ol?Lr++:(Lr=0,Ol=e):Lr=0,Ui(),null}function Mn(){if(xi!==null){var e=og(Sa),t=ot.transition,i=ee;try{if(ot.transition=null,ee=16>e?16:e,xi===null)var n=!1;else{if(e=xi,xi=null,Sa=0,X&6)throw Error(P(331));var r=X;for(X|=4,U=e.current;U!==null;){var o=U,a=o.child;if(U.flags&16){var s=o.deletions;if(s!==null){for(var l=0;l<s.length;l++){var c=s[l];for(U=c;U!==null;){var u=U;switch(u.tag){case 0:case 11:case 15:Pr(8,u,o)}var p=u.child;if(p!==null)p.return=u,U=p;else for(;U!==null;){u=U;var g=u.sibling,d=u.return;if(vf(u),u===c){U=null;break}if(g!==null){g.return=d,U=g;break}U=d}}}var y=o.alternate;if(y!==null){var h=y.child;if(h!==null){y.child=null;do{var b=h.sibling;h.sibling=null,h=b}while(h!==null)}}U=o}}if(o.subtreeFlags&2064&&a!==null)a.return=o,U=a;else e:for(;U!==null;){if(o=U,o.flags&2048)switch(o.tag){case 0:case 11:case 15:Pr(9,o,o.return)}var m=o.sibling;if(m!==null){m.return=o.return,U=m;break e}U=o.return}}var f=e.current;for(U=f;U!==null;){a=U;var v=a.child;if(a.subtreeFlags&2064&&v!==null)v.return=a,U=v;else e:for(a=f;U!==null;){if(s=U,s.flags&2048)try{switch(s.tag){case 0:case 11:case 15:Fa(9,s)}}catch(S){pe(s,s.return,S)}if(s===a){U=null;break e}var w=s.sibling;if(w!==null){w.return=s.return,U=w;break e}U=s.return}}if(X=r,Ui(),Lt&&typeof Lt.onPostCommitFiberRoot=="function")try{Lt.onPostCommitFiberRoot(La,e)}catch{}n=!0}return n}finally{ee=i,ot.transition=t}}return!1}function Au(e,t,i){t=Kn(i,t),t=af(e,t,1),e=Ai(e,t,1),t=Oe(),e!==null&&(ao(e,1,t),He(e,t))}function pe(e,t,i){if(e.tag===3)Au(e,e,i);else for(;t!==null;){if(t.tag===3){Au(t,e,i);break}else if(t.tag===1){var n=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof n.componentDidCatch=="function"&&(Ii===null||!Ii.has(n))){e=Kn(i,e),e=sf(t,e,1),t=Ai(t,e,1),e=Oe(),t!==null&&(ao(t,1,e),He(t,e));break}}t=t.return}}function B0(e,t,i){var n=e.pingCache;n!==null&&n.delete(t),t=Oe(),e.pingedLanes|=e.suspendedLanes&i,we===e&&(Ce&i)===i&&(xe===4||xe===3&&(Ce&130023424)===Ce&&500>ge()-Bc?Xi(e,0):jc|=i),He(e,t)}function Ef(e,t){t===0&&(e.mode&1?(t=Co,Co<<=1,!(Co&130023424)&&(Co=4194304)):t=1);var i=Oe();e=qt(e,t),e!==null&&(ao(e,t,i),He(e,i))}function D0(e){var t=e.memoizedState,i=0;t!==null&&(i=t.retryLane),Ef(e,i)}function F0(e,t){var i=0;switch(e.tag){case 13:var n=e.stateNode,r=e.memoizedState;r!==null&&(i=r.retryLane);break;case 19:n=e.stateNode;break;default:throw Error(P(314))}n!==null&&n.delete(t),Ef(e,i)}var Rf;Rf=function(e,t,i){if(e!==null)if(e.memoizedProps!==t.pendingProps||_e.current)Fe=!0;else{if(!(e.lanes&i)&&!(t.flags&128))return Fe=!1,E0(e,t,i);Fe=!!(e.flags&131072)}else Fe=!1,se&&t.flags&1048576&&Tg(t,ga,t.index);switch(t.lanes=0,t.tag){case 2:var n=t.type;Qo(e,t),e=t.pendingProps;var r=Wn(t,Te.current);Nn(t,i),r=Tc(null,t,n,e,r,i);var o=Lc();return t.flags|=1,typeof r=="object"&&r!==null&&typeof r.render=="function"&&r.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,Ge(n)?(o=!0,ua(t)):o=!1,t.memoizedState=r.state!==null&&r.state!==void 0?r.state:null,kc(t),r.updater=Da,t.stateNode=r,r._reactInternals=t,Cl(t,n,e,i),t=kl(null,t,n,!0,o,i)):(t.tag=0,se&&o&&yc(t),Ne(null,t,r,i),t=t.child),t;case 16:n=t.elementType;e:{switch(Qo(e,t),e=t.pendingProps,r=n._init,n=r(n._payload),t.type=n,r=t.tag=G0(n),e=gt(n,e),r){case 0:t=Il(null,t,n,e,i);break e;case 1:t=fu(null,t,n,e,i);break e;case 11:t=pu(null,t,n,e,i);break e;case 14:t=gu(null,t,n,gt(n.type,e),i);break e}throw Error(P(306,n,""))}return t;case 0:return n=t.type,r=t.pendingProps,r=t.elementType===n?r:gt(n,r),Il(e,t,n,r,i);case 1:return n=t.type,r=t.pendingProps,r=t.elementType===n?r:gt(n,r),fu(e,t,n,r,i);case 3:e:{if(uf(t),e===null)throw Error(P(387));n=t.pendingProps,o=t.memoizedState,r=o.element,jg(e,t),ha(t,n,null,i);var a=t.memoizedState;if(n=a.element,o.isDehydrated)if(o={element:n,isDehydrated:!1,cache:a.cache,pendingSuspenseBoundaries:a.pendingSuspenseBoundaries,transitions:a.transitions},t.updateQueue.baseState=o,t.memoizedState=o,t.flags&256){r=Kn(Error(P(423)),t),t=mu(e,t,n,i,r);break e}else if(n!==r){r=Kn(Error(P(424)),t),t=mu(e,t,n,i,r);break e}else for(qe=Ci(t.stateNode.containerInfo.firstChild),Qe=t,se=!0,xt=null,i=Og(t,null,n,i),t.child=i;i;)i.flags=i.flags&-3|4096,i=i.sibling;else{if(qn(),n===r){t=Qt(e,t,i);break e}Ne(e,t,n,i)}t=t.child}return t;case 5:return Bg(t),e===null&&bl(t),n=t.type,r=t.pendingProps,o=e!==null?e.memoizedProps:null,a=r.children,ml(n,r)?a=null:o!==null&&ml(n,o)&&(t.flags|=32),df(e,t),Ne(e,t,a,i),t.child;case 6:return e===null&&bl(t),null;case 13:return pf(e,t,i);case 4:return Ec(t,t.stateNode.containerInfo),n=t.pendingProps,e===null?t.child=Qn(t,null,n,i):Ne(e,t,n,i),t.child;case 11:return n=t.type,r=t.pendingProps,r=t.elementType===n?r:gt(n,r),pu(e,t,n,r,i);case 7:return Ne(e,t,t.pendingProps,i),t.child;case 8:return Ne(e,t,t.pendingProps.children,i),t.child;case 12:return Ne(e,t,t.pendingProps.children,i),t.child;case 10:e:{if(n=t.type._context,r=t.pendingProps,o=t.memoizedProps,a=r.value,ie(fa,n._currentValue),n._currentValue=a,o!==null)if(wt(o.value,a)){if(o.children===r.children&&!_e.current){t=Qt(e,t,i);break e}}else for(o=t.child,o!==null&&(o.return=t);o!==null;){var s=o.dependencies;if(s!==null){a=o.child;for(var l=s.firstContext;l!==null;){if(l.context===n){if(o.tag===1){l=$t(-1,i&-i),l.tag=2;var c=o.updateQueue;if(c!==null){c=c.shared;var u=c.pending;u===null?l.next=l:(l.next=u.next,u.next=l),c.pending=l}}o.lanes|=i,l=o.alternate,l!==null&&(l.lanes|=i),wl(o.return,i,t),s.lanes|=i;break}l=l.next}}else if(o.tag===10)a=o.type===t.type?null:o.child;else if(o.tag===18){if(a=o.return,a===null)throw Error(P(341));a.lanes|=i,s=a.alternate,s!==null&&(s.lanes|=i),wl(a,i,t),a=o.sibling}else a=o.child;if(a!==null)a.return=o;else for(a=o;a!==null;){if(a===t){a=null;break}if(o=a.sibling,o!==null){o.return=a.return,a=o;break}a=a.return}o=a}Ne(e,t,r.children,i),t=t.child}return t;case 9:return r=t.type,n=t.pendingProps.children,Nn(t,i),r=at(r),n=n(r),t.flags|=1,Ne(e,t,n,i),t.child;case 14:return n=t.type,r=gt(n,t.pendingProps),r=gt(n.type,r),gu(e,t,n,r,i);case 15:return lf(e,t,t.type,t.pendingProps,i);case 17:return n=t.type,r=t.pendingProps,r=t.elementType===n?r:gt(n,r),Qo(e,t),t.tag=1,Ge(n)?(e=!0,ua(t)):e=!1,Nn(t,i),of(t,n,r),Cl(t,n,r,i),kl(null,t,n,!0,e,i);case 19:return gf(e,t,i);case 22:return cf(e,t,i)}throw Error(P(156,t.tag))};function zf(e,t){return tg(e,t)}function _0(e,t,i,n){this.tag=e,this.key=i,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=n,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function rt(e,t,i,n){return new _0(e,t,i,n)}function Gc(e){return e=e.prototype,!(!e||!e.isReactComponent)}function G0(e){if(typeof e=="function")return Gc(e)?1:0;if(e!=null){if(e=e.$$typeof,e===sc)return 11;if(e===lc)return 14}return 2}function Ei(e,t){var i=e.alternate;return i===null?(i=rt(e.tag,t,e.key,e.mode),i.elementType=e.elementType,i.type=e.type,i.stateNode=e.stateNode,i.alternate=e,e.alternate=i):(i.pendingProps=t,i.type=e.type,i.flags=0,i.subtreeFlags=0,i.deleti
vendor: 6,824 bytes, line 40
40ons=null),i.flags=e.flags&14680064,i.childLanes=e.childLanes,i.lanes=e.lanes,i.child=e.child,i.memoizedProps=e.memoizedProps,i.memoizedState=e.memoizedState,i.updateQueue=e.updateQueue,t=e.dependencies,i.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},i.sibling=e.sibling,i.index=e.index,i.ref=e.ref,i}function Xo(e,t,i,n,r,o){var a=2;if(n=e,typeof e=="function")Gc(e)&&(a=1);else if(typeof e=="string")a=5;else e:switch(e){case xn:return Yi(i.children,r,o,t);case ac:a=8,r|=8;break;case qs:return e=rt(12,i,t,r|2),e.elementType=qs,e.lanes=o,e;case Qs:return e=rt(13,i,t,r),e.elementType=Qs,e.lanes=o,e;case Zs:return e=rt(19,i,t,r),e.elementType=Zs,e.lanes=o,e;case Bp:return Ga(i,r,o,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case Up:a=10;break e;case jp:a=9;break e;case sc:a=11;break e;case lc:a=14;break e;case li:a=16,n=null;break e}throw Error(P(130,e==null?e:typeof e,""))}return t=rt(a,i,t,r),t.elementType=e,t.type=n,t.lanes=o,t}function Yi(e,t,i,n){return e=rt(7,e,n,t),e.lanes=i,e}function Ga(e,t,i,n){return e=rt(22,e,n,t),e.elementType=Bp,e.lanes=i,e.stateNode={isHidden:!1},e}function Us(e,t,i){return e=rt(6,e,null,t),e.lanes=i,e}function js(e,t,i){return t=rt(4,e.children!==null?e.children:[],e.key,t),t.lanes=i,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function H0(e,t,i,n,r){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=vs(0),this.expirationTimes=vs(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=vs(0),this.identifierPrefix=n,this.onRecoverableError=r,this.mutableSourceEagerHydrationData=null}function Hc(e,t,i,n,r,o,a,s,l){return e=new H0(e,t,i,s,l),t===1?(t=1,o===!0&&(t|=8)):t=0,o=rt(3,null,null,t),e.current=o,o.stateNode=e,o.memoizedState={element:n,isDehydrated:i,cache:null,transitions:null,pendingSuspenseBoundaries:null},kc(o),e}function $0(e,t,i){var n=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:vn,key:n==null?null:""+n,children:e,containerInfo:t,implementation:i}}function Pf(e){if(!e)return zi;e=e._reactInternals;e:{if(ln(e)!==e||e.tag!==1)throw Error(P(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(Ge(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(t!==null);throw Error(P(171))}if(e.tag===1){var i=e.type;if(Ge(i))return zg(e,i,t)}return t}function Tf(e,t,i,n,r,o,a,s,l){return e=Hc(i,n,!0,e,r,o,a,s,l),e.context=Pf(null),i=e.current,n=Oe(),r=ki(i),o=$t(n,r),o.callback=t??null,Ai(i,o,r),e.current.lanes=r,ao(e,r,n),He(e,n),e}function Ha(e,t,i,n){var r=t.current,o=Oe(),a=ki(r);return i=Pf(i),t.context===null?t.context=i:t.pendingContext=i,t=$t(o,a),t.payload={element:e},n=n===void 0?null:n,n!==null&&(t.callback=n),e=Ai(r,t,a),e!==null&&(bt(e,r,a,o),Vo(e,r,a)),a}function Aa(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return e.child.stateNode;default:return e.child.stateNode}}function Iu(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var i=e.retryLane;e.retryLane=i!==0&&i<t?i:t}}function $c(e,t){Iu(e,t),(e=e.alternate)&&Iu(e,t)}function V0(){return null}var Lf=typeof reportError=="function"?reportError:function(e){console.error(e)};function Vc(e){this._internalRoot=e}$a.prototype.render=Vc.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(P(409));Ha(e,t,null,null)};$a.prototype.unmount=Vc.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;on(function(){Ha(null,e,null,null)}),t[Wt]=null}};function $a(e){this._internalRoot=e}$a.prototype.unstable_scheduleHydration=function(e){if(e){var t=lg();e={blockedOn:null,target:e,priority:t};for(var i=0;i<di.length&&t!==0&&t<di[i].priority;i++);di.splice(i,0,e),i===0&&dg(e)}};function Wc(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function Va(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11&&(e.nodeType!==8||e.nodeValue!==" react-mount-point-unstable "))}function ku(){}function W0(e,t,i,n,r){if(r){if(typeof n=="function"){var o=n;n=function(){var c=Aa(a);o.call(c)}}var a=Tf(t,n,e,0,null,!1,!1,"",ku);return e._reactRootContainer=a,e[Wt]=a.current,Gr(e.nodeType===8?e.parentNode:e),on(),a}for(;r=e.lastChild;)e.removeChild(r);if(typeof n=="function"){var s=n;n=function(){var c=Aa(l);s.call(c)}}var l=Hc(e,0,!1,null,null,!1,!1,"",ku);return e._reactRootContainer=l,e[Wt]=l.current,Gr(e.nodeType===8?e.parentNode:e),on(function(){Ha(t,l,i,n)}),l}function Wa(e,t,i,n,r){var o=i._reactRootContainer;if(o){var a=o;if(typeof r=="function"){var s=r;r=function(){var l=Aa(a);s.call(l)}}Ha(t,a,e,r)}else a=W0(i,t,e,r,n);return Aa(a)}ag=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var i=Sr(t.pendingLanes);i!==0&&(uc(t,i|1),He(t,ge()),!(X&6)&&(Xn=ge()+500,Ui()))}break;case 13:on(function(){var n=qt(e,1);if(n!==null){var r=Oe();bt(n,e,1,r)}}),$c(e,1)}};pc=function(e){if(e.tag===13){var t=qt(e,134217728);if(t!==null){var i=Oe();bt(t,e,134217728,i)}$c(e,134217728)}};sg=function(e){if(e.tag===13){var t=ki(e),i=qt(e,t);if(i!==null){var n=Oe();bt(i,e,t,n)}$c(e,t)}};lg=function(){return ee};cg=function(e,t){var i=ee;try{return ee=e,t()}finally{ee=i}};ol=function(e,t,i){switch(t){case"input":if(Ys(e,i),t=i.name,i.type==="radio"&&t!=null){for(i=e;i.parentNode;)i=i.parentNode;for(i=i.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<i.length;t++){var n=i[t];if(n!==e&&n.form===e.form){var r=Ua(n);if(!r)throw Error(P(90));Fp(n),Ys(n,r)}}}break;case"textarea":Gp(e,i);break;case"select":t=i.value,t!=null&&zn(e,!!i.multiple,t,!1)}};Zp=Dc;Kp=on;var q0={usingClientEntryPoint:!1,Events:[lo,Sn,Ua,qp,Qp,Dc]},vr={findFiberByHostInstance:Gi,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},Q0={bundleType:vr.bundleType,version:vr.version,rendererPackageName:vr.rendererPackageName,rendererConfig:vr.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:Xt.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return e=Jp(e),e===null?null:e.stateNode},findFiberByHostInstance:vr.findFiberByHostInstance||V0,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};
40if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var Mo=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Mo.isDisabled&&Mo.supportsFiber)try{La=Mo.inject(Q0),Lt=Mo}catch{}}Xe.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=q0;Xe.createPortal=function(e,t){var i=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!Wc(t))throw Error(P(200));return $0(e,t,null,i)};Xe.createRoot=function(e,t){if(!Wc(e))throw Error(P(299));var i=!1,n="",r=Lf;return t!=null&&(t.unstable_strictMode===!0&&(i=!0),t.identifierPrefix!==void 0&&(n=t.identifierPrefix),t.onRecoverableError!==void 0&&(r=t.onRecoverableError)),t=Hc(e,1,!1,null,null,i,!1,n,r),e[Wt]=t.current,Gr(e.nodeType===8?e.parentNode:e),new Vc(t)};Xe.findDOMNode=function(e){if(e==null)return null;if(e.nodeType===1)return e;var t=e._reactInternals;if(t===void 0)throw typeof e.render=="function"?Error(P(188)):(e=Object.keys(e).join(","),Error(P(268,e)));return e=Jp(t),e=e===null?null:e.stateNode,e};Xe.flushSync=function(e){return on(e)};Xe.hydrate=function(e,t,i){if(!Va(t))throw Error(P(200));return Wa(null,e,t,!0,i)};Xe.hydrateRoot=function(e,t,i){if(!Wc(e))throw Error(P(405));var n=i!=null&&i.hydratedSources||null,r=!1,o="",a=Lf;if(i!=null&&(i.unstable_strictMode===!0&&(r=!0),i.identifierPrefix!==void 0&&(o=i.identifierPrefix),i.onRecoverableError!==void 0&&(a=i.onRecoverableError)),t=Tf(t,null,e,1,i??null,r,!1,o,a),e[Wt]=t.current,Gr(e),n)for(e=0;e<n.length;e++)i=n[e],r=i._getVersion,r=r(i._source),t.mutableSourceEagerHydrationData==null?t.mutableSourceEagerHydrationData=[i,r]:t.mutableSourceEagerHydrationData.push(i,r);return new $a(t)};Xe.render=function(e,t,i){if(!Va(t))throw Error(P(200));return Wa(null,e,t,!1,i)};Xe.unmountComponentAtNode=function(e){if(!Va(e))throw Error(P(40));return e._reactRootContainer?(on(function(){Wa(null,null,e,!1,function(){e._reactRootContainer=null,e[Wt]=null})}),!0):!1};Xe.unstable_batchedUpdates=Dc;Xe.unstable_renderSubtreeIntoContainer=function(e,t,i,n){if(!Va(i))throw Error(P(200));if(e==null||e._reactInternals===void 0)throw Error(P(38));return Wa(e,t,i,!1,n)};Xe.version="18.3.1-next-f1338f8080-20240426";function Nf(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(Nf)}catch(e){console.error(e)}}Nf(),Lp.exports=Xe;var uo=Lp.exports;const Mf=yp(uo);var Of,Eu=uo;Of=Eu.createRoot,Eu.hydrateRoot;const Z0=1,K0=1e6;let Bs=0;function X0(){return Bs=(Bs+1)%Number.MAX_SAFE_INTEGER,Bs.toString()}const Ds=new Map,Ru=e=>{if(Ds.has(e))return;const t=setTimeout(()=>{Ds.delete(e),Nr({type:"REMOVE_TOAST",toastId:e})},K0);Ds.set(e,t)},Y0=(e,t)=>{switch(t.type){case"ADD_TOAST":return{...e,toasts:[t.toast,...e.toasts].slice(0,Z0)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(i=>i.id===t.toast.id?{...i,...t.toast}:i)};case"DISMISS_TOAST":{const{toastId:i}=t;return i?Ru(i):e.toasts.forEach(n=>{Ru(n.id)}),{...e,toasts:e.toasts.map(n=>n.id===i||i===void 0?{...n,open:!1}:n)}}case"REMOVE_TOAST":return t.toastId===void 0?{...e,toasts:[]}:{...e,toasts:e.toasts.filter(i=>i.id!==t.toastId)}}},Yo=[];let Jo={toasts:[]};function Nr(e){Jo=Y0(Jo,e),Yo.forEach(t=>{t(Jo)})}function J0({...e}){const t=X0(),i=r=>Nr({type:"UPDATE_TOAST",toast:{...r,id:t}}),n=()=>Nr({type:"DISMISS_TOAST",toastId:t});return Nr({type:"ADD_TOAST",toast:{...e,id:t,open:!0,onOpenChange:r=>{r||n()}}}),{id:t,dismiss:n,update:i}}function ex(){const[e,t]=x.useState(Jo);return x.useEffect(()=>(Yo.push(t),()=>{const i=Yo.indexOf(t);i>-1&&Yo.splice(i,1)}),[e]),{...e,toast:J0,dismiss:i=>Nr({type:"DISMISS_TOAST",toastId:i})}}function ve(e,t,{checkForDefaultPrevented:i=!0}={}){return function(r){if(e==null||e(r),i===!1||!r.defaultPrevented)return t==null?void 0:t(r)}}function zu(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function Uf(...e){return t=>{let i=!1;const n=e.map(r=>{const o=zu(r,t);return!i&&typeof o=="function"&&(i=!0),o});if(i)return()=>{for(let r=0;r<n.length;r++){const o=n[r];typeof o=="function"?o():zu(e[r],null)}}}}function St(...e){return x.useCallback(Uf(...e),e)}function qa(e,t=[]){let i=[];function n(o,a){const s=x.createContext(a),l=i.length;i=[...i,a];const c=p=>{var m;const{scope:g,children:d,...y}=p,h=((m=g==null?void 0:g[e])==null?void 0:m[l])||s,b=x.useMemo(()=>y,Object.values(y));return I.jsx(h.Provider,{value:b,children:d})};c.displayName=o+"Provider";function u(p,g){var h;const d=((h=g==null?void 0:g[e])==null?void 0:h[l])||s,y=x.useContext(d);if(y)return y;if(a!==void 0)return a;throw new Error(`\`${p}\` must be used within \`${o}\``)}return[c,u]}const r=()=>{const o=i.map(a=>x.createContext(a));return function(s){const l=(s==null?void 0:s[e])||o;return x.useMemo(()=>({[`__scope${e}`]:{...s,[e]:l}}),[s,l])}};return r.scopeName=e,[n,tx(r,...t)]}function tx(...e){const t=e[0];if(e.length===1)return t;const i=()=>{const n=e.map(r=>({useScope:r(),scopeName:r.scopeName}));return function(o){const a=n.reduce((s,{useScope:l,scopeName:c}
vendor: 10,617 bytes, line 40
40)=>{const p=l(o)[`__scope${c}`];return{...s,...p}},{});return x.useMemo(()=>({[`__scope${t.scopeName}`]:a}),[a])}};return i.scopeName=t.scopeName,i}function Bl(e){const t=ix(e),i=x.forwardRef((n,r)=>{const{children:o,...a}=n,s=x.Children.toArray(o),l=s.find(rx);if(l){const c=l.props.children,u=s.map(p=>p===l?x.Children.count(c)>1?x.Children.only(null):x.isValidElement(c)?c.props.children:null:p);return I.jsx(t,{...a,ref:r,children:x.isValidElement(c)?x.cloneElement(c,void 0,u):null})}return I.jsx(t,{...a,ref:r,children:o})});return i.displayName=`${e}.Slot`,i}function ix(e){const t=x.forwardRef((i,n)=>{const{children:r,...o}=i;if(x.isValidElement(r)){const a=ax(r),s=ox(o,r.props);return r.type!==x.Fragment&&(s.ref=n?Uf(n,a):a),x.cloneElement(r,s)}return x.Children.count(r)>1?x.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var jf=Symbol("radix.slottable");function nx(e){const t=({children:i})=>I.jsx(I.Fragment,{children:i});return t.displayName=`${e}.Slottable`,t.__radixId=jf,t}function rx(e){return x.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===jf}function ox(e,t){const i={...t};for(const n in t){const r=e[n],o=t[n];/^on[A-Z]/.test(n)?r&&o?i[n]=(...s)=>{const l=o(...s);return r(...s),l}:r&&(i[n]=r):n==="style"?i[n]={...r,...o}:n==="className"&&(i[n]=[r,o].filter(Boolean).join(" "))}return{...e,...i}}function ax(e){var n,r;let t=(n=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:n.get,i=t&&"isReactWarning"in t&&t.isReactWarning;return i?e.ref:(t=(r=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:r.get,i=t&&"isReactWarning"in t&&t.isReactWarning,i?e.props.ref:e.props.ref||e.ref)}function sx(e){const t=e+"CollectionProvider",[i,n]=qa(t),[r,o]=i(t,{collectionRef:{current:null},itemMap:new Map}),a=h=>{const{scope:b,children:m}=h,f=T.useRef(null),v=T.useRef(new Map).current;return I.jsx(r,{scope:b,itemMap:v,collectionRef:f,children:m})};a.displayName=t;const s=e+"CollectionSlot",l=Bl(s),c=T.forwardRef((h,b)=>{const{scope:m,children:f}=h,v=o(s,m),w=St(b,v.collectionRef);return I.jsx(l,{ref:w,children:f})});c.displayName=s;const u=e+"CollectionItemSlot",p="data-radix-collection-item",g=Bl(u),d=T.forwardRef((h,b)=>{const{scope:m,children:f,...v}=h,w=T.useRef(null),S=St(b,w),C=o(u,m);return T.useEffect(()=>(C.itemMap.set(w,{ref:w,...v}),()=>void C.itemMap.delete(w))),I.jsx(g,{[p]:"",ref:S,children:f})});d.displayName=u;function y(h){const b=o(e+"CollectionConsumer",h);return T.useCallback(()=>{const f=b.collectionRef.current;if(!f)return[];const v=Array.from(f.querySelectorAll(`[${p}]`));return Array.from(b.itemMap.values()).sort((C,A)=>v.indexOf(C.ref.current)-v.indexOf(A.ref.current))},[b.collectionRef,b.itemMap])}return[{Provider:a,Slot:c,ItemSlot:d},y,n]}var lx=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],$e=lx.reduce((e,t)=>{const i=Bl(`Primitive.${t}`),n=x.forwardRef((r,o)=>{const{asChild:a,...s}=r,l=a?i:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),I.jsx(l,{...s,ref:o})});return n.displayName=`Primitive.${t}`,{...e,[t]:n}},{});function Bf(e,t){e&&uo.flushSync(()=>e.dispatchEvent(t))}function Pi(e){const t=x.useRef(e);return x.useEffect(()=>{t.current=e}),x.useMemo(()=>(...i)=>{var n;return(n=t.current)==null?void 0:n.call(t,...i)},[])}function cx(e,t=globalThis==null?void 0:globalThis.document){const i=Pi(e);x.useEffect(()=>{const n=r=>{r.key==="Escape"&&i(r)};return t.addEventListener("keydown",n,{capture:!0}),()=>t.removeEventListener("keydown",n,{capture:!0})},[i,t])}var dx="DismissableLayer",Dl="dismissableLayer.update",ux="dismissableLayer.pointerDownOutside",px="dismissableLayer.focusOutside",Pu,Df=x.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),qc=x.forwardRef((e,t)=>{const{disableOutsidePointerEvents:i=!1,onEscapeKeyDown:n,onPointerDownOutside:r,onFocusOutside:o,onInteractOutside:a,onDismiss:s,...l}=e,c=x.useContext(Df),[u,p]=x.useState(null),g=(u==null?void 0:u.ownerDocument)??(globalThis==null?void 0:globalThis.document),[,d]=x.useState({}),y=St(t,A=>p(A)),h=Array.from(c.layers),[b]=[...c.layersWithOutsidePointerEventsDisabled].slice(-1),m=h.indexOf(b),f=u?h.indexOf(u):-1,v=c.layersWithOutsidePointerEventsDisabled.size>0,w=f>=m,S=fx(A=>{const z=A.target,N=[...c.branches].some(L=>L.contains(z));!w||N||(r==null||r(A),a==null||a(A),A.defaultPrevented||s==null||s())},g),C=mx(A=>{const z=A.target;[...c.branches].some(L=>L.contains(z))||(o==null||o(A),a==null||a(A),A.defaultPrevented||s==null||s())},g);return cx(A=>{f===c.layers.size-1&&(n==null||n(A),!A.defaultPrevented&&s&&(A.preventDefault(),s()))},g),x.useEffect(()=>{if(u)return i&&(c.layersWithOutsidePointerEventsDisabled.size===0&&(Pu=g.body.style.pointerEvents,g.body.style.pointerEvents="none"),c.layersWithOutsidePointerEventsDisabled.add(u)),c.layers.add(u),Tu(),()=>{i&&c.layersWithOutsidePointerEventsDisabled.size===1&&(g.body.style.pointerEvents=Pu)}},[u,g,i,c]),x.useEffect(()=>()=>{u&&(c.layers.delete(u),c.layersWithOutsidePointerEventsDisabled.delete(u),Tu())},[u,c]),x.useEffect(()=>{const A=()=>d({});return document.addEventListener(Dl,A),()=>document.removeEventListener(Dl,A)},[]),I.jsx($e.div,{...l,ref:y,style:{pointerEvents:v?w?"auto":"none":void 0,...e.style},onFocusCapture:ve(e.onFocusCapture,C.onFocusCapture),onBlurCapture:ve(e.onBlurCapture,C.onBlurCapture),onPointerDownCapture:ve(e.onPointerDownCapture,S.onPointerDownCapture)})});qc.displayName=dx;var gx="DismissableLayerBranch",Ff=x.forwardRef((e,t)=>{const i=x.useContext(Df),n=x.useRef(null),r=St(t,n);return x.useEffect(()=>{const o=n.current;if(o)return i.branches.add(o),()=>{i.branches.delete(o)}},[i.branches]),I.jsx($e.div,{...e,ref:r})});Ff.displayName=gx;function fx(e,t=globalThis==null?void 0:globalThis.document){const i=Pi(e),n=x.useRef(!1),r=x.useRef(()=>{});return x.useEffect(()=>{const o=s=>{if(s.target&&!n.current){let l=function(){_f(ux,i,c,{discrete:!0})};const c={originalEvent:s};s.pointerType==="touch"?(t.removeEventListener("click",r.current),r.current=l,t.addEventListener("click",r.current,{once:!0})):l()}else t.removeEventListener("click",r.current);n.current=!1},a=window.setTimeout(()=>{t.addEventListener("pointerdown",o)},0);return()=>{window.clearTimeout(a),t.removeEventListener("pointerdown",o),t.removeEventListener("click",r.current)}},[t,i]),{onPointerDownCapture:()=>n.current=!0}}function mx(e,t=globalThis==null?void 0:globalThis.document){const i=Pi(e),n=x.useRef(!1);return x.useEffect(()=>{const r=o=>{o.target&&!n.current&&_f(px,i,{originalEvent:o},{discrete:!1})};return t.addEventListener("focusin",r),()=>t.removeEventListener("focusin",r)},[t,i]),{onFocusCapture:()=>n.current=!0,onBlurCapture:()=>n.current=!1}}function Tu(){const e=new CustomEvent(Dl);document.dispatchEvent(e)}function _f(e,t,i,{discrete:n}){const r=i.originalEvent.target,o=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:i});t&&r.addEventListener(e,t,{once:!0}),n?Bf(r,o):r.dispatchEvent(o)}var hx=qc,vx=Ff,Ti=globalThis!=null&&globalThis.document?x.useLayoutEffect:()=>{},xx="Portal",Gf=x.forwardRef((e,t)=>{var s;const{container:i,...n}=e,[r,o]=x.useState(!1);Ti(()=>o(!0),[]);const a=i||r&&((s=globalThis==null?void 0:globalThis.document)==null?void 0:s.body);return a?Mf.createPortal(I.jsx($e.div,{...n,ref:t}),a):null});Gf.displayName=xx;function yx(e,t){return x.useReducer((i,n)=>t[i][n]??i,e)}var Qc=e=>{const{present:t,children:i}=e,n=bx(t),r=typeof i=="function"?i({present:n.isPresent}):x.Children.only(i),o=St(n.ref,wx(r));return typeof i=="function"||n.isPresent?x.cloneElement(r,{ref:o}):null};Qc.displayName="Presence";function bx(e){const[t,i]=x.useState(),n=x.useRef(null),r=x.useRef(e),o=x.useRef("none"),a=e?"mounted":"unmounted",[s,l]=yx(a,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return x.useEffect(()=>{const c=Oo(n.current);o.current=s==="mounted"?c:"none"},[s]),Ti(()=>{const c=n.current,u=r.current;if(u!==e){const g=o.current,d=Oo(c);e?l("MOUNT"):d==="none"||(c==null?void 0:c.display)==="none"?l("UNMOUNT"):l(u&&g!==d?"ANIMATION_OUT":"UNMOUNT"),r.current=e}},[e,l]),Ti(()=>{if(t){let c;const u=t.ownerDocument.defaultView??window,p=d=>{const h=Oo(n.current).includes(d.animationName);if(d.target===t&&h&&(l("ANIMATION_END"),!r.current)){const b=t.style.animationFillMode;t.style.animationFillMode="forwards",c=u.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=b)})}},g=d=>{d.target===t&&(o.current=Oo(n.current))};return t.addEventListener("animationstart",g),t.addEventListener("animationcancel",p),t.addEventListener("animationend",p),()=>{u.clearTimeout(c),t.removeEventListener("animationstart",g),t.removeEventListener("animationcancel",p),t.removeEventListener("animationend",p)}}else l("ANIMATION_END")},[t,l]),{isPresent:["mounted","unmountSuspended"].includes(s),ref:x.useCallback(c=>{n.current=c?getComputedStyle(c):null,i(c)},[])}}function Oo(e){return(e==null?void 0:e.animationName)||"none"}function wx(e){var n,r;let t=(n=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:n.get,i=t&&"isReactWarning"in t&&t.isReactWarning;return i?e.ref:(t=(r=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:r.get,i=t&&"isReactWarning"in t&&t.isReactWarning,i?e.props.ref:e.props.ref||e.ref)}var Sx=Pp[" useInsertionEffect ".trim().toString()]||Ti;function Cx({prop:e,defaultProp:t,onChange:i=()=>{},caller:n}){const[r,o,a]=Ax({defaultProp:t,onChange:i}),s=e!==void 0,l=s?e:r;{const u=x.useRef(e!==void 0);x.useEffect(()=>{const p=u.current;p!==s&&console.warn(`${n} is changing from ${p?"controlled":"uncontrolled"} to ${s?"controlled":"uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),u.current=s},[s,n])}const c=x.useCallback(u=>{var p;if(s){const g=Ix(u)?u(e):u;g!==e&&((p=a.current)==null||p.call(a,g))}else o(u)},[s,e,o,a]);return[l,c]}function Ax({defaultProp:e,onChange:t}){const[i,n]=x.useState(e),r=x.useRef(i),o=x.useRef(t);return Sx(()=>{o.current=t},[t]),x.useEffect(()=>{var a;r.current!==i&&((a=o.current)==null||a.call(o,i),r.current=i)},[i,r]),[i,n,o]}function Ix(e){return typeof e=="function"}var kx=Object.freeze({position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"}),Ex="VisuallyHidden",Qa=x.forwardRef((e,t)=>
40I.jsx($e.span,{...e,ref:t,style:{...kx,...e.style}}));Qa.displayName=Ex;var Rx=Qa,Zc="ToastProvider",[Kc,zx,Px]=sx("Toast"),[Hf,T2]=qa("Toast",[Px]),[Tx,Za]=Hf(Zc),$f=e=>{const{__scopeToast:t,label:i="Notification",duration:n=5e3,swipeDirection:r="right",swipeThreshold:o=50,children:a}=e,[s,l]=x.useState(null),[c,u]=x.useState(0),p=x.useRef(!1),g=x.useRef(!1);return i.trim()||console.error(`Invalid prop \`label\` supplied to \`${Zc}\`. Expected non-empty \`string\`.`),I.jsx(Kc.Provider,{scope:t,children:I.jsx(Tx,{scope:t,label:i,duration:n,swipeDirection:r,swipeThreshold:o,toastCount:c,viewport:s,onViewportChange:l,onToastAdd:x.useCallback(()=>u(d=>d+1),[]),onToastRemove:x.useCallback(()=>u(d=>d-1),[]),isFocusedToastEscapeKeyDownRef:p,isClosePausedRef:g,children:a})})};$f.displayName=Zc;var Vf="ToastViewport",Lx=["F8"],Fl="toast.viewportPause",_l="toast.viewportResume",Wf=x.forwardRef((e,t)=>{const{__scopeToast:i,hotkey:n=Lx,label:r="Notifications ({hotkey})",...o}=e,a=Za(Vf,i),s=zx(i),l=x.useRef(null),c=x.useRef(null),u=x.useRef(null),p=x.useRef(null),g=St(t,p,a.onViewportChange),d=n.join("+").replace(/Key/g,"").replace(/Digit/g,""),y=a.toastCount>0;x.useEffect(()=>{const b=m=>{var v;n.length!==0&&n.every(w=>m[w]||m.code===w)&&((v=p.current)==null||v.focus())};return document.addEventListener("keydown",b),()=>document.removeEventListener("keydown",b)},[n]),x.useEffect(()=>{const b=l.current,m=p.current;if(y&&b&&m){const f=()=>{if(!a.isClosePausedRef.current){const C=new CustomEvent(Fl);m.dispatchEvent(C),a.isClosePausedRef.current=!0}},v=()=>{if(a.isClosePausedRef.current){const C=new CustomEvent(_l);m.dispatchEvent(C),a.isClosePausedRef.current=!1}},w=C=>{!b.contains(C.relatedTarget)&&v()},S=()=>{b.contains(document.activeElement)||v()};return b.addEventListener("focusin",f),b.addEventListener("focusout",w),b.addEventListener("pointermove",f),b.addEventListener("pointerleave",S),window.addEventListener("blur",f),window.addEventListener("focus",v),()=>{b.removeEventListener("focusin",f),b.removeEventListener("focusout",w),b.removeEventListener("pointermove",f),b.removeEventListener("pointerleave",S),window.removeEventListener("blur",f),window.removeEventListener("focus",v)}}},[y,a.isClosePausedRef]);const h=x.useCallback(({tabbingDirection:b})=>{const f=s().map(v=>{const w=v.ref.current,S=[w,...Vx(w)];return b==="forwards"?S:S.reverse()});return(b==="forwards"?f.reverse():f).flat()},[s]);return x.useEffect(()=>{const b=p.current;if(b){const m=f=>{var S,C,A;const v=f.altKey||f.ctrlKey||f.metaKey;if(f.key==="Tab"&&!v){const z=document.activeElement,N=f.shiftKey;if(f.target===b&&N){(S=c.current)==null||S.focus();return}const j=h({tabbingDirection:N?"backwards":"forwards"}),W=j.findIndex(M=>M===z);Fs(j.slice(W+1))?f.preventDefault():N?(C=c.current)==null||C.focus():(A=u.current)==null||A.focus()}};return b.addEventListener("keydown",m),()=>b.removeEventListener("keydown",m)}},[s,h]),I.jsxs(vx,{ref:l,role:"region","aria-label":r.replace("{hotkey}",d),tabIndex:-1,style:{pointerEvents:y?void 0:"none"},children:[y&&I.jsx(Gl,{ref:c,onFocusFromOutsideViewport:()=>{const b=h({tabbingDirection:"forwards"});Fs(b)}}),I.jsx(Kc.Slot,{scope:i,children:I.jsx($e.ol,{tabIndex:-1,...o,ref:g})}),y&&I.jsx(Gl,{ref:u,onFocusFromOutsideViewport:()=>{const b=h({tabbingDirection:"backwards"});Fs(b)}})]})});Wf.displayName=Vf;var qf="ToastFocusProxy",Gl=x.forwardRef((e,t)=>{const{__scopeToast:i,onFocusFromOutsideViewport:n,...r}=e,o=Za(qf,i);return I.jsx(Qa,{"aria-hidden":!0,tabIndex:0,...r,ref:t,style:{position:"fixed"},onFocus:a=>{var c;const s=a.relatedTarget;!((c=o.viewport)!=null&&c.contains(s))&&n()}})});Gl.displayName=qf;var po="Toast",Nx="toast.swipeStart",Mx="toast.swipeMove",Ox="toast.swipeCancel",Ux="toast.swipeEnd",Qf=x.forwardRef((e,t)=>{const{forceMount:i,open:n,defaultOpen:r,onOpenChange:o,...a}=e,[s,l]=Cx({prop:n,defaultProp:r??!0,onChange:o,caller:po});return I.jsx(Qc,{present:i||s,children:I.jsx(Dx,{open:s,...a,ref:t,onClose:()=>l(!1),onPause:Pi(e.onPause),onResume:Pi(e.onResume),onSwipeStart:ve(e.onSwipeStart,c=>{c.currentTarget.setAttribute("data-swipe","start")}),onSwipeMove:ve(e.onSwipeMove,c=>{const{x:u,y:p}=c.detail.delta;c.currentTarget.setAttribute("data-swipe","move"),c.currentTarget.style.setProperty("--radix-toast-swipe-move-x",`${u}px`),c.currentTarget.style.setProperty("--radix-toast-swipe-move-y",`${p}px`)}),onSwipeCancel:ve(e.onSwipeCancel,c=>{c.currentTarget.setAttribute("data-swipe","cancel"),c.currentTarget.style.removeProperty("--radix-toast-swipe-move-x"),c.currentTarget.style.removeProperty("--radix-toast-swipe-move-y"),c.currentTarget.style.removeProperty("--radix-toast-swipe-end-x"),c.currentTarget.style.removeProperty("--radix-toast-swipe-end-y")}),onSwipeEnd:ve(e.onSwipeEnd,c=>{const{x:u,y:p}=c.detail.delta;c.currentTarget.setAttribute("data-swipe","end"),c.currentTarget.style.removeProperty("--radix-toast-swipe-move-x"),c.currentTarget.style.removeProperty("--radix-toast-swipe-move-y"),c.currentTarget.style.setProperty("--radix-toast-swipe-end-x",`${u}px`),c.currentTarget.style.setProperty("--radix-toast-swipe-end-y",`${p}px`),l(!1)})})})});Qf.displayName=po;var[jx,Bx]=Hf(po,{onClose(){}}),Dx=x.forwardRef((e,t)=>
40{const{__scopeToast:i,type:n="foreground",duration:r,open:o,onClose:a,onEscapeKeyDown:s,onPause:l,onResume:c,onSwipeStart:u,onSwipeMove:p,onSwipeCancel:g,onSwipeEnd:d,...y}=e,h=Za(po,i),[b,m]=x.useState(null),f=St(t,M=>m(M)),v=x.useRef(null),w=x.useRef(null),S=r||h.duration,C=x.useRef(0),A=x.useRef(S),z=x.useRef(0),{onToastAdd:N,onToastRemove:L}=h,D=Pi(()=>{var Z;(b==null?void 0:b.contains(document.activeElement))&&((Z=h.viewport)==null||Z.focus()),a()}),j=x.useCallback(M=>{!M||M===1/0||(window.clearTimeout(z.current),C.current=new Date().getTime(),z.current=window.setTimeout(D,M))},[D]);x.useEffect(()=>{const M=h.viewport;if(M){const Z=()=>{j(A.current),c==null||c()},F=()=>{const H=new Date().getTime()-C.current;A.current=A.current-H,window.clearTimeout(z.current),l==null||l()};return M.addEventListener(Fl,F),M.addEventListener(_l,Z),()=>{M.removeEventListener(Fl,F),M.removeEventListener(_l,Z)}}},[h.viewport,S,l,c,j]),x.useEffect(()=>{o&&!h.isClosePausedRef.current&&j(S)},[o,S,h.isClosePausedRef,j]),x.useEffect(()=>(N(),()=>L()),[N,L]);const W=x.useMemo(()=>b?tm(b):null,[b]);return h.viewport?I.jsxs(I.Fragment,{children:[W&&I.jsx(Fx,{__scopeToast:i,role:"status","aria-live":n==="foreground"?"assertive":"polite","aria-atomic":!0,children:W}),I.jsx(jx,{scope:i,onClose:D,children:uo.createPortal(I.jsx(Kc.ItemSlot,{scope:i,children:I.jsx(hx,{asChild:!0,onEscapeKeyDown:ve(s,()=>{h.isFocusedToastEscapeKeyDownRef.current||D(),h.isFocusedToastEscapeKeyDownRef.current=!1}),children:I.jsx($e.li,{role:"status","aria-live":"off","aria-atomic":!0,tabIndex:0,"data-state":o?"open":"closed","data-swipe-direction":h.swipeDirection,...y,ref:f,style:{userSelect:"none",touchAction:"none",...e.style},onKeyDown:ve(e.onKeyDown,M=>{M.key==="Escape"&&(s==null||s(M.nativeEvent),M.nativeEvent.defaultPrevented||(h.isFocusedToastEscapeKeyDownRef.current=!0,D()))}),onPointerDown:ve(e.onPointerDown,M=>{M.button===0&&(v.current={x:M.clientX,y:M.clientY})}),onPointerMove:ve(e.onPointerMove,M=>{if(!v.current)return;const Z=M.clientX-v.current.x,F=M.clientY-v.current.y,H=!!w.current,E=["left","right"].includes(h.swipeDirection),R=["left","up"].includes(h.swipeDirection)?Math.min:Math.max,O=E?R(0,Z):0,$=E?0:R(0,F),B=M.pointerType==="touch"?10:2,q={x:O,y:$},K={originalEvent:M,delta:q};H?(w.current=q,Uo(Mx,p,K,{discrete:!1})):Lu(q,h.swipeDirection,B)?(w.current=q,Uo(Nx,u,K,{discrete:!1}),M.target.setPointerCapture(M.pointerId)):(Math.abs(Z)>B||Math.abs(F)>B)&&(v.current=null)}),onPointerUp:ve(e.onPointerUp,M=>{const Z=w.current,F=M.target;if(F.hasPointerCapture(M.pointerId)&&F.releasePointerCapture(M.pointerId),w.current=null,v.current=null,Z){const H=M.currentTarget,E={originalEvent:M,delta:Z};Lu(Z,h.swipeDirection,h.swipeThreshold)?Uo(Ux,d,E,{discrete:!0}):Uo(Ox,g,E,{discrete:!0}),H.addEventListener("click",R=>R.preventDefault(),{once:!0})}})})})}),h.viewport)})]}):null}),Fx=e=>{const{__scopeToast:t,children:i,...n}=e,r=Za(po,t),[o,a]=x.useState(!1),[s,l]=x.useState(!1);return Hx(()=>a(!0)),x.useEffect(()=>{const c=window.setTimeout(()=>l(!0),1e3);return()=>window.clearTimeout(c)},[]),s?null:I.jsx(Gf,{asChild:!0,children:I.jsx(Qa,{...n,children:o&&I.jsxs(I.Fragment,{children:[r.label," ",i]})})})},_x="ToastTitle",Zf=x.forwardRef((e,t)=>{const{__scopeToast:i,...n}=e;return I.jsx($e.div,{...n,ref:t})});Zf.displayName=_x;var Gx="ToastDescription",Kf=x.forwardRef((e,t)=>{const{__scopeToast:i,...n}=e;return I.jsx($e.div,{...n,ref:t})});Kf.displayName=Gx;var Xf="ToastAction",Yf=x.forwardRef((e,t)=>{const{altText:i,...n}=e;return i.trim()?I.jsx(em,{altText:i,asChild:!0,children:I.jsx(Xc,{...n,ref:t})}):(console.error(`Invalid prop \`altText\` supplied to \`${Xf}\`. Expected non-empty \`string\`.`),null)});Yf.displayName=Xf;var Jf="ToastClose",Xc=x.forwardRef((e,t)=>{const{__scopeToast:i,...n}=e,r=Bx(Jf,i);return I.jsx(em,{asChild:!0,children:I.jsx($e.button,{type:"button",...n,ref:t,onClick:ve(e.onClick,r.onClose)})})});Xc.displayName=Jf;var em=x.forwardRef((e,t)=>{const{__scopeToast:i,altText:n,...r}=e;return I.jsx($e.div,{"data-radix-toast-announce-exclude":"","data-radix-toast-announce-alt":n||void 0,...r,ref:t})});function tm(e){const t=[];
vendor: 4,205 bytes, lines 40-65
40return Array.from(e.childNodes).forEach(n=>{if(n.nodeType===n.TEXT_NODE&&n.textContent&&t.push(n.textContent),$x(n)){const r=n.ariaHidden||n.hidden||n.style.display==="none",o=n.dataset.radixToastAnnounceExclude==="";if(!r)if(o){const a=n.dataset.radixToastAnnounceAlt;a&&t.push(a)}else t.push(...tm(n))}}),t}function Uo(e,t,i,{discrete:n}){const r=i.originalEvent.currentTarget,o=new CustomEvent(e,{bubbles:!0,cancelable:!0,detail:i});t&&r.addEventListener(e,t,{once:!0}),n?Bf(r,o):r.dispatchEvent(o)}var Lu=(e,t,i=0)=>{const n=Math.abs(e.x),r=Math.abs(e.y),o=n>r;return t==="left"||t==="right"?o&&n>i:!o&&r>i};function Hx(e=()=>{}){const t=Pi(e);Ti(()=>{let i=0,n=0;return i=window.requestAnimationFrame(()=>n=window.requestAnimationFrame(t)),()=>{window.cancelAnimationFrame(i),window.cancelAnimationFrame(n)}},[t])}function $x(e){return e.nodeType===e.ELEMENT_NODE}function Vx(e){const t=[],i=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:n=>{const r=n.tagName==="INPUT"&&n.type==="hidden";return n.disabled||n.hidden||r?NodeFilter.FILTER_SKIP:n.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;i.nextNode();)t.push(i.currentNode);return t}function Fs(e){const t=document.activeElement;return e.some(i=>i===t?!0:(i.focus(),document.activeElement!==t))}var Wx=$f,im=Wf,nm=Qf,rm=Zf,om=Kf,am=Yf,sm=Xc;function lm(e){var t,i,n="";if(typeof e=="string"||typeof e=="number")n+=e;else if(typeof e=="object")if(Array.isArray(e)){var r=e.length;for(t=0;t<r;t++)e[t]&&(i=lm(e[t]))&&(n&&(n+=" "),n+=i)}else for(i in e)e[i]&&(n&&(n+=" "),n+=i);return n}function cm(){for(var e,t,i=0,n="",r=arguments.length;i<r;i++)(e=arguments[i])&&(t=lm(e))&&(n&&(n+=" "),n+=t);return n}const Nu=e=>typeof e=="boolean"?`${e}`:e===0?"0":e,Mu=cm,qx=(e,t)=>i=>{var n;if((t==null?void 0:t.variants)==null)return Mu(e,i==null?void 0:i.class,i==null?void 0:i.className);const{variants:r,defaultVariants:o}=t,a=Object.keys(r).map(c=>{const u=i==null?void 0:i[c],p=o==null?void 0:o[c];if(u===null)return null;const g=Nu(u)||Nu(p);return r[c][g]}),s=i&&Object.entries(i).reduce((c,u)=>{let[p,g]=u;return g===void 0||(c[p]=g),c},{}),l=t==null||(n=t.compoundVariants)===null||n===void 0?void 0:n.reduce((c,u)=>{let{class:p,className:g,...d}=u;return Object.entries(d).every(y=>{let[h,b]=y;return Array.isArray(b)?b.includes({...o,...s}[h]):{...o,...s}[h]===b})?[...c,p,g]:c},[]);return Mu(e,a,l,i==null?void 0:i.class,i==null?void 0:i.className)};/** 41 * @license lucide-react v0.462.0 - ISC 42 * 43 * This source code is licensed under the ISC license. 44 * See the LICENSE file in the root directory of this source tree. 45 */const Qx=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),dm=(...e)=>e.filter((t,i,n)=>!!t&&t.trim()!==""&&n.indexOf(t)===i).join(" ").trim();/** 46 * @license lucide-react v0.462.0 - ISC 47 * 48 * This source code is licensed under the ISC license. 49 * See the LICENSE file in the root directory of this source tree. 50 */var Zx={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};/** 51 * @license lucide-react v0.462.0 - ISC 52 * 53 * This source code is licensed under the ISC license. 54 * See the LICENSE file in the root directory of this source tree. 55 */const Kx=x.forwardRef(({color:e="currentColor",size:t=24,strokeWidth:i=2,absoluteStrokeWidth:n,className:r="",children:o,iconNode:a,...s},l)=>x.createElement("svg",{ref:l,...Zx,width:t,height:t,stroke:e,strokeWidth:n?Number(i)*24/Number(t):i,className:dm("lucide",r),...s},[...a.map(([c,u])=>x.createElement(c,u)),...Array.isArray(o)?o:[o]]));/** 56 * @license lucide-react v0.462.0 - ISC 57 * 58 * This source code is licensed under the ISC license. 59 * See the LICENSE file in the root directory of this source tree. 60 */const Xx=(e,t)=>{const i=x.forwardRef(({className:n,...r},o)=>x.createElement(Kx,{ref:o,iconNode:t,className:dm(`lucide-${Qx(e)}`,n),...r}));return i.displayName=`${e}`,i};/** 61 * @license lucide-react v0.462.0 - ISC 62 * 63 * This source code is licensed under the ISC license. 64 * See the LICENSE file in the root directory of this source tree. 65 */const Yx=Xx("X",[["path",{d:"M18 6 6 18",key:"1bl5f8"}
vendor: 12,223 bytes, line 65
65],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]),Yc="-",Jx=e=>{const t=ty(e),{conflictingClassGroups:i,conflictingClassGroupModifiers:n}=e;return{getClassGroupId:a=>{const s=a.split(Yc);return s[0]===""&&s.length!==1&&s.shift(),um(s,t)||ey(a)},getConflictingClassGroupIds:(a,s)=>{const l=i[a]||[];return s&&n[a]?[...l,...n[a]]:l}}},um=(e,t)=>{var a;if(e.length===0)return t.classGroupId;const i=e[0],n=t.nextPart.get(i),r=n?um(e.slice(1),n):void 0;if(r)return r;if(t.validators.length===0)return;const o=e.join(Yc);return(a=t.validators.find(({validator:s})=>s(o)))==null?void 0:a.classGroupId},Ou=/^\[(.+)\]$/,ey=e=>{if(Ou.test(e)){const t=Ou.exec(e)[1],i=t==null?void 0:t.substring(0,t.indexOf(":"));if(i)return"arbitrary.."+i}},ty=e=>{const{theme:t,prefix:i}=e,n={nextPart:new Map,validators:[]};return ny(Object.entries(e.classGroups),i).forEach(([o,a])=>{Hl(a,n,o,t)}),n},Hl=(e,t,i,n)=>{e.forEach(r=>{if(typeof r=="string"){const o=r===""?t:Uu(t,r);o.classGroupId=i;return}if(typeof r=="function"){if(iy(r)){Hl(r(n),t,i,n);return}t.validators.push({validator:r,classGroupId:i});return}Object.entries(r).forEach(([o,a])=>{Hl(a,Uu(t,o),i,n)})})},Uu=(e,t)=>{let i=e;return t.split(Yc).forEach(n=>{i.nextPart.has(n)||i.nextPart.set(n,{nextPart:new Map,validators:[]}),i=i.nextPart.get(n)}),i},iy=e=>e.isThemeGetter,ny=(e,t)=>t?e.map(([i,n])=>{const r=n.map(o=>typeof o=="string"?t+o:typeof o=="object"?Object.fromEntries(Object.entries(o).map(([a,s])=>[t+a,s])):o);return[i,r]}):e,ry=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,i=new Map,n=new Map;const r=(o,a)=>{i.set(o,a),t++,t>e&&(t=0,n=i,i=new Map)};return{get(o){let a=i.get(o);if(a!==void 0)return a;if((a=n.get(o))!==void 0)return r(o,a),a},set(o,a){i.has(o)?i.set(o,a):r(o,a)}}},pm="!",oy=e=>{const{separator:t,experimentalParseClassName:i}=e,n=t.length===1,r=t[0],o=t.length,a=s=>{const l=[];let c=0,u=0,p;for(let b=0;b<s.length;b++){let m=s[b];if(c===0){if(m===r&&(n||s.slice(b,b+o)===t)){l.push(s.slice(u,b)),u=b+o;continue}if(m==="/"){p=b;continue}}m==="["?c++:m==="]"&&c--}const g=l.length===0?s:s.substring(u),d=g.startsWith(pm),y=d?g.substring(1):g,h=p&&p>u?p-u:void 0;return{modifiers:l,hasImportantModifier:d,baseClassName:y,maybePostfixModifierPosition:h}};return i?s=>i({className:s,parseClassName:a}):a},ay=e=>{if(e.length<=1)return e;const t=[];let i=[];return e.forEach(n=>{n[0]==="["?(t.push(...i.sort(),n),i=[]):i.push(n)}),t.push(...i.sort()),t},sy=e=>({cache:ry(e.cacheSize),parseClassName:oy(e),...Jx(e)}),ly=/\s+/,cy=(e,t)=>{const{parseClassName:i,getClassGroupId:n,getConflictingClassGroupIds:r}=t,o=[],a=e.trim().split(ly);let s="";for(let l=a.length-1;l>=0;l-=1){const c=a[l],{modifiers:u,hasImportantModifier:p,baseClassName:g,maybePostfixModifierPosition:d}=i(c);let y=!!d,h=n(y?g.substring(0,d):g);if(!h){if(!y){s=c+(s.length>0?" "+s:s);continue}if(h=n(g),!h){s=c+(s.length>0?" "+s:s);continue}y=!1}const b=ay(u).join(":"),m=p?b+pm:b,f=m+h;if(o.includes(f))continue;o.push(f);const v=r(h,y);for(let w=0;w<v.length;++w){const S=v[w];o.push(m+S)}s=c+(s.length>0?" "+s:s)}return s};function dy(){let e=0,t,i,n="";for(;e<arguments.length;)(t=arguments[e++])&&(i=gm(t))&&(n&&(n+=" "),n+=i);return n}const gm=e=>{if(typeof e=="string")return e;let t,i="";for(let n=0;n<e.length;n++)e[n]&&(t=gm(e[n]))&&(i&&(i+=" "),i+=t);return i};function uy(e,...t){let i,n,r,o=a;function a(l){const c=t.reduce((u,p)=>p(u),e());return i=sy(c),n=i.cache.get,r=i.cache.set,o=s,s(l)}function s(l){const c=n(l);if(c)return c;const u=cy(l,i);return r(l,u),u}return function(){return o(dy.apply(null,arguments))}}const ne=e=>{const t=i=>i[e]||[];return t.isThemeGetter=!0,t},fm=/^\[(?:([a-z-]+):)?(.+)\]$/i,py=/^\d+\/\d+$/,gy=new Set(["px","full","screen"]),fy=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,my=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,hy=/^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/,vy=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,xy=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,jt=e=>On(e)||gy.has(e)||py.test(e),oi=e=>nr(e,"length",ky),On=e=>!!e&&!Number.isNaN(Number(e)),_s=e=>nr(e,"number",On),xr=e=>!!e&&Number.isInteger(Number(e)),yy=e=>e.endsWith("%")&&On(e.slice(0,-1)),V=e=>fm.test(e),ai=e=>fy.test(e),by=new Set(["length","size","percentage"]),wy=e=>nr(e,by,mm),Sy=e=>nr(e,"position",mm),Cy=new Set(["image","url"]),Ay=e=>nr(e,Cy,Ry),Iy=e=>nr(e,"",Ey),yr=()=>!0,nr=(e,t,i)=>{const n=fm.exec(e);return n?n[1]?typeof t=="string"?n[1]===t:t.has(n[1]):i(n[2]):!1},ky=e=>my.test(e)&&!hy.test(e),mm=()=>!1,Ey=e=>vy.test(e),Ry=e=>xy.test(e),zy=()=>{const e=ne("colors"),t=ne("spacing"),i=ne("blur"),n=ne("brightness"),r=ne("borderColor"),o=ne("borderRadius"),a=ne("borderSpacing"),s=ne("borderWidth"),l=ne("contrast"),c=ne("grayscale"),u=ne("hueRotate"),p=ne("invert"),g=ne("gap"),d=ne("gradientColorStops"),y=ne("gradientColorStopPositions"),h=ne("inset"),b=ne("margin"),m=ne("opacity"),f=ne("padding"),v=ne("saturate"),w=ne("scale"),S=ne("sepia"),C=ne("skew"),A=ne("space"),z=ne("translate"),N=()=>["auto","contain","none"],L=()=>["auto","hidden","clip","visible","scroll"],D=()=>["auto",V,t],j=()=>[V,t],W=()=>["",jt,oi],M=()=>["auto",On,V],Z=()=>["bottom","center","left","left-bottom","left-top","right","right-bottom","right-top","top"],F=()=>["solid","dashed","dotted","double","none"],H=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],E=()=>["start","end","center","between","around","evenly","stretch"],R=()=>["","0",V],O=()=>["auto","avoid","all","avoid-page","page","left","right","column"],$=()=>[On,V];return{cacheSize:500,separator:":",theme:{colors:[yr],spacing:[jt,oi],blur:["none","",ai,V],brightness:$(),borderColor:[e],borderRadius:["none","","full",ai,V],borderSpacing:j(),borderWidth:W(),contrast:$(),grayscale:R(),hueRotate:$(),invert:R(),gap:j(),gradientColorStops:[e],gradientColorStopPositions:[yy,oi],inset:D(),margin:D(),opacity:$(),padding:j(),saturate:$(),scale:$(),sepia:R(),skew:$(),space:j(),translate:j()},classGroups:{aspect:[{aspect:["auto","square","video",V]}],container:["container"],columns:[{columns:[ai]}],"break-after":[{"break-after":O()}],"break-before":[{"break-before":O()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:[...Z(),V]}],overflow:[{overflow:L()}],"overflow-x":[{"overflow-x":L()}],"overflow-y":[{"overflow-y":L()}],overscroll:[{overscroll:N()}],"overscroll-x":[{"overscroll-x":N()}],"overscroll-y":[{"overscroll-y":N()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:[h]}],"inset-x":[{"inset-x":[h]}],"inset-y":[{"inset-y":[h]}],start:[{start:[h]}],end:[{end:[h]}],top:[{top:[h]}],right:[{right:[h]}],bottom:[{bottom:[h]}],left:[{left:[h]}],visibility:["visible","invisible","collapse"],z:[{z:["auto",xr,V]}],basis:[{basis:D()}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["wrap","wrap-reverse","nowrap"]}],flex:[{flex:["1","auto","initial","none",V]}],grow:[{grow:R()}],shrink:[{shrink:R()}],order:[{order:["first","last","none",xr,V]}],"grid-cols":[{"grid-cols":[yr]}],"col-start-end":[{col:["auto",{span:["full",xr,V]},V]}],"col-start":[{"col-start":M()}],"col-end":[{"col-end":M()}],"grid-rows":[{"grid-rows":[yr]}],"row-start-end":[{row:["auto",{span:[xr,V]},V]}],"row-start":[{"row-start":M()}],"row-end":[{"row-end":M()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":["auto","min","max","fr",V]}],"auto-rows":[{"auto-rows":["auto","min","max","fr",V]}],gap:[{gap:[g]}],"gap-x":[{"gap-x":[g]}],"gap-y":[{"gap-y":[g]}],"justify-content":[{justify:["normal",...E()]}],"justify-items":[{"justify-items":["start","end","center","stretch"]}],"justify-self":[{"justify-self":["auto","start","end","center","stretch"]}],"align-content":[{content:["normal",...E(),"baseline"]}],"align-items":[{items:["start","end","center","baseline","stretch"]}],"align-self":[{self:["auto","start","end","center","stretch","baseline"]}],"place-content":[{"place-content":[...E(),"baseline"]}],"place-items":[{"place-items":["start","end","center","baseline","stretch"]}],"place-self":[{"place-self":["auto","start","end","center","stretch"]}],p:[{p:[f]}],px:[{px:[f]}],py:[{py:[f]}],ps:[{ps:[f]}],pe:[{pe:[f]}],pt:[{pt:[f]}],pr:[{pr:[f]}],pb:[{pb:[f]}],pl:[{pl:[f]}],m:[{m:[b]}],mx:[{mx:[b]}],my:[{my:[b]}],ms:[{ms:[b]}],me:[{me:[b]}],mt:[{mt:[b]}],mr:[{mr:[b]}],mb:[{mb:[b]}],ml:[{ml:[b]}],"space-x":[{"space-x":[A]}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":[A]}],"space-y-reverse":["space-y-reverse"],w:[{w:["auto","min","max","fit","svw","lvw","dvw",V,t]}],"min-w":[{"min-w":[V,t,"min","max","fit"]}],"max-w":[{"max-w":[V,t,"none","full","min","max","fit","prose",{screen:[ai]},ai]}],h:[{h:[V,t,"auto","min","max","fit","svh","lvh","dvh"]}],"min-h":[{"min-h":[V,t,"min","max","fit","svh","lvh","dvh"]}],"max-h":[{"max-h":[V,t,"min","max","fit","svh","lvh","dvh"]}],size:[{size:[V,t,"auto","min","max","fit"]}],"font-size":[{text:["base",ai,oi]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:["thin","extralight","light","normal","medium","semibold","bold","extrabold","black",_s]}],"font-family":[{font:[yr]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:["tighter","tight","normal","wide","wider","widest",V]}],"line-clamp":[{"line-clamp":["none",On,_s]}],leading:[{leading:["none","tight","snug","normal","relaxed","loose",jt,V]}],"list-image":[{"list-image":["none",V]}],"list-style-type":[{list:["none","disc","decimal",V]}],"list-style-position":[{list:["inside","outside"]}],"placeholder-color":[{placeholder:[e]}],"placeholder-opacity":[{"placeholder-opacity":[m]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"text-color":[{text:[e]}],"text-opacity":[{"text-opacity":[m]}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...F(),"wavy"]}],"text-decoration-thickness":[{decoration:["auto","from-font",jt,oi]}],"underline-offset":[{"underline-offset":["auto",jt,V]}],"text-decoration-color":[{decoration:[e]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:j()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",V]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",V]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-opacity":[{"bg-opacity":[m]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:[...Z(),Sy]}],"bg-repeat":[{bg:["no-repeat",{repeat:["","x","y","round","space"]}]}],"bg-size":[{bg:["auto","cover","contain",wy]}],"bg-image":[{bg:["none",{"gradient-to":["t","tr","r","br","b","bl","l","tl"]},Ay]}],"bg-color":[{bg:[e]}],"gradient-from-pos":[{from:[y]}
vendor: 5,172 bytes, line 65
65],"gradient-via-pos":[{via:[y]}],"gradient-to-pos":[{to:[y]}],"gradient-from":[{from:[d]}],"gradient-via":[{via:[d]}],"gradient-to":[{to:[d]}],rounded:[{rounded:[o]}],"rounded-s":[{"rounded-s":[o]}],"rounded-e":[{"rounded-e":[o]}],"rounded-t":[{"rounded-t":[o]}],"rounded-r":[{"rounded-r":[o]}],"rounded-b":[{"rounded-b":[o]}],"rounded-l":[{"rounded-l":[o]}],"rounded-ss":[{"rounded-ss":[o]}],"rounded-se":[{"rounded-se":[o]}],"rounded-ee":[{"rounded-ee":[o]}],"rounded-es":[{"rounded-es":[o]}],"rounded-tl":[{"rounded-tl":[o]}],"rounded-tr":[{"rounded-tr":[o]}],"rounded-br":[{"rounded-br":[o]}],"rounded-bl":[{"rounded-bl":[o]}],"border-w":[{border:[s]}],"border-w-x":[{"border-x":[s]}],"border-w-y":[{"border-y":[s]}],"border-w-s":[{"border-s":[s]}],"border-w-e":[{"border-e":[s]}],"border-w-t":[{"border-t":[s]}],"border-w-r":[{"border-r":[s]}],"border-w-b":[{"border-b":[s]}],"border-w-l":[{"border-l":[s]}],"border-opacity":[{"border-opacity":[m]}],"border-style":[{border:[...F(),"hidden"]}],"divide-x":[{"divide-x":[s]}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":[s]}],"divide-y-reverse":["divide-y-reverse"],"divide-opacity":[{"divide-opacity":[m]}],"divide-style":[{divide:F()}],"border-color":[{border:[r]}],"border-color-x":[{"border-x":[r]}],"border-color-y":[{"border-y":[r]}],"border-color-s":[{"border-s":[r]}],"border-color-e":[{"border-e":[r]}],"border-color-t":[{"border-t":[r]}],"border-color-r":[{"border-r":[r]}],"border-color-b":[{"border-b":[r]}],"border-color-l":[{"border-l":[r]}],"divide-color":[{divide:[r]}],"outline-style":[{outline:["",...F()]}],"outline-offset":[{"outline-offset":[jt,V]}],"outline-w":[{outline:[jt,oi]}],"outline-color":[{outline:[e]}],"ring-w":[{ring:W()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:[e]}],"ring-opacity":[{"ring-opacity":[m]}],"ring-offset-w":[{"ring-offset":[jt,oi]}],"ring-offset-color":[{"ring-offset":[e]}],shadow:[{shadow:["","inner","none",ai,Iy]}],"shadow-color":[{shadow:[yr]}],opacity:[{opacity:[m]}],"mix-blend":[{"mix-blend":[...H(),"plus-lighter","plus-darker"]}],"bg-blend":[{"bg-blend":H()}],filter:[{filter:["","none"]}],blur:[{blur:[i]}],brightness:[{brightness:[n]}],contrast:[{contrast:[l]}],"drop-shadow":[{"drop-shadow":["","none",ai,V]}],grayscale:[{grayscale:[c]}],"hue-rotate":[{"hue-rotate":[u]}],invert:[{invert:[p]}],saturate:[{saturate:[v]}],sepia:[{sepia:[S]}],"backdrop-filter":[{"backdrop-filter":["","none"]}],"backdrop-blur":[{"backdrop-blur":[i]}],"backdrop-brightness":[{"backdrop-brightness":[n]}],"backdrop-contrast":[{"backdrop-contrast":[l]}],"backdrop-grayscale":[{"backdrop-grayscale":[c]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[u]}],"backdrop-invert":[{"backdrop-invert":[p]}],"backdrop-opacity":[{"backdrop-opacity":[m]}],"backdrop-saturate":[{"backdrop-saturate":[v]}],"backdrop-sepia":[{"backdrop-sepia":[S]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":[a]}],"border-spacing-x":[{"border-spacing-x":[a]}],"border-spacing-y":[{"border-spacing-y":[a]}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["none","all","","colors","opacity","shadow","transform",V]}],duration:[{duration:$()}],ease:[{ease:["linear","in","out","in-out",V]}],delay:[{delay:$()}],animate:[{animate:["none","spin","ping","pulse","bounce",V]}],transform:[{transform:["","gpu","none"]}],scale:[{scale:[w]}],"scale-x":[{"scale-x":[w]}],"scale-y":[{"scale-y":[w]}],rotate:[{rotate:[xr,V]}],"translate-x":[{"translate-x":[z]}],"translate-y":[{"translate-y":[z]}],"skew-x":[{"skew-x":[C]}],"skew-y":[{"skew-y":[C]}],"transform-origin":[{origin:["center","top","top-right","right","bottom-right","bottom","bottom-left","left","top-left",V]}],accent:[{accent:["auto",e]}],appearance:[{appearance:["none","auto"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",V]}],"caret-color":[{caret:[e]}],"pointer-events":[{"pointer-events":["none","auto"]}],resize:[{resize:["none","y","x",""]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":j()}],"scroll-mx":[{"scroll-mx":j()}],"scroll-my":[{"scroll-my":j()}],"scroll-ms":[{"scroll-ms":j()}],"scroll-me":[{"scroll-me":j()}],"scroll-mt":[{"scroll-mt":j()}],"scroll-mr":[{"scroll-mr":j()}],"scroll-mb":[{"scroll-mb":j()}],"scroll-ml":[{"scroll-ml":j()}],"scroll-p":[{"scroll-p":j()}],"scroll-px":[{"scroll-px":j()}],"scroll-py":[{"scroll-py":j()}],"scroll-ps":[{"scroll-ps":j()}],"scroll-pe":[{"scroll-pe":j()}],"scroll-pt":[{"scroll-pt":j()}],"scroll-pr":[{"scroll-pr":j()}],"scroll-pb":[{"scroll-pb":j()}],"scroll-pl":[{"scroll-pl":j()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}
vendor: 4,487 bytes, line 65
65],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",V]}],fill:[{fill:[e,"none"]}],"stroke-w":[{stroke:[jt,oi,_s]}],stroke:[{stroke:[e,"none"]}],sr:["sr-only","not-sr-only"],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]}}},Py=uy(zy);function cn(...e){return Py(cm(e))}const Ty=Wx,hm=x.forwardRef(({className:e,...t},i)=>I.jsx(im,{ref:i,className:cn("fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]",e),...t}));hm.displayName=im.displayName;const Ly=qx("group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full",{variants:{variant:{default:"border bg-background text-foreground",destructive:"destructive group border-destructive bg-destructive text-destructive-foreground"}},defaultVariants:{variant:"default"}}),vm=x.forwardRef(({className:e,variant:t,...i},n)=>I.jsx(nm,{ref:n,className:cn(Ly({variant:t}),e),...i}));vm.displayName=nm.displayName;const Ny=x.forwardRef(({className:e,...t},i)=>I.jsx(am,{ref:i,className:cn("inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium ring-offset-background transition-colors group-[.destructive]:border-muted/40 hover:bg-secondary group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 group-[.destructive]:focus:ring-destructive disabled:pointer-events-none disabled:opacity-50",e),...t}));
65Ny.displayName=am.displayName;const xm=x.forwardRef(({className:e,...t},i)=>I.jsx(sm,{ref:i,className:cn("absolute right-2 top-2 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity group-hover:opacity-100 group-[.destructive]:text-red-300 hover:text-foreground group-[.destructive]:hover:text-red-50 focus:opacity-100 focus:outline-none focus:ring-2 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600",e),"toast-close":"",...t,children:I.jsx(Yx,{className:"h-4 w-4"})}));xm.displayName=sm.displayName;const ym=x.forwardRef(({className:e,...t},i)=>I.jsx(rm,{ref:i,className:cn("text-sm font-semibold",e),...t}));ym.displayName=rm.displayName;const bm=x.forwardRef(({className:e,...t},i)=>I.jsx(om,{ref:i,className:cn("text-sm opacity-90",e),...t}));bm.displayName=om.displayName;function My(){const{toasts:e}=ex();return I.jsxs(Ty,{children:[e.map(function({id:t,title:i,description:n,action:r,...o}){return I.jsxs(vm,{...o,children:[I.jsxs("div",{className:"grid gap-1",children:[i&&I.jsx(ym,{children:i}),n&&I.jsx(bm,{children:n})]}),r,I.jsx(xm,{})]},t)}),I.jsx(hm,{})]})}var ju=["light","dark"],Oy="(prefers-color-scheme: dark)",Uy=x.createContext(void 0),jy={setTheme:e=>{},themes:[]},By=()=>{var e;return(e=x.useContext(Uy))!=null?e:jy};x.memo(({forcedTheme:e,storageKey:t,attribute:i,enableSystem:n,enableColorScheme:r,defaultTheme:o,value:a,attrs:s,nonce:l})=>{let c=o==="system",u=i==="class"?`var d=document.documentElement,c=d.classList;${`c.remove(${s.map(y=>`'${y}'`).join(",")})`};`:`var d=document.documentElement,n='${i}',s='setAttribute';`,p=r?ju.includes(o)&&o?`if(e==='light'||e==='dark'||!e)d.style.colorScheme=e||'${o}'`:"if(e==='light'||e==='dark')d.style.colorScheme=e":"",g=(y,h=!1,b=!0)=>{let m=a?a[y]:y,f=h?y+"|| ''":`'${m}'`,v="";return r&&b&&!h&&ju.includes(y)&&(v+=`d.style.colorScheme = '${y}';`),i==="class"?h||m?v+=`c.add(${f})`:v+="null":m&&(v+=`d[s](n,${f})`),v},d=e?`!function(){${u}${g(e)}}()`:n?`!function(){try{${u}var e=localStorage.getItem('${t}');if('system'===e||(!e&&${c})){var t='${Oy}',m=window.matchMedia(t);if(m.media!==t||m.matches){${g("dark")}}else{${g("light")}}}else if(e){${a?`var x=${JSON.stringify(a)};`:""}${g(a?"x[e]":"e",!0)}}${c?"":"else{"+g(o,!1,!1)+"}"}${p}}catch(e){}}()`:`!function(){try{${u}var e=localStorage.getItem('${t}');if(e){${a?`var x=${JSON.stringify(a)};`:""}${g(a?"x[e]":"e",!0)}}else{${g(o,!1,!1)};}${p}}catch(t){}}();`;return x.createElement("script",{nonce:l,dangerouslySetInnerHTML:{__html:d}})});var Dy=e=>{switch(e){case"success":return Gy;case"info":return $y;case"warning":return Hy;case"error":return Vy;default:return null}},Fy=Array(12).fill(0),_y=({visible:e,className:t})=>T.createElement("div",{className:["sonner-loading-wrapper",t].filter(Boolean).join(" "),"data-visible":e},T.createElement("div",{className:"sonner-spinner"},Fy.map((i,n)=>T.createElement("div",{className:"sonner-loading-bar",key:`spinner-bar-${n}`})))),Gy=T.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},T.createElement("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z",clipRule:"evenodd"})),Hy=T.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",height:"20",width:"20"},T.createElement("path",{fillRule:"evenodd",d:"M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z",clipRule:"evenodd"})),$y=T.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},T.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z",clipRule:"evenodd"})),Vy=T.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},T.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z",clipRule:"evenodd"})),Wy=T.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"},T.createElement("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),T.createElement("line",{x1:"6",y1:"6",x2:"18",y2:"18"})),qy=()=>{let[e,t]=T.useState(document.hidden);return T.useEffect(()=>{let i=()=>{t(document.hidden)};
65return document.addEventListener("visibilitychange",i),()=>window.removeEventListener("visibilitychange",i)},[]),e},$l=1,Qy=class{constructor(){this.subscribe=e=>(this.subscribers.push(e),()=>{let t=this.subscribers.indexOf(e);this.subscribers.splice(t,1)}),this.publish=e=>{this.subscribers.forEach(t=>t(e))},this.addToast=e=>{this.publish(e),this.toasts=[...this.toasts,e]},this.create=e=>{var t;let{message:i,...n}=e,r=typeof(e==null?void 0:e.id)=="number"||((t=e.id)==null?void 0:t.length)>0?e.id:$l++,o=this.toasts.find(s=>s.id===r),a=e.dismissible===void 0?!0:e.dismissible;return this.dismissedToasts.has(r)&&this.dismissedToasts.delete(r),o?this.toasts=this.toasts.map(s=>s.id===r?(this.publish({...s,...e,id:r,title:i}),{...s,...e,id:r,dismissible:a,title:i}):s):this.addToast({title:i,...n,dismissible:a,id:r}),r},this.dismiss=e=>(this.dismissedToasts.add(e),e||this.toasts.forEach(t=>{this.subscribers.forEach(i=>i({id:t.id,dismiss:!0}))}),this.subscribers.forEach(t=>t({id:e,dismiss:!0})),e),this.message=(e,t)=>this.create({...t,message:e}),this.error=(e,t)=>this.create({...t,message:e,type:"error"}),this.success=(e,t)=>this.create({...t,type:"success",message:e}),this.info=(e,t)=>this.create({...t,type:"info",message:e}),this.warning=(e,t)=>this.create({...t,type:"warning",message:e}),this.loading=(e,t)=>
65this.create({...t,type:"loading",message:e}),this.promise=(e,t)=>{if(!t)return;let i;t.loading!==void 0&&(i=this.create({...t,promise:e,type:"loading",message:t.loading,description:typeof t.description!="function"?t.description:void 0}));let n=e instanceof Promise?e:e(),r=i!==void 0,o,a=n.then(async l=>{if(o=["resolve",l],T.isValidElement(l))r=!1,this.create({id:i,type:"default",message:l});else if(Ky(l)&&!l.ok){r=!1;let c=typeof t.error=="function"?await t.error(`HTTP error! status: ${l.status}`):t.error,u=typeof t.description=="function"?await t.description(`HTTP error! status: ${l.status}`):t.description;this.create({id:i,type:"error",message:c,description:u})}else if(t.success!==void 0){r=!1;let c=typeof t.success=="function"?await t.success(l):t.success,u=typeof t.description=="function"?await t.description(l):t.description;this.create({id:i,type:"success",message:c,description:u})}}).catch(async l=>{if(o=["reject",l],t.error!==void 0){r=!1;let c=typeof t.error=="function"?await t.error(l):t.error,u=typeof t.description=="function"?await t.description(l):t.description;this.create({id:i,type:"error",message:c,description:u})}}).finally(()=>{var l;r&&(this.dismiss(i),i=void 0),(l=t.finally)==null||l.call(t)}),s=()=>new Promise((l,c)=>a.then(()=>o[0]==="reject"?c(o[1]):l(o[1])).catch(c));return typeof i!="string"&&typeof i!="number"?{unwrap:s}:Object.assign(i,{unwrap:s})},this.custom=(e,t)=>{let i=(t==null?void 0:t.id)||$l++;return this.create({jsx:e(i),id:i,...t}),i},this.getActiveToasts=()=>this.toasts.filter(e=>!this.dismissedToasts.has(e.id)),this.subscribers=[],this.toasts=[],this.dismissedToasts=new Set}},Be=new Qy,Zy=(e,t)=>{let i=(t==null?void 0:t.id)||$l++;return Be.addToast({title:e,...t,id:i}),i},Ky=e=>e&&typeof e=="object"&&"ok"in e&&typeof e.ok=="boolean"&&"status"in e&&typeof e.status=="number",Xy=Zy,Yy=()=>Be.toasts,Jy=()=>Be.getActiveToasts();Object.assign(Xy,{success:Be.success,info:Be.info,warning:Be.warning,error:Be.error,custom:Be.custom,message:Be.message,promise:Be.promise,dismiss:Be.dismiss,loading:Be.loading},{getHistory:Yy,getToasts:Jy});function eb(e,{insertAt:t}={}){if(typeof document>"u")return;let i=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css",t==="top"&&i.firstChild?i.insertBefore(n,i.firstChild):i.appendChild(n),n.styleSheet?n.styleSheet.cssText=e:n.appendChild(document.createTextNode(e))}eb(`:where(html[dir="ltr"]),:where([data-sonner-toaster][dir="ltr"]){--toast-icon-margin-start: -3px;--toast-icon-margin-end: 4px;--toast-svg-margin-start: -1px;--toast-svg-margin-end: 0px;--toast-button-margin-start: auto;--toast-button-margin-end: 0;--toast-close-button-start: 0;--toast-close-button-end: unset;--toast-close-button-transform: translate(-35%, -35%)}:where(html[dir="rtl"]),:where([data-sonner-toaster][dir="rtl"]){--toast-icon-margin-start: 4px;--toast-icon-margin-end: -3px;--toast-svg-margin-start: 0px;--toast-svg-margin-end: -1px;--toast-button-margin-start: 0;--toast-button-margin-end: auto;--toast-close-button-start: unset;--toast-close-button-end: 0;--toast-close-button-transform: translate(35%, -35%)}:where([data-sonner-toaster]){position:fixed;width:var(--width);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;--gray1: hsl(0, 0%, 99%);--gray2: hsl(0, 0%, 97.3%);--gray3: hsl(0, 0%, 95.1%);--gray4: hsl(0, 0%, 93%);--gray5: hsl(0, 0%, 90.9%);--gray6: hsl(0, 0%, 88.7%);--gray7: hsl(0, 0%, 85.8%);--gray8: hsl(0, 0%, 78%);--gray9: hsl(0, 0%, 56.1%);--gray10: hsl(0, 0%, 52.3%);--gray11: hsl(0, 0%, 43.5%);--gray12: hsl(0, 0%, 9%);--border-radius: 8px;box-sizing:border-box;padding:0;margin:0;list-style:none;outline:none;z-index:999999999;transition:transform .4s ease}:where([data-sonner-toaster][data-lifted="true"]){transform:translateY(-10px)}@media (hover: none) and (pointer: coarse){:where([data-sonner-toaster][data-lifted="true"]){transform:none}}:where([data-sonner-toaster][data-x-position="right"]){right:var(--offset-right)}:where([data-sonner-toaster][data-x-position="left"]){left:var(--offset-left)}:where([data-sonner-toaster][data-x-position="center"]){left:50%;transform:translate(-50%)}:where([data-sonner-toaster][data-y-position="top"]){top:var(--offset-top)}:where([data-sonner-toaster][data-y-position="bottom"]){bottom:var(--offset-bottom)}:where([data-sonner-toast]){--y: translateY(100%);--lift-amount: calc(var(--lift) * var(--gap));z-index:var(--z-index);position:absolute;opacity:0;transform:var(--y);filter:blur(0);touch-action:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;box-sizing:border-box;outline:none;overflow-wrap:anywhere}:where([data-sonner-toast][data-styled="true"]){padding:16px;background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);box-shadow:0 4px 12px #0000001a;width:var(--width);font-size:13px;display:flex;align-items:center;gap:6px}:where([data-sonner-toast]:focus-visible){box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}:where([data-sonner-toast][data-y-position="top"]){top:0;--y: translateY(-100%);--lift: 1;--lift-amount: calc(1 * var(--gap))}:where([data-sonner-toast][data-y-position="bottom"]){bottom:0;--y: translateY(100%);--lift: -1;--lift-amount: calc(var(--lift) * var(--gap))}:where([data-sonner-toast]) :where([data-description]){font-weight:400;line-height:1.4;color:inherit}:where([data-sonner-toast]) :where([data-title]){font-weight:500;line-height:1.5;color:inherit}:where([data-sonner-toast]) :where([data-icon]){display:flex;height:16px;width:16px;position:relative;justify-content:flex-start;align-items:center;flex-shrink:0;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end)}:where([data-sonner-toast][data-promise="true"]) :where([data-icon])>svg{opacity:0;transform:scale(.8);transform-origin:center;animation:sonner-fade-in .3s ease forwards}:where([data-sonner-toast]) :where([data-icon])>*{flex-shrink:0}:where([data-sonner-toast]) :where([data-icon]) svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}:where([data-sonner-toast]) :where([data-content]){display:flex;flex-direction:column;gap:2px}[data-sonner-toast][data-styled=true] [data-button]{border-radius:4px;padding-left:8px;padding-right:8px;height:24px;font-size:12px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);border:none;cursor:pointer;outline:none;display:flex;align-items:center;flex-shrink:0;transition:opacity .4s,box-shadow .2s}:where([data-sonner-toast]) :where([data-button]):focus-visible{box-shadow:0 0 0 2px #0006}:where([data-sonner-toast]) :where([data-button]):first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}:where([data-sonner-toast]) :where([data-cancel]){color:var(--normal-text);background:rgba(0,0,0,.08)}:where([data-sonner-toast][data-theme="dark"]) :where([data-cancel]){background:rgba(255,255,255,.3)}:where([data-sonner-toast]) :where([data-close-button]){position:absolute;
65left:var(--toast-close-button-start);right:var(--toast-close-button-end);top:0;height:20px;width:20px;display:flex;justify-content:center;align-items:center;padding:0;color:var(--gray12);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);border-radius:50%;cursor:pointer;z-index:1;transition:opacity .1s,background .2s,border-color .2s}[data-sonner-toast] [data-close-button]{background:var(--gray1)}:where([data-sonner-toast]) :where([data-close-button]):focus-visible{box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}:where([data-sonner-toast]) :where([data-disabled="true"]){cursor:not-allowed}:where([data-sonner-toast]):hover :where([data-close-button]):hover{background:var(--gray2);border-color:var(--gray5)}:where([data-sonner-toast][data-swiping="true"]):before{content:"";position:absolute;left:-50%;right:-50%;height:100%;z-index:-1}:where([data-sonner-toast][data-y-position="top"][data-swiping="true"]):before{bottom:50%;transform:scaleY(3) translateY(50%)}:where([data-sonner-toast][data-y-position="bottom"][data-swiping="true"]):before{top:50%;transform:scaleY(3) translateY(-50%)}:where([data-sonner-toast][data-swiping="false"][data-removed="true"]):before{content:"";position:absolute;inset:0;transform:scaleY(2)}:where([data-sonner-toast]):after{content:"";position:absolute;left:0;height:calc(var(--gap) + 1px);bottom:100%;width:100%}:where([data-sonner-toast][data-mounted="true"]){--y: translateY(0);opacity:1}:where([data-sonner-toast][data-expanded="false"][data-front="false"]){--scale: var(--toasts-before) * .05 + 1;--y: translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale)));height:var(--front-toast-height)}:where([data-sonner-toast])>*{transition:opacity .4s}:where([data-sonner-toast][data-expanded="false"][data-front="false"][data-styled="true"])>*{opacity:0}
65:where([data-sonner-toast][data-visible="false"]){opacity:0;pointer-events:none}:where([data-sonner-toast][data-mounted="true"][data-expanded="true"]){--y: translateY(calc(var(--lift) * var(--offset)));height:var(--initial-height)}:where([data-sonner-toast][data-removed="true"][data-front="true"][data-swipe-out="false"]){--y: translateY(calc(var(--lift) * -100%));opacity:0}:where([data-sonner-toast][data-removed="true"][data-front="false"][data-swipe-out="false"][data-expanded="true"]){--y: translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));opacity:0}:where([data-sonner-toast][data-removed="true"][data-front="false"][data-swipe-out="false"][data-expanded="false"]){--y: translateY(40%);opacity:0;transition:transform .5s,opacity .2s}:where([data-sonner-toast][data-removed="true"][data-front="false"]):before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y) translateY(var(--swipe-amount-y, 0px)) translate(var(--swipe-amount-x, 0px));transition:none}[data-sonner-toast][data-swiped=true]{user-select:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation-duration:.2s;animation-timing-function:ease-out;animation-fill-mode:forwards}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=left]{animation-name:swipe-out-left}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=right]{animation-name:swipe-out-right}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=up]{animation-name:swipe-out-up}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=down]{animation-name:swipe-out-down}@keyframes swipe-out-left{0%{transform:var(--y) translate(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translate(calc(var(--swipe-amount-x) - 100%));opacity:0}}@keyframes swipe-out-right{0%{transform:var(--y) translate(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translate(calc(var(--swipe-amount-x) + 100%));opacity:0}}@keyframes swipe-out-up{0%{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) - 100%));opacity:0}}@keyframes swipe-out-down{0%{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) + 100%));opacity:0}}@media (max-width: 600px){[data-sonner-toaster]{position:fixed;right:var(--mobile-offset-right);left:var(--mobile-offset-left);width:100%}[data-sonner-toaster][dir=rtl]{left:calc(var(--mobile-offset-left) * -1)}[data-sonner-toaster] [data-sonner-toast]{left:0;right:0;width:calc(100% - var(--mobile-offset-left) * 2)}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset-left)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--mobile-offset-bottom)}[data-sonner-toaster][data-y-position=top]{top:var(--mobile-offset-top)}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset-left);right:var(--mobile-offset-right);transform:none}}[data-sonner-toaster][data-theme=light]{--normal-bg: #fff;--normal-border: var(--gray4);--normal-text: var(--gray12);--success-bg: hsl(143, 85%, 96%);--success-border: hsl(145, 92%, 91%);--success-text: hsl(140, 100%, 27%);--info-bg: hsl(208, 100%, 97%);--info-border: hsl(221, 91%, 91%);--info-text: hsl(210, 92%, 45%);--warning-bg: hsl(49, 100%, 97%);--warning-border: hsl(49, 91%, 91%);--warning-text: hsl(31, 92%, 45%);--error-bg: hsl(359, 100%, 97%);--error-border: hsl(359, 100%, 94%);--error-text: hsl(360, 100%, 45%)}[data-sonner-toaster][data-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg: #000;--normal-border: hsl(0, 0%, 20%);--normal-text: var(--gray1)}[data-sonner-toaster][data-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg: #fff;--normal-border: var(--gray3);--normal-text: var(--gray12)}[data-sonner-toaster][data-theme=dark]{--normal-bg: #000;--normal-bg-hover: hsl(0, 0%, 12%);--normal-border: hsl(0, 0%, 20%);--normal-border-hover: hsl(0, 0%, 25%);--normal-text: var(--gray1);--success-bg: hsl(150, 100%, 6%);--success-border: hsl(147, 100%, 12%);--success-text: hsl(150, 86%, 65%);--info-bg: hsl(215, 100%, 6%);--info-border: hsl(223, 100%, 12%);--info-text: hsl(216, 87%, 65%);--warning-bg: hsl(64, 100%, 6%);--warning-border: hsl(60, 100%, 12%);--warning-text: hsl(46, 87%, 65%);--error-bg: hsl(358, 76%, 10%);--error-border: hsl(357, 89%, 16%);
65--error-text: hsl(358, 100%, 81%)}[data-sonner-toaster][data-theme=dark] [data-sonner-toast] [data-close-button]{background:var(--normal-bg);border-color:var(--normal-border);color:var(--normal-text)}[data-sonner-toaster][data-theme=dark] [data-sonner-toast] [data-close-button]:hover{background:var(--normal-bg-hover);border-color:var(--normal-border-hover)}[data-rich-colors=true][data-sonner-toast][data-type=success],[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info],[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning],[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error],[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size: 16px;height:var(--size);width:var(--size);position:absolute;inset:0;z-index:10}.sonner-loading-wrapper[data-visible=false]{transform-origin:center;animation:sonner-fade-out .2s ease forwards}.sonner-spinner{position:relative;top:50%;left:50%;height:var(--size);width:var(--size)}.sonner-loading-bar{animation:sonner-spin 1.2s linear infinite;background:var(--gray11);border-radius:6px;height:8%;left:-10%;position:absolute;top:-3.9%;width:24%}.sonner-loading-bar:nth-child(1){animation-delay:-1.2s;transform:rotate(.0001deg) translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg) translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg) translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg) translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg) translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg) translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg) translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg) translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg) translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg) translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg) translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg) translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}to{opacity:.15}}@media (prefers-reduced-motion){[data-sonner-toast],[data-sonner-toast]>*,.sonner-loading-bar{transition:none!important;animation:none!important}}.sonner-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transform-origin:center;transition:opacity .2s,transform .2s}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8) translate(-50%,-50%)} 66`);function jo(e){return e.label!==void 0}var tb=3,ib="32px",nb="16px",Bu=4e3,rb=356,ob=14,ab=20,sb=200;function pt(...e){return e.filter(Boolean).join(" ")}function lb(e){let[t,i]=e.split("-"),n=[];return t&&n.push(t),i&&n.push(i),n}var cb=e=>{var t,i,n,r,o,a,s,l,c,u,p;let{invert:g,toast:d,unstyled:y,interacting:h,setHeights:b,visibleToasts:m,heights:f,index:v,toasts:w,expanded:S,removeToast:C,defaultRichColors:A,closeButton:z,style:N,cancelButtonStyle:L,actionButtonStyle:D,className:j="",descriptionClassName:W="",duration:M,position:Z,gap:F,loadingIcon:H,expandByDefault:E,classNames:R,icons:O,closeButtonAriaLabel:$="Close toast",pauseWhenPageIsHidden:B}=e,[q,K]=T.useState(null),[fe,Ie]=T.useState(null),[J,dn]=T.useState(!1),[Yt,ji]=T.useState(!1),[Jt,un]=T.useState(!1),[ei,fo]=T.useState(!1),[ss,mo]=T.useState(!1),[ls,lr]=T.useState(0),[pn,pd]=T.useState(0),cr=T.useRef(d.duration||M||Bu),gd=T.useRef(null),Bi=T.useRef(null),fh=v===0,mh=v+1<=m,Je=d.type,gn=d.dismissible!==!1,hh=d.className||"",vh=d.descriptionClassName||"",ho=T.useMemo(()=>f.findIndex(_=>_.toastId===d.id)||0,[f,d.id]),xh=T.useMemo(()=>{var _;return(_=d.closeButton)!=null?_:z},[d.closeButton,z]),fd=T.useMemo(()=>d.duration||M||Bu,[d.duration,M]),cs=T.useRef(0),fn=T.useRef(0),md=T.useRef(0),mn=T.useRef(null),[yh,bh]=Z.split("-"),hd=T.useMemo(()=>f.reduce((_,te,ae)=>ae>=ho?_:_+te.height,0),[f,ho]),vd=qy(),wh=d.invert||g,ds=Je==="loading";fn.current=T.useMemo(()=>
66ho*F+hd,[ho,hd]),T.useEffect(()=>{cr.current=fd},[fd]),T.useEffect(()=>{dn(!0)},[]),T.useEffect(()=>{let _=Bi.current;if(_){let te=_.getBoundingClientRect().height;return pd(te),b(ae=>[{toastId:d.id,height:te,position:d.position},...ae]),()=>b(ae=>ae.filter(lt=>lt.toastId!==d.id))}},[b,d.id]),T.useLayoutEffect(()=>{if(!J)return;let _=Bi.current,te=_.style.height;_.style.height="auto";let ae=_.getBoundingClientRect().height;_.style.height=te,pd(ae),b(lt=>lt.find(ct=>ct.toastId===d.id)?lt.map(ct=>ct.toastId===d.id?{...ct,height:ae}:ct):[{toastId:d.id,height:ae,position:d.position},...lt])},[J,d.title,d.description,b,d.id]);let ti=T.useCallback(()=>{ji(!0),lr(fn.current),b(_=>_.filter(te=>te.toastId!==d.id)),setTimeout(()=>{C(d)},sb)},[d,C,b,fn]);T.useEffect(()=>{if(d.promise&&Je==="loading"||d.duration===1/0||d.type==="loading")return;let _;return S||h||B&&vd?(()=>{if(md.current<cs.current){let te=new Date().getTime()-cs.current;cr.current=cr.current-te}md.current=new Date().getTime()})():cr.current!==1/0&&(cs.current=ne
66w Date().getTime(),_=setTimeout(()=>{var te;(te=d.onAutoClose)==null||te.call(d,d),ti()},cr.current)),()=>clearTimeout(_)},[S,h,d,Je,B,vd,ti]),T.useEffect(()=>{d.delete&&ti()},[ti,d.delete]);function Sh(){var _,te,ae;return O!=null&&O.loading?T.createElement("div",{className:pt(R==null?void 0:R.loader,(_=d==null?void 0:d.classNames)==null?void 0:_.loader,"sonner-loader"),"data-visible":Je==="loading"},O.loading):H?T.createElement("div",{className:pt(R==null?void 0:R.loader,(te=d==null?void 0:d.classNames)==null?void 0:te.loader,"sonner-loader"),"data-visible":Je==="loading"},H):T.createElement(_y,{className:pt(R==null?void 0:R.loader,(ae=d==null?void 0:d.classNames)==null?void 0:ae.loader),visible:Je==="loading"})}return T.createElement("li",{tabIndex:0,ref:Bi,className:pt(j,hh,R==null?void 0:R.toast,(t=d==null?void 0:d.classNames)==null?void 0:t.toast,R==null?void 0:R.default,R==null?void 0:R[Je],(i=d==null?void 0:d.classNames)==null?void 0:i[Je]),"data-sonner-toast":"","data-rich-colors":(n=d.richColors)!=null?n:A,"data-styled":!(d.jsx||d.unstyled||y),"data-mounted":J,"data-promise":!!d.promise,"data-swiped":ss,"data-removed":Yt,"data-visible":mh,"data-y-position":yh,"data-x-position":bh,"data-index":v,"data-front":fh,"data-swiping":Jt,"data-dismissible":gn,"data-type":Je,"data-invert":wh,"data-swipe-out":ei,"data-swipe-direction":fe,"data-expanded":!!(S||E&&J),style:{"--index":v,"--toasts-before":v,"--z-index":w.length-v,"--offset":`${Yt?ls:fn.current}px`,"--initial-height":E?"auto":`${pn}px`,...N,...d.style},onDragEnd:()=>{un(!1),K(null),mn.current=null},onPointerDown:_=>{ds||!gn||(gd.current=new Date,lr(fn.current),_.target.setPointerCapture(_.pointerId),_.target.tagName!=="BUTTON"&&(un(!0),mn.current={x:_.clientX,y:_.clientY}))},onPointerUp:()=>{var _,te,ae,lt;if(ei||!gn)return;mn.current=null;let ct=Number(((_=Bi.current)==null?void 0:_.style.getPropertyValue("--swipe-amount-x").replace("px",""))||0),ii=Number(((te=Bi.current)==null?void 0:te.style.getPropertyValue("--swipe-amount-y").replace("px",""))||0),Di=new Date().getTime()-((ae=gd.current)==null?void 0:ae.getTime()),dt=q==="x"?ct:ii,ni=Math.abs(dt)/Di;if(Math.abs(dt)>=ab||ni>.11){lr(fn.current),(lt=d.onDismiss)==null||lt.call(d,d),Ie(q==="x"?ct>0?"right":"left":ii>0?"down":"up"),ti(),fo(!0),mo(!1);return}un(!1),K(null)},onPointerMove:_=>{var te,ae,lt,ct;if(!mn.current||!gn||((te=window.getSelection())==null?void 0:te.toString().length)>0)return;let ii=_.clientY-mn.current.y,Di=_.clientX-mn.current.x,dt=(ae=e.swipeDirections)!=null?ae:lb(Z);!q&&(Math.abs(Di)>1||Math.abs(ii)>1)&&K(Math.abs(Di)>Math.abs(ii)?"x":"y");let ni={x:0,y:0};q==="y"?(dt.includes("top")||dt.includes("bottom"))&&(dt.includes("top")&&ii<0||dt.includes("bottom")&&ii>0)&&(ni.y=ii):q==="x"&&(dt.includes("left")||dt.includes("right"))&&(dt.includes("left")&&Di<0||dt.includes("right")&&Di>0)&&(ni.x=Di),(Math.abs(ni.x)>0||Math.abs(ni.y)>0)&&mo(!0),(lt=Bi.current)==null||lt.style.setProperty("--swipe-amount-x",`${ni.x}px`),(ct=Bi.current)==null||ct.style.setProperty("--swipe-amount-y",`${ni.y}px`)}},xh&&!d.jsx?T.createElement("button",{"aria-label":$,"data-disabled":ds,"data-close-button":!0,onClick:ds||!gn?()=>{}:()=>{var _;ti(),(_=d.onDismiss)==null||_.call(d,d)},className:pt(R==null?void 0:R.closeButton,(r=d==null?void 0:d.classNames)==null?void 0:r.closeButton)},(o=O==null?void 0:O.close)!=null?o:Wy):null,d.jsx||x.isValidElement(d.title)?d.jsx?d.jsx:typeof d.title=="function"?d.title():d.title:T.createElement(T.Fragment,null,Je||d.icon||d.promise?T.createElement("div",{"data-icon":"",className:pt(R==null?void 0:R.icon,(a=d==null?void 0:d.classNames)==null?void 0:a.icon)},d.promise||d.type==="loading"&&!d.icon?d.icon||Sh():null,d.type!=="loading"?d.icon||(O==null?void 0:O[Je])||Dy(Je):null):null,T.createElement("div",{"data-content":"",className:pt(R==null?void 0:R.content,(s=d==null?void 0:d.classNames)==null?void 0:s.content)},T.createElement("div",{"data-title":"",className:pt(R==null?void 0:R.title,(l=d==null?void 0:d.classNames)==null?void 0:l.title)},typeof d.title=="function"?d.title():d.title),d.description?T.createElement("div",{"data-description":"",className:pt(W,vh,R==null?void 0:R.description,(c=d==null?void 0:d.classNames)==null?void 0:c.description)},typeof d.description=="function"?d.description():d.description):null),x.isValidElement(d.cancel)?d.cancel:d.cancel&&jo(d.cancel)?T.createElement("button",{"data-button":!0,"data-cancel":!0,style:d.cancelButtonStyle||L,onClick:_=>{var te,ae;jo(d.cancel)&&gn&&((ae=(te=d.cancel).onClick)==null||ae.call(te,_),ti())},className:pt(R==null?void 0:R.cancelButton,(u=d==null?void 0:d.classNames)==null?void 0:u.cancelButton)},d.cancel.label):null,x.isValidElement(d.action)?d.action:d.action&&jo(d.action)?T.createElement("button",{"data-button":!0,"data-action":!0,style:d.actionButtonStyle||D,onClick:_=>{var te,ae;jo(d.action)&&((ae=(te=d.action).onClick)==null||ae.call(te,_),!_.defaultPrevented&&ti())},className:pt(R==null?void 0:R.actionButton,(p=d==null?void 0:d.classNames)==null?void 0:p.actionButton)},d.action.label):null))};function Du(){if(typeof window>"u"||typeof document>"u")return"ltr";let e=document.documentElement.getAttribute("dir");return e==="auto"||!e?window.getComputedStyle(document.documentElement).direction:e}function db(e,t){let i={};return[e,t].forEach((n,r)=>{let o=r===1,a=o?"--mobile-offset":"--offset",s=o?nb:ib;function l(c){["top","right","bottom","left"].forEach(u=>{i[`${a}-${u}`]=typeof c=="number"?`${c}px`:c})}typeof n=="number"||typeof n=="string"?l(n):typeof n=="object"?["top","right","bottom","left"].forEach(c=>{n[c]===void 0?i[`${a}-${c}`]=s:i[`${a}-${c}`]=typeof n[c]=="number"?`${n[c]}px`:n[c]}):l(s)}),i}var ub=x.forwardRef(function(e,t){let{invert:i,position:n="bottom-right",hotkey:r=["altKey","KeyT"],expand:o,closeButton:a,className:s,offset:l,mobileOffset:c,theme:u="light",richColors:p,duration:g,style:d,visibleToasts:y=tb,toastOptions:h,dir:b=Du(),gap:m=ob,loadingIcon:f,icons:v,containerAriaLabel:w="Notifications",pauseWhenPageIsHidden:S}=e,[C,A]=T.useState([]),z=T.useMemo(()=>
vendor: 4,213 bytes, line 66
66Array.from(new Set([n].concat(C.filter(B=>B.position).map(B=>B.position)))),[C,n]),[N,L]=T.useState([]),[D,j]=T.useState(!1),[W,M]=T.useState(!1),[Z,F]=T.useState(u!=="system"?u:typeof window<"u"&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"),H=T.useRef(null),E=r.join("+").replace(/Key/g,"").replace(/Digit/g,""),R=T.useRef(null),O=T.useRef(!1),$=T.useCallback(B=>{A(q=>{var K;return(K=q.find(fe=>fe.id===B.id))!=null&&K.delete||Be.dismiss(B.id),q.filter(({id:fe})=>fe!==B.id)})},[]);return T.useEffect(()=>Be.subscribe(B=>{if(B.dismiss){A(q=>q.map(K=>K.id===B.id?{...K,delete:!0}:K));return}setTimeout(()=>{Mf.flushSync(()=>{A(q=>{let K=q.findIndex(fe=>fe.id===B.id);return K!==-1?[...q.slice(0,K),{...q[K],...B},...q.slice(K+1)]:[B,...q]})})})}),[]),T.useEffect(()=>{if(u!=="system"){F(u);return}if(u==="system"&&(window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?F("dark"):F("light")),typeof window>"u")return;let B=window.matchMedia("(prefers-color-scheme: dark)");try{B.addEventListener("change",({matches:q})=>{F(q?"dark":"light")})}catch{B.addListener(({matches:K})=>{try{F(K?"dark":"light")}catch(fe){console.error(fe)}})}},[u]),T.useEffect(()=>{C.length<=1&&j(!1)},[C]),T.useEffect(()=>{let B=q=>{var K,fe;r.every(Ie=>q[Ie]||q.code===Ie)&&(j(!0),(K=H.current)==null||K.focus()),q.code==="Escape"&&(document.activeElement===H.current||(fe=H.current)!=null&&fe.contains(document.activeElement))&&j(!1)};return document.addEventListener("keydown",B),()=>document.removeEventListener("keydown",B)},[r]),T.useEffect(()=>{if(H.current)return()=>{R.current&&(R.current.focus({preventScroll:!0}),R.current=null,O.current=!1)}},[H.current]),T.createElement("section",{ref:t,"aria-label":`${w} ${E}`,tabIndex:-1,"aria-live":"polite","aria-relevant":"additions text","aria-atomic":"false",suppressHydrationWarning:!0},z.map((B,q)=>{var K;let[fe,Ie]=B.split("-");return C.length?T.createElement("ol",{key:B,dir:b==="auto"?Du():b,tabIndex:-1,ref:H,className:s,"data-sonner-toaster":!0,"data-theme":Z,"data-y-position":fe,"data-lifted":D&&C.length>1&&!o,"data-x-position":Ie,style:{"--front-toast-height":`${((K=N[0])==null?void 0:K.height)||0}px`,"--width":`${rb}px`,"--gap":`${m}px`,...d,...db(l,c)},onBlur:J=>{O.current&&!J.currentTarget.contains(J.relatedTarget)&&(O.current=!1,R.current&&(R.current.focus({preventScroll:!0}),R.current=null))},onFocus:J=>{J.target instanceof HTMLElement&&J.target.dataset.dismissible==="false"||O.current||(O.current=!0,R.current=J.relatedTarget)},onMouseEnter:()=>j(!0),onMouseMove:()=>j(!0),onMouseLeave:()=>{W||j(!1)},onDragEnd:()=>j(!1),onPointerDown:J=>{J.target instanceof HTMLElement&&J.target.dataset.dismissible==="false"||M(!0)},onPointerUp:()=>M(!1)},C.filter(J=>!J.position&&q===0||J.position===B).map((J,dn)=>{var Yt,ji;return T.createElement(cb,{key:J.id,icons:v,index:dn,toast:J,defaultRichColors:p,duration:(Yt=h==null?void 0:h.duration)!=null?Yt:g,className:h==null?void 0:h.className,descriptionClassName:h==null?void 0:h.descriptionClassName,invert:i,visibleToasts:y,closeButton:(ji=h==null?void 0:h.closeButton)!=null?ji:a,interacting:W,position:B,style:h==null?void 0:h.style,unstyled:h==null?void 0:h.unstyled,classNames:h==null?void 0:h.classNames,cancelButtonStyle:h==null?void 0:h.cancelButtonStyle,actionButtonStyle:h==null?void 0:h.actionButtonStyle,removeToast:$,toasts:C.filter(Jt=>Jt.position==J.position),heights:N.filter(Jt=>Jt.position==J.position),setHeights:L,expandByDefault:o,gap:m,loadingIcon:f,expanded:D,pauseWhenPageIsHidden:S,swipeDirections:e.swipeDirections})})):null}))});const pb=({...e})=>{const{theme:t="system"}=By();return I.jsx(ub,{theme:t,className:"toaster group",toastOptions:{classNames:{toast:"group toast group-[.toaster]:bg-background group-[.toaster]:text-foreground group-[.toaster]:border-border group-[.toaster]:shadow-lg",description:"group-[.toast]:text-muted-foreground",actionButton:"group-[.toast]:bg-primary group-[.toast]:text-primary-foreground",cancelButton:"group-[.toast]:bg-muted group-[.toast]:text-muted-foreground"}},...e})},gb=["top","right","bottom","left"],Li=Math.min,We=Math.max,Ia=Math.round,Bo=Math.floor,Mt=e=>({x:e,y:e}
vendor: 10,816 bytes, line 66
66),fb={left:"right",right:"left",bottom:"top",top:"bottom"},mb={start:"end",end:"start"};function Vl(e,t,i){return We(e,Li(t,i))}function Zt(e,t){return typeof e=="function"?e(t):e}function Kt(e){return e.split("-")[0]}function rr(e){return e.split("-")[1]}function Jc(e){return e==="x"?"y":"x"}function ed(e){return e==="y"?"height":"width"}const hb=new Set(["top","bottom"]);function Tt(e){return hb.has(Kt(e))?"y":"x"}function td(e){return Jc(Tt(e))}function vb(e,t,i){i===void 0&&(i=!1);const n=rr(e),r=td(e),o=ed(r);let a=r==="x"?n===(i?"end":"start")?"right":"left":n==="start"?"bottom":"top";return t.reference[o]>t.floating[o]&&(a=ka(a)),[a,ka(a)]}function xb(e){const t=ka(e);return[Wl(e),t,Wl(t)]}function Wl(e){return e.replace(/start|end/g,t=>mb[t])}const Fu=["left","right"],_u=["right","left"],yb=["top","bottom"],bb=["bottom","top"];function wb(e,t,i){switch(e){case"top":case"bottom":return i?t?_u:Fu:t?Fu:_u;case"left":case"right":return t?yb:bb;default:return[]}}function Sb(e,t,i,n){const r=rr(e);let o=wb(Kt(e),i==="start",n);return r&&(o=o.map(a=>a+"-"+r),t&&(o=o.concat(o.map(Wl)))),o}function ka(e){return e.replace(/left|right|bottom|top/g,t=>fb[t])}function Cb(e){return{top:0,right:0,bottom:0,left:0,...e}}function wm(e){return typeof e!="number"?Cb(e):{top:e,right:e,bottom:e,left:e}}function Ea(e){const{x:t,y:i,width:n,height:r}=e;return{width:n,height:r,top:i,left:t,right:t+n,bottom:i+r,x:t,y:i}}function Gu(e,t,i){let{reference:n,floating:r}=e;const o=Tt(t),a=td(t),s=ed(a),l=Kt(t),c=o==="y",u=n.x+n.width/2-r.width/2,p=n.y+n.height/2-r.height/2,g=n[s]/2-r[s]/2;let d;switch(l){case"top":d={x:u,y:n.y-r.height};break;case"bottom":d={x:u,y:n.y+n.height};break;case"right":d={x:n.x+n.width,y:p};break;case"left":d={x:n.x-r.width,y:p};break;default:d={x:n.x,y:n.y}}switch(rr(t)){case"start":d[a]-=g*(i&&c?-1:1);break;case"end":d[a]+=g*(i&&c?-1:1);break}return d}const Ab=async(e,t,i)=>{const{placement:n="bottom",strategy:r="absolute",middleware:o=[],platform:a}=i,s=o.filter(Boolean),l=await(a.isRTL==null?void 0:a.isRTL(t));let c=await a.getElementRects({reference:e,floating:t,strategy:r}),{x:u,y:p}=Gu(c,n,l),g=n,d={},y=0;for(let h=0;h<s.length;h++){const{name:b,fn:m}=s[h],{x:f,y:v,data:w,reset:S}=await m({x:u,y:p,initialPlacement:n,placement:g,strategy:r,middlewareData:d,rects:c,platform:a,elements:{reference:e,floating:t}});u=f??u,p=v??p,d={...d,[b]:{...d[b],...w}},S&&y<=50&&(y++,typeof S=="object"&&(S.placement&&(g=S.placement),S.rects&&(c=S.rects===!0?await a.getElementRects({reference:e,floating:t,strategy:r}):S.rects),{x:u,y:p}=Gu(c,g,l)),h=-1)}return{x:u,y:p,placement:g,strategy:r,middlewareData:d}};async function Xr(e,t){var i;t===void 0&&(t={});const{x:n,y:r,platform:o,rects:a,elements:s,strategy:l}=e,{boundary:c="clippingAncestors",rootBoundary:u="viewport",elementContext:p="floating",altBoundary:g=!1,padding:d=0}=Zt(t,e),y=wm(d),b=s[g?p==="floating"?"reference":"floating":p],m=Ea(await o.getClippingRect({element:(i=await(o.isElement==null?void 0:o.isElement(b)))==null||i?b:b.contextElement||await(o.getDocumentElement==null?void 0:o.getDocumentElement(s.floating)),boundary:c,rootBoundary:u,strategy:l})),f=p==="floating"?{x:n,y:r,width:a.floating.width,height:a.floating.height}:a.reference,v=await(o.getOffsetParent==null?void 0:o.getOffsetParent(s.floating)),w=await(o.isElement==null?void 0:o.isElement(v))?await(o.getScale==null?void 0:o.getScale(v))||{x:1,y:1}:{x:1,y:1},S=Ea(o.convertOffsetParentRelativeRectToViewportRelativeRect?await o.convertOffsetParentRelativeRectToViewportRelativeRect({elements:s,rect:f,offsetParent:v,strategy:l}):f);return{top:(m.top-S.top+y.top)/w.y,bottom:(S.bottom-m.bottom+y.bottom)/w.y,left:(m.left-S.left+y.left)/w.x,right:(S.right-m.right+y.right)/w.x}}const Ib=e=>({name:"arrow",options:e,async fn(t){const{x:i,y:n,placement:r,rects:o,platform:a,elements:s,middlewareData:l}=t,{element:c,padding:u=0}=Zt(e,t)||{};if(c==null)return{};const p=wm(u),g={x:i,y:n},d=td(r),y=ed(d),h=await a.getDimensions(c),b=d==="y",m=b?"top":"left",f=b?"bottom":"right",v=b?"clientHeight":"clientWidth",w=o.reference[y]+o.reference[d]-g[d]-o.floating[y],S=g[d]-o.reference[d],C=await(a.getOffsetParent==null?void 0:a.getOffsetParent(c));let A=C?C[v]:0;(!A||!await(a.isElement==null?void 0:a.isElement(C)))&&(A=s.floating[v]||o.floating[y]);const z=w/2-S/2,N=A/2-h[y]/2-1,L=Li(p[m],N),D=Li(p[f],N),j=L,W=A-h[y]-D,M=A/2-h[y]/2+z,Z=Vl(j,M,W),F=!l.arrow&&rr(r)!=null&&M!==Z&&o.reference[y]/2-(M<j?L:D)-h[y]/2<0,H=F?M<j?M-j:M-W:0;return{[d]:g[d]+H,data:{[d]:Z,centerOffset:M-Z-H,...F&&{alignmentOffset:H}},reset:F}}}),kb=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var i,n;const{placement:r,middlewareData:o,rects:a,initialPlacement:s,platform:l,elements:c}=t,{mainAxis:u=!0,crossAxis:p=!0,fallbackPlacements:g,fallbackStrategy:d="bestFit",fallbackAxisSideDirection:y="none",flipAlignment:h=!0,...b}=Zt(e,t);if((i=o.arrow)!=null&&i.alignmentOffset)return{};const m=Kt(r),f=Tt(s),v=Kt(s)===s,w=await(l.isRTL==null?void 0:l.isRTL(c.floating)),S=g||(v||!h?[ka(s)]:xb(s)),C=y!=="none";!g&&C&&S.push(...Sb(s,h,y,w));const A=[s,...S],z=await Xr(t,b),N=[];let L=((n=o.flip)==null?void 0:n.overflows)||[];if(u&&N.push(z[m]),p){const M=vb(r,a,w);N.push(z[M[0]],z[M[1]])}if(L=[...L,{placement:r,overflows:N}],!N.every(M=>M<=0)){var D,j;const M=(((D=o.flip)==null?void 0:D.index)||0)+1,Z=A[M];if(Z&&(!(p==="alignment"?f!==Tt(Z):!1)||L.every(E=>E.overflows[0]>0&&Tt(E.placement)===f)))return{data:{index:M,overflows:L},reset:{placement:Z}};let F=(j=L.filter(H=>H.overflows[0]<=0).sort((H,E)=>H.overflows[1]-E.overflows[1])[0])==null?void 0:j.placement;if(!F)switch(d){case"bestFit":{var W;const H=(W=L.filter(E=>{if(C){const R=Tt(E.placement);return R===f||R==="y"}return!0}).map(E=>[E.placement,E.overflows.filter(R=>R>0).reduce((R,O)=>R+O,0)]).sort((E,R)=>E[1]-R[1])[0])==null?void 0:W[0];H&&(F=H);break}case"initialPlacement":F=s;break}if(r!==F)return{reset:{placement:F}}}return{}}}};function Hu(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function $u(e){return gb.some(t=>e[t]>=0)}const Eb=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(t){const{rects:i}=t,{strategy:n="referenceHidden",...r}=Zt(e,t);switch(n){case"referenceHidden":{const o=await Xr(t,{...r,elementContext:"reference"}),a=Hu(o,i.reference);return{data:{referenceHiddenOffsets:a,referenceHidden:$u(a)}}}case"escaped":{const o=await Xr(t,{...r,altBoundary:!0}),a=Hu(o,i.floating);return{data:{escapedOffsets:a,escaped:$u(a)}}}default:return{}}}}},Sm=new Set(["left","top"]);async function Rb(e,t){const{placement:i,platform:n,elements:r}=e,o=await(n.isRTL==null?void 0:n.isRTL(r.floating)),a=Kt(i),s=rr(i),l=Tt(i)==="y",c=Sm.has(a)?-1:1,u=o&&l?-1:1,p=Zt(t,e);let{mainAxis:g,crossAxis:d,alignmentAxis:y}=typeof p=="number"?{mainAxis:p,crossAxis:0,alignmentAxis:null}:{mainAxis:p.mainAxis||0,crossAxis:p.crossAxis||0,alignmentAxis:p.alignmentAxis};return s&&typeof y=="number"&&(d=s==="end"?y*-1:y),l?{x:d*u,y:g*c}:{x:g*c,y:d*u}}const zb=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var i,n;const{x:r,y:o,placement:a,middlewareData:s}=t,l=await Rb(t,e);return a===((i=s.offset)==null?void 0:i.placement)&&(n=s.arrow)!=null&&n.alignmentOffset?{}:{x:r+l.x,y:o+l.y,data:{...l,placement:a}}}}},Pb=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:i,y:n,placement:r}=t,{mainAxis:o=!0,crossAxis:a=!1,limiter:s={fn:b=>{let{x:m,y:f}=b;return{x:m,y:f}}},...l}=Zt(e,t),c={x:i,y:n},u=await Xr(t,l),p=Tt(Kt(r)),g=Jc(p);let d=c[g],y=c[p];if(o){const b=g==="y"?"top":"left",m=g==="y"?"bottom":"right",f=d+u[b],v=d-u[m];d=Vl(f,d,v)}if(a){const b=p==="y"?"top":"left",m=p==="y"?"bottom":"right",f=y+u[b],v=y-u[m];y=Vl(f,y,v)}const h=s.fn({...t,[g]:d,[p]:y});return{...h,data:{x:h.x-i,y:h.y-n,enabled:{[g]:o,[p]:a}}}}}},Tb=function(e){return e===void 0&&(e={}),{options:e,fn(t){const{x:i,y:n,placement:r,rects:o,middlewareData:a}=t,{offset:s=0,mainAxis:l=!0,crossAxis:c=!0}=Zt(e,t),u={x:i,y:n},p=Tt(r),g=Jc(p);let d=u[g],y=u[p];const h=Zt(s,t),b=typeof h=="number"?{mainAxis:h,crossAxis:0}:{mainAxis:0,crossAxis:0,...h};if(l){const v=g==="y"?"height":"width",w=o.reference[g]-o.floating[v]+b.mainAxis,S=o.reference[g]+o.reference[v]-b.mainAxis;d<w?d=w:d>S&&(d=S)}if(c){var m,f;const v=g==="y"?"width":"height",w=Sm.has(Kt(r)),S=o.reference[p]-o.floating[v]+(w&&((m=a.offset)==null?void 0:m[p])||0)+(w?0:b.crossAxis),C=o.reference[p]+o.reference[v]+(w?0:((f=a.offset)==null?void 0:f[p])||0)-(w?b.crossAxis:0);y<S?y=S:y>C&&(y=C)}return{[g]:d,[p]:y}}}},Lb=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){var i,n;const{placement:r,rects:o,platform:a,elements:s}=t,{apply:l=()=>{},...c}=Zt(e,t),u=await Xr(t,c),p=Kt(r),g=rr(r),d=Tt(r)==="y",{width:y,height:h}=o.floating;let b,m;p==="top"||p==="bottom"?(b=p,m=g===(await(a.isRTL==null?void 0:a.isRTL(s.floating))?"start":"end")?"left":"right"):(m=p,b=g==="end"?"top":"bottom");const f=h-u.top-u.bottom,v=y-u.left-u.right,w=Li(h-u[b],f),S=Li(y-u[m],v),C=!t.middlewareData.shift;let A=w,z=S;if((i=t.middlewareData.shift)!=null&&i.enabled.x&&(z=v),(n=t.middlewareData.shift)!=null&&n.enabled.y&&(A=f),C&&!g){const L=We(u.left,0),D=We(u.right,0),j=We(u.top,0),W=We(u.bottom,0);d?z=y-2*(L!==0||D!==0?L+D:We(u.left,u.right)):A=h-2*(j!==0||W!==0?j+W:We(u.top,u.bottom))}await l({...t,availableWidth:z,availableHeight:A});const N=await a.getDimensions(s.floating);return y!==N.width||h!==N.height?{reset:{rects:!0}}:{}}}};function Ka(){return typeof window<"u"}function or(e){return Cm(e)?(e.nodeName||"").toLowerCase():"#document"}function Ze(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function Ut(e){var t;return(t=(Cm(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function Cm(e){return Ka()?e instanceof Node||e instanceof Ze(e).Node:!1}function Ct(e){return Ka()?e instanceof Element||e instanceof Ze(e).Element:!1}function Ot(e){return Ka()?e instanceof HTMLElement||e instanceof Ze(e).HTMLElement:!1}function Vu(e){return!Ka()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof Ze(e).ShadowRoot}const Nb=new Set(["inline","contents"]);function go(e){const{overflow:t,overflowX:i,overflowY:n,display:r}=At(e);return/auto|scroll|overlay|hidden|clip/.test(t+n+i)&&!Nb.has(r)}const Mb=new Set(["table","td","th"]);function Ob(e){return Mb.has(or(e))}const Ub=[":popover-open",":modal"];function Xa(e){return Ub.some(t=>{try{return e.matches(t)}catch{return!1}})}const jb=["transform","translate","scale","rotate","perspective"],Bb=["transform","translate","scale","rotate","perspective","filter"],Db=["paint","layout","strict","content"];function id(e){const t=nd(),i=Ct(e)?At(e):e;
vendor: 7,748 bytes, line 66
66return jb.some(n=>i[n]?i[n]!=="none":!1)||(i.containerType?i.containerType!=="normal":!1)||!t&&(i.backdropFilter?i.backdropFilter!=="none":!1)||!t&&(i.filter?i.filter!=="none":!1)||Bb.some(n=>(i.willChange||"").includes(n))||Db.some(n=>(i.contain||"").includes(n))}function Fb(e){let t=Ni(e);for(;Ot(t)&&!Yn(t);){if(id(t))return t;if(Xa(t))return null;t=Ni(t)}return null}function nd(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}const _b=new Set(["html","body","#document"]);function Yn(e){return _b.has(or(e))}function At(e){return Ze(e).getComputedStyle(e)}function Ya(e){return Ct(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Ni(e){if(or(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Vu(e)&&e.host||Ut(e);return Vu(t)?t.host:t}function Am(e){const t=Ni(e);return Yn(t)?e.ownerDocument?e.ownerDocument.body:e.body:Ot(t)&&go(t)?t:Am(t)}function Yr(e,t,i){var n;t===void 0&&(t=[]),i===void 0&&(i=!0);const r=Am(e),o=r===((n=e.ownerDocument)==null?void 0:n.body),a=Ze(r);if(o){const s=ql(a);return t.concat(a,a.visualViewport||[],go(r)?r:[],s&&i?Yr(s):[])}return t.concat(r,Yr(r,[],i))}function ql(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function Im(e){const t=At(e);let i=parseFloat(t.width)||0,n=parseFloat(t.height)||0;const r=Ot(e),o=r?e.offsetWidth:i,a=r?e.offsetHeight:n,s=Ia(i)!==o||Ia(n)!==a;return s&&(i=o,n=a),{width:i,height:n,$:s}}function rd(e){return Ct(e)?e:e.contextElement}function Un(e){const t=rd(e);if(!Ot(t))return Mt(1);const i=t.getBoundingClientRect(),{width:n,height:r,$:o}=Im(t);let a=(o?Ia(i.width):i.width)/n,s=(o?Ia(i.height):i.height)/r;return(!a||!Number.isFinite(a))&&(a=1),(!s||!Number.isFinite(s))&&(s=1),{x:a,y:s}}const Gb=Mt(0);function km(e){const t=Ze(e);return!nd()||!t.visualViewport?Gb:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function Hb(e,t,i){return t===void 0&&(t=!1),!i||t&&i!==Ze(e)?!1:t}function an(e,t,i,n){t===void 0&&(t=!1),i===void 0&&(i=!1);const r=e.getBoundingClientRect(),o=rd(e);let a=Mt(1);t&&(n?Ct(n)&&(a=Un(n)):a=Un(e));const s=Hb(o,i,n)?km(o):Mt(0);let l=(r.left+s.x)/a.x,c=(r.top+s.y)/a.y,u=r.width/a.x,p=r.height/a.y;if(o){const g=Ze(o),d=n&&Ct(n)?Ze(n):n;let y=g,h=ql(y);for(;h&&n&&d!==y;){const b=Un(h),m=h.getBoundingClientRect(),f=At(h),v=m.left+(h.clientLeft+parseFloat(f.paddingLeft))*b.x,w=m.top+(h.clientTop+parseFloat(f.paddingTop))*b.y;l*=b.x,c*=b.y,u*=b.x,p*=b.y,l+=v,c+=w,y=Ze(h),h=ql(y)}}return Ea({width:u,height:p,x:l,y:c})}function od(e,t){const i=Ya(e).scrollLeft;return t?t.left+i:an(Ut(e)).left+i}function Em(e,t,i){i===void 0&&(i=!1);const n=e.getBoundingClientRect(),r=n.left+t.scrollLeft-(i?0:od(e,n)),o=n.top+t.scrollTop;return{x:r,y:o}}function $b(e){let{elements:t,rect:i,offsetParent:n,strategy:r}=e;const o=r==="fixed",a=Ut(n),s=t?Xa(t.floating):!1;if(n===a||s&&o)return i;let l={scrollLeft:0,scrollTop:0},c=Mt(1);const u=Mt(0),p=Ot(n);if((p||!p&&!o)&&((or(n)!=="body"||go(a))&&(l=Ya(n)),Ot(n))){const d=an(n);c=Un(n),u.x=d.x+n.clientLeft,u.y=d.y+n.clientTop}const g=a&&!p&&!o?Em(a,l,!0):Mt(0);return{width:i.width*c.x,height:i.height*c.y,x:i.x*c.x-l.scrollLeft*c.x+u.x+g.x,y:i.y*c.y-l.scrollTop*c.y+u.y+g.y}}function Vb(e){return Array.from(e.getClientRects())}function Wb(e){const t=Ut(e),i=Ya(e),n=e.ownerDocument.body,r=We(t.scrollWidth,t.clientWidth,n.scrollWidth,n.clientWidth),o=We(t.scrollHeight,t.clientHeight,n.scrollHeight,n.clientHeight);let a=-i.scrollLeft+od(e);const s=-i.scrollTop;return At(n).direction==="rtl"&&(a+=We(t.clientWidth,n.clientWidth)-r),{width:r,height:o,x:a,y:s}}function qb(e,t){const i=Ze(e),n=Ut(e),r=i.visualViewport;let o=n.clientWidth,a=n.clientHeight,s=0,l=0;if(r){o=r.width,a=r.height;const c=nd();(!c||c&&t==="fixed")&&(s=r.offsetLeft,l=r.offsetTop)}return{width:o,height:a,x:s,y:l}}const Qb=new Set(["absolute","fixed"]);function Zb(e,t){const i=an(e,!0,t==="fixed"),n=i.top+e.clientTop,r=i.left+e.clientLeft,o=Ot(e)?Un(e):Mt(1),a=e.clientWidth*o.x,s=e.clientHeight*o.y,l=r*o.x,c=n*o.y;return{width:a,height:s,x:l,y:c}}function Wu(e,t,i){let n;if(t==="viewport")n=qb(e,i);else if(t==="document")n=Wb(Ut(e));else if(Ct(t))n=Zb(t,i);else{const r=km(e);n={x:t.x-r.x,y:t.y-r.y,width:t.width,height:t.height}}return Ea(n)}function Rm(e,t){const i=Ni(e);return i===t||!Ct(i)||Yn(i)?!1:At(i).position==="fixed"||Rm(i,t)}function Kb(e,t){const i=t.get(e);if(i)return i;let n=Yr(e,[],!1).filter(s=>Ct(s)&&or(s)!=="body"),r=null;const o=At(e).position==="fixed";let a=o?Ni(e):e;for(;Ct(a)&&!Yn(a);){const s=At(a),l=id(a);!l&&s.position==="fixed"&&(r=null),(o?!l&&!r:!l&&s.position==="static"&&!!r&&Qb.has(r.position)||go(a)&&!l&&Rm(e,a))?n=n.filter(u=>u!==a):r=s,a=Ni(a)}return t.set(e,n),n}function Xb(e){let{element:t,boundary:i,rootBoundary:n,strategy:r}=e;const a=[...i==="clippingAncestors"?Xa(t)?[]:Kb(t,this._c):[].concat(i),n],s=a[0],l=a.reduce((c,u)=>{const p=Wu(t,u,r);return c.top=We(p.top,c.top),c.right=Li(p.right,c.right),c.bottom=Li(p.bottom,c.bottom),c.left=We(p.left,c.left),c},Wu(t,s,r));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function Yb(e){const{width:t,height:i}=Im(e);return{width:t,height:i}}function Jb(e,t,i){const n=Ot(t),r=Ut(t),o=i==="fixed",a=an(e,!0,o,t);let s={scrollLeft:0,scrollTop:0};const l=Mt(0);function c(){l.x=od(r)}if(n||!n&&!o)if((or(t)!=="body"||go(r))&&(s=Ya(t)),n){const d=an(t,!0,o,t);l.x=d.x+t.clientLeft,l.y=d.y+t.clientTop}else r&&c();o&&!n&&r&&c();const u=r&&!n&&!o?Em(r,s):Mt(0),p=a.left+s.scrollLeft-l.x-u.x,g=a.top+s.scrollTop-l.y-u.y;return{x:p,y:g,width:a.width,height:a.height}}function Gs(e){return At(e).position==="static"}function qu(e,t){if(!Ot(e)||At(e).position==="fixed")return null;if(t)return t(e);let i=e.offsetParent;return Ut(e)===i&&(i=i.ownerDocument.body),i}function zm(e,t){const i=Ze(e);if(Xa(e))return i;if(!Ot(e)){let r=Ni(e);for(;r&&!Yn(r);){if(Ct(r)&&!Gs(r))return r;r=Ni(r)}return i}let n=qu(e,t);for(;n&&Ob(n)&&Gs(n);)n=qu(n,t);return n&&Yn(n)&&Gs(n)&&!id(n)?i:n||Fb(e)||i}const ew=async function(e){const t=this.getOffsetParent||zm,i=this.getDimensions,n=await i(e.floating);return{reference:Jb(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:n.width,height:n.height}}};function tw(e){return At(e).direction==="rtl"}const iw={convertOffsetParentRelativeRectToViewportRelativeRect:$b,getDocumentElement:Ut,getClippingRect:Xb,getOffsetParent:zm,getElementRects:ew,getClientRects:Vb,getDimensions:Yb,getScale:Un,isElement:Ct,isRTL:tw};function Pm(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function nw(e,t){let i=null,n;const r=Ut(e);function o(){var s;clearTimeout(n),(s=i)==null||s.disconnect(),i=null}function a(s,l){s===void 0&&(s=!1),l===void 0&&(l=1),o();const c=e.getBoundingClientRect(),{left:u,top:p,width:g,height:d}=c;if(s||t(),!g||!d)return;const y=Bo(p),h=Bo(r.clientWidth-(u+g)),b=Bo(r.clientHeight-(p+d)),m=Bo(u),v={rootMargin:-y+"px "+-h+"px "+-b+"px "+-m+"px",threshold:We(0,Li(1,l))||1};let w=!0;function S(C){const A=C[0].intersectionRatio;if(A!==l){if(!w)return a();A?a(!1,A):n=setTimeout(()=>{a(!1,1e-7)},1e3)}A===1&&!Pm(c,e.getBoundingClientRect())&&a(),w=!1}try{i=new IntersectionObserver(S,{...v,root:r.ownerDocument})}catch{i=new IntersectionObserver(S,v)}i.observe(e)}return a(!0),o}function rw(e,t,i,n){n===void 0&&(n={});const{ancestorScroll:r=!0,ancestorResize:o=!0,elementResize:a=typeof ResizeObserver=="function",layoutShift:s=typeof IntersectionObserver=="function",animationFrame:l=!1}=n,c=rd(e),u=r||o?[...c?Yr(c):[],...Yr(t)]:[];u.forEach(m=>{r&&m.addEventListener("scroll",i,{passive:!0}),o&&m.addEventListener("resize",i)});const p=c&&s?nw(c,i):null;let g=-1,d=null;
vendor: 8,592 bytes, line 66
66a&&(d=new ResizeObserver(m=>{let[f]=m;f&&f.target===c&&d&&(d.unobserve(t),cancelAnimationFrame(g),g=requestAnimationFrame(()=>{var v;(v=d)==null||v.observe(t)})),i()}),c&&!l&&d.observe(c),d.observe(t));let y,h=l?an(e):null;l&&b();function b(){const m=an(e);h&&!Pm(h,m)&&i(),h=m,y=requestAnimationFrame(b)}return i(),()=>{var m;u.forEach(f=>{r&&f.removeEventListener("scroll",i),o&&f.removeEventListener("resize",i)}),p==null||p(),(m=d)==null||m.disconnect(),d=null,l&&cancelAnimationFrame(y)}}const ow=zb,aw=Pb,sw=kb,lw=Lb,cw=Eb,Qu=Ib,dw=Tb,uw=(e,t,i)=>{const n=new Map,r={platform:iw,...i},o={...r.platform,_c:n};return Ab(e,t,{...r,platform:o})};var pw=typeof document<"u",gw=function(){},ea=pw?x.useLayoutEffect:gw;function Ra(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e=="function"&&e.toString()===t.toString())return!0;let i,n,r;if(e&&t&&typeof e=="object"){if(Array.isArray(e)){if(i=e.length,i!==t.length)return!1;for(n=i;n--!==0;)if(!Ra(e[n],t[n]))return!1;return!0}if(r=Object.keys(e),i=r.length,i!==Object.keys(t).length)return!1;for(n=i;n--!==0;)if(!{}.hasOwnProperty.call(t,r[n]))return!1;for(n=i;n--!==0;){const o=r[n];if(!(o==="_owner"&&e.$$typeof)&&!Ra(e[o],t[o]))return!1}return!0}return e!==e&&t!==t}function Tm(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function Zu(e,t){const i=Tm(e);return Math.round(t*i)/i}function Hs(e){const t=x.useRef(e);return ea(()=>{t.current=e}),t}function fw(e){e===void 0&&(e={});const{placement:t="bottom",strategy:i="absolute",middleware:n=[],platform:r,elements:{reference:o,floating:a}={},transform:s=!0,whileElementsMounted:l,open:c}=e,[u,p]=x.useState({x:0,y:0,strategy:i,placement:t,middlewareData:{},isPositioned:!1}),[g,d]=x.useState(n);Ra(g,n)||d(n);const[y,h]=x.useState(null),[b,m]=x.useState(null),f=x.useCallback(E=>{E!==C.current&&(C.current=E,h(E))},[]),v=x.useCallback(E=>{E!==A.current&&(A.current=E,m(E))},[]),w=o||y,S=a||b,C=x.useRef(null),A=x.useRef(null),z=x.useRef(u),N=l!=null,L=Hs(l),D=Hs(r),j=Hs(c),W=x.useCallback(()=>{if(!C.current||!A.current)return;const E={placement:t,strategy:i,middleware:g};D.current&&(E.platform=D.current),uw(C.current,A.current,E).then(R=>{const O={...R,isPositioned:j.current!==!1};M.current&&!Ra(z.current,O)&&(z.current=O,uo.flushSync(()=>{p(O)}))})},[g,t,i,D,j]);ea(()=>{c===!1&&z.current.isPositioned&&(z.current.isPositioned=!1,p(E=>({...E,isPositioned:!1})))},[c]);const M=x.useRef(!1);ea(()=>(M.current=!0,()=>{M.current=!1}),[]),ea(()=>{if(w&&(C.current=w),S&&(A.current=S),w&&S){if(L.current)return L.current(w,S,W);W()}},[w,S,W,L,N]);const Z=x.useMemo(()=>({reference:C,floating:A,setReference:f,setFloating:v}),[f,v]),F=x.useMemo(()=>({reference:w,floating:S}),[w,S]),H=x.useMemo(()=>{const E={position:i,left:0,top:0};if(!F.floating)return E;const R=Zu(F.floating,u.x),O=Zu(F.floating,u.y);return s?{...E,transform:"translate("+R+"px, "+O+"px)",...Tm(F.floating)>=1.5&&{willChange:"transform"}}:{position:i,left:R,top:O}},[i,s,F.floating,u.x,u.y]);return x.useMemo(()=>({...u,update:W,refs:Z,elements:F,floatingStyles:H}),[u,W,Z,F,H])}const mw=e=>{function t(i){return{}.hasOwnProperty.call(i,"current")}return{name:"arrow",options:e,fn(i){const{element:n,padding:r}=typeof e=="function"?e(i):e;return n&&t(n)?n.current!=null?Qu({element:n.current,padding:r}).fn(i):{}:n?Qu({element:n,padding:r}).fn(i):{}}}},hw=(e,t)=>({...ow(e),options:[e,t]}),vw=(e,t)=>({...aw(e),options:[e,t]}),xw=(e,t)=>({...dw(e),options:[e,t]}),yw=(e,t)=>({...sw(e),options:[e,t]}),bw=(e,t)=>({...lw(e),options:[e,t]}),ww=(e,t)=>({...cw(e),options:[e,t]}),Sw=(e,t)=>({...mw(e),options:[e,t]});var Cw="Arrow",Lm=x.forwardRef((e,t)=>{const{children:i,width:n=10,height:r=5,...o}=e;return I.jsx($e.svg,{...o,ref:t,width:n,height:r,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:e.asChild?i:I.jsx("polygon",{points:"0,0 30,0 15,10"})})});Lm.displayName=Cw;var Aw=Lm;function Iw(e){const[t,i]=x.useState(void 0);return Ti(()=>{if(e){i({width:e.offsetWidth,height:e.offsetHeight});const n=new ResizeObserver(r=>{if(!Array.isArray(r)||!r.length)return;const o=r[0];let a,s;if("borderBoxSize"in o){const l=o.borderBoxSize,c=Array.isArray(l)?l[0]:l;a=c.inlineSize,s=c.blockSize}else a=e.offsetWidth,s=e.offsetHeight;i({width:a,height:s})});return n.observe(e,{box:"border-box"}),()=>n.unobserve(e)}else i(void 0)},[e]),t}var Nm="Popper",[Mm,Om]=qa(Nm),[L2,Um]=Mm(Nm),jm="PopperAnchor",Bm=x.forwardRef((e,t)=>{const{__scopePopper:i,virtualRef:n,...r}=e,o=Um(jm,i),a=x.useRef(null),s=St(t,a);return x.useEffect(()=>{o.onAnchorChange((n==null?void 0:n.current)||a.current)}),n?null:I.jsx($e.div,{...r,ref:s})});Bm.displayName=jm;var ad="PopperContent",[kw,Ew]=Mm(ad),Dm=x.forwardRef((e,t)=>{var J,dn,Yt,ji,Jt,un;const{__scopePopper:i,side:n="bottom",sideOffset:r=0,align:o="center",alignOffset:a=0,arrowPadding:s=0,avoidCollisions:l=!0,collisionBoundary:c=[],collisionPadding:u=0,sticky:p="partial",hideWhenDetached:g=!1,updatePositionStrategy:d="optimized",onPlaced:y,...h}=e,b=Um(ad,i),[m,f]=x.useState(null),v=St(t,ei=>f(ei)),[w,S]=x.useState(null),C=Iw(w),A=(C==null?void 0:C.width)??0,z=(C==null?void 0:C.height)??0,N=n+(o!=="center"?"-"+o:""),L=typeof u=="number"?u:{top:0,right:0,bottom:0,left:0,...u},D=Array.isArray(c)?c:[c],j=D.length>0,W={padding:L,boundary:D.filter(zw),altBoundary:j},{refs:M,floatingStyles:Z,placement:F,isPositioned:H,middlewareData:E}=fw({strategy:"fixed",placement:N,whileElementsMounted:(...ei)=>rw(...ei,{animationFrame:d==="always"}),elements:{reference:b.anchor},middleware:[hw({mainAxis:r+z,alignmentAxis:a}),l&&vw({mainAxis:!0,crossAxis:!1,limiter:p==="partial"?xw():void 0,...W}),l&&yw({...W}),bw({...W,apply:({elements:ei,rects:fo,availableWidth:ss,availableHeight:mo})=>{const{width:ls,height:lr}=fo.reference,pn=ei.floating.style;pn.setProperty("--radix-popper-available-width",`${ss}px`),pn.setProperty("--radix-popper-available-height",`${mo}px`),pn.setProperty("--radix-popper-anchor-width",`${ls}px`),pn.setProperty("--radix-popper-anchor-height",`${lr}px`)}}),w&&Sw({element:w,padding:s}),Pw({arrowWidth:A,arrowHeight:z}),g&&ww({strategy:"referenceHidden",...W})]}),[R,O]=Gm(F),$=Pi(y);Ti(()=>{H&&($==null||$())},[H,$]);const B=(J=E.arrow)==null?void 0:J.x,q=(dn=E.arrow)==null?void 0:dn.y,K=((Yt=E.arrow)==null?void 0:Yt.centerOffset)!==0,[fe,Ie]=x.useState();return Ti(()=>{m&&Ie(window.getComputedStyle(m).zIndex)},[m]),I.jsx("div",{ref:M.setFloating,"data-radix-popper-content-wrapper":"",style:{...Z,transform:H?Z.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:fe,"--radix-popper-transform-origin":[(ji=E.transformOrigin)==null?void 0:ji.x,(Jt=E.transformOrigin)==null?void 0:Jt.y].join(" "),...((un=E.hide)==null?void 0:un.referenceHidden)&&{visibility:"hidden",pointerEvents:"none"}},dir:e.dir,children:I.jsx(kw,{scope:i,placedSide:R,onArrowChange:S,arrowX:B,arrowY:q,shouldHideArrow:K,children:I.jsx($e.div,{"data-side":R,"data-align":O,...h,ref:v,style:{...h.style,animation:H?void 0:"none"}})})})});Dm.displayName=ad;var Fm="PopperArrow",Rw={top:"bottom",right:"left",bottom:"top",left:"right"},_m=x.forwardRef(function(t,i){const{__scopePopper:n,...r}=t,o=Ew(Fm,n),a=Rw[o.placedSide];return I.jsx("span",{ref:o.onArrowChange,style:{position:"absolute",left:o.arrowX,top:o.arrowY,[a]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[o.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[o.placedSide],visibility:o.shouldHideArrow?"hidden":void 0},children:I.jsx(Aw,{...r,ref:i,style:{...r.style,display:"block"}})})});_m.displayName=Fm;function zw(e){return e!==null}var Pw=e=>({name:"transformOrigin",options:e,fn(t){var b,m,f;const{placement:i,rects:n,middlewareData:r}=t,a=((b=r.arrow)==null?void 0:b.centerOffset)!==0,s=a?0:e.arrowWidth,l=a?0:e.arrowHeight,[c,u]=Gm(i),p={start:"0%",center:"50%",end:"100%"}[u],g=(((m=r.arrow)==null?void 0:m.x)??0)+s/2,d=(((f=r.arrow)==null?void 0:f.y)??0)+l/2;let y="",h="";return c==="bottom"?(y=a?p:`${g}px`,h=`${-l}px`):c==="top"?(y=a?p:`${g}px`,h=`${n.floating.height+l}px`):c==="right"?(y=`${-l}px`,h=a?p:`${d}px`):c==="left"&&(y=`${n.floating.width+l}px`,h=a?p:`${d}px`),{data:{x:y,y:h}}}});function Gm(e){const[t,i="center"]=e.split("-");return[t,i]}var Tw=Bm,Lw=Dm,Nw=_m,[Ja,N2]=qa("Tooltip",[Om]),sd=Om(),Hm="TooltipProvider",Mw=700,Ku="tooltip.open",[Ow,$m]=Ja(Hm),Vm=e=>{const{__scopeTooltip:t,delayDuration:i=Mw,skipDelayDuration:n=300,disableHoverableContent:r=!1,
vendor: 4,160 bytes, line 66
66children:o}=e,a=x.useRef(!0),s=x.useRef(!1),l=x.useRef(0);return x.useEffect(()=>{const c=l.current;return()=>window.clearTimeout(c)},[]),I.jsx(Ow,{scope:t,isOpenDelayedRef:a,delayDuration:i,onOpen:x.useCallback(()=>{window.clearTimeout(l.current),a.current=!1},[]),onClose:x.useCallback(()=>{window.clearTimeout(l.current),l.current=window.setTimeout(()=>a.current=!0,n)},[n]),isPointerInTransitRef:s,onPointerInTransitChange:x.useCallback(c=>{s.current=c},[]),disableHoverableContent:r,children:o})};Vm.displayName=Hm;var Wm="Tooltip",[M2,es]=Ja(Wm),Ql="TooltipTrigger",Uw=x.forwardRef((e,t)=>{const{__scopeTooltip:i,...n}=e,r=es(Ql,i),o=$m(Ql,i),a=sd(i),s=x.useRef(null),l=St(t,s,r.onTriggerChange),c=x.useRef(!1),u=x.useRef(!1),p=x.useCallback(()=>c.current=!1,[]);return x.useEffect(()=>()=>document.removeEventListener("pointerup",p),[p]),I.jsx(Tw,{asChild:!0,...a,children:I.jsx($e.button,{"aria-describedby":r.open?r.contentId:void 0,"data-state":r.stateAttribute,...n,ref:l,onPointerMove:ve(e.onPointerMove,g=>{g.pointerType!=="touch"&&!u.current&&!o.isPointerInTransitRef.current&&(r.onTriggerEnter(),u.current=!0)}),onPointerLeave:ve(e.onPointerLeave,()=>{r.onTriggerLeave(),u.current=!1}),onPointerDown:ve(e.onPointerDown,()=>{r.open&&r.onClose(),c.current=!0,document.addEventListener("pointerup",p,{once:!0})}),onFocus:ve(e.onFocus,()=>{c.current||r.onOpen()}),onBlur:ve(e.onBlur,r.onClose),onClick:ve(e.onClick,r.onClose)})})});Uw.displayName=Ql;var jw="TooltipPortal",[O2,Bw]=Ja(jw,{forceMount:void 0}),Jn="TooltipContent",qm=x.forwardRef((e,t)=>{const i=Bw(Jn,e.__scopeTooltip),{forceMount:n=i.forceMount,side:r="top",...o}=e,a=es(Jn,e.__scopeTooltip);return I.jsx(Qc,{present:n||a.open,children:a.disableHoverableContent?I.jsx(Qm,{side:r,...o,ref:t}):I.jsx(Dw,{side:r,...o,ref:t})})}),Dw=x.forwardRef((e,t)=>{const i=es(Jn,e.__scopeTooltip),n=$m(Jn,e.__scopeTooltip),r=x.useRef(null),o=St(t,r),[a,s]=x.useState(null),{trigger:l,onClose:c}=i,u=r.current,{onPointerInTransitChange:p}=n,g=x.useCallback(()=>{s(null),p(!1)},[p]),d=x.useCallback((y,h)=>{const b=y.currentTarget,m={x:y.clientX,y:y.clientY},f=$w(m,b.getBoundingClientRect()),v=Vw(m,f),w=Ww(h.getBoundingClientRect()),S=Qw([...v,...w]);s(S),p(!0)},[p]);return x.useEffect(()=>()=>g(),[g]),x.useEffect(()=>{if(l&&u){const y=b=>d(b,u),h=b=>d(b,l);return l.addEventListener("pointerleave",y),u.addEventListener("pointerleave",h),()=>{l.removeEventListener("pointerleave",y),u.removeEventListener("pointerleave",h)}}},[l,u,d,g]),x.useEffect(()=>{if(a){const y=h=>{const b=h.target,m={x:h.clientX,y:h.clientY},f=(l==null?void 0:l.contains(b))||(u==null?void 0:u.contains(b)),v=!qw(m,a);f?g():v&&(g(),c())};return document.addEventListener("pointermove",y),()=>document.removeEventListener("pointermove",y)}},[l,u,a,c,g]),I.jsx(Qm,{...e,ref:o})}),[Fw,_w]=Ja(Wm,{isInside:!1}),Gw=nx("TooltipContent"),Qm=x.forwardRef((e,t)=>{const{__scopeTooltip:i,children:n,"aria-label":r,onEscapeKeyDown:o,onPointerDownOutside:a,...s}=e,l=es(Jn,i),c=sd(i),{onClose:u}=l;return x.useEffect(()=>(document.addEventListener(Ku,u),()=>document.removeEventListener(Ku,u)),[u]),x.useEffect(()=>{if(l.trigger){const p=g=>{const d=g.target;d!=null&&d.contains(l.trigger)&&u()};return window.addEventListener("scroll",p,{capture:!0}),()=>window.removeEventListener("scroll",p,{capture:!0})}},[l.trigger,u]),I.jsx(qc,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:o,onPointerDownOutside:a,onFocusOutside:p=>p.preventDefault(),onDismiss:u,children:I.jsxs(Lw,{"data-state":l.stateAttribute,...c,...s,ref:t,style:{...s.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:[I.jsx(Gw,{children:n}),I.jsx(Fw,{scope:i,isInside:!0,children:I.jsx(Rx,{id:l.contentId,role:"tooltip",children:r||n})})]})})});qm.displayName=Jn;var Zm="TooltipArrow",Hw=x.forwardRef((e,t)=>
66{const{__scopeTooltip:i,...n}=e,r=sd(i);return _w(Zm,i).isInside?null:I.jsx(Nw,{...r,...n,ref:t})});Hw.displayName=Zm;function $w(e,t){const i=Math.abs(t.top-e.y),n=Math.abs(t.bottom-e.y),r=Math.abs(t.right-e.x),o=Math.abs(t.left-e.x);switch(Math.min(i,n,r,o)){case o:return"left";case r:return"right";case i:return"top";case n:return"bottom";default:throw new Error("unreachable")}}function Vw(e,t,i=5){const n=[];switch(t){case"top":n.push({x:e.x-i,y:e.y+i},{x:e.x+i,y:e.y+i});break;case"bottom":n.push({x:e.x-i,y:e.y-i},{x:e.x+i,y:e.y-i});break;case"left":n.push({x:e.x+i,y:e.y-i},{x:e.x+i,y:e.y+i});break;case"right":n.push({x:e.x-i,y:e.y-i},{x:e.x-i,y:e.y+i});break}return n}function Ww(e){const{top:t,right:i,bottom:n,left:r}=e;return[{x:r,y:t},{x:i,y:t},{x:i,y:n},{x:r,y:n}]}function qw(e,t){const{x:i,y:n}=e;let r=!1;for(let o=0,a=t.length-1;o<t.length;a=o++){const s=t[o],l=t[a],c=s.x,u=s.y,p=l.x,g=l.y;u>n!=g>n&&i<(p-c)*(n-u)/(g-u)+c&&(r=!r)}return r}function Qw(e){const t=e.slice();return t.sort((i,n)=>i.x<n.x?-1:i.x>n.x?1:i.y<n.y?-1:i.y>n.y?1:0),Zw(t)}function Zw(e){if(e.length<=1)return e.slice();const t=[];for(let n=0;n<e.length;n++){const r=e[n];for(;t.length>=2;){const o=t[t.length-1],a=t[t.length-2];if((o.x-a.x)*(r.y-a.y)>=(o.y-a.y)*(r.x-a.x))t.pop();else break}t.push(r)}t.pop();const i=[];for(let n=e.length-1;n>=0;n--){const r=e[n];for(;i.length>=2;){const o=i[i.length-1],a=i[i.length-2];if((o.x-a.x)*(r.y-a.y)>=(o.y-a.y)*(r.x-a.x))i.pop();else break}i.push(r)}return i.pop(),t.length===1&&i.length===1&&t[0].x===i[0].x&&t[0].y===i[0].y?t:t.concat(i)}var Kw=Vm,Km=qm;const Xw=Kw,Yw=x.forwardRef(({className:e,sideOffset:t=4,...i},n)=>I.jsx(Km,{ref:n,sideOffset:t,className:cn("z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-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",e),...i}));Yw.displayName=Km.displayName;var ts=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},is=typeof window>"u"||"Deno"in globalThis;function ft(){}function Jw(e,t){return typeof e=="function"?e(t):e}function e1(e){return typeof e=="number"&&e>=0&&e!==1/0}function t1(e,t){return Math.max(e+(t||0)-Date.now(),0)}function Zl(e,t){return typeof e=="function"?e(t):e}function i1(e,t){return typeof e=="function"?e(t):e}function Xu(e,t){const{type:i="all",exact:n,fetchStatus:r,predicate:o,queryKey:a,stale:s}=e;if(a){if(n){if(t.queryHash!==ld(a,t.options))return!1}else if(!eo(t.queryKey,a))return!1}if(i!=="all"){const l=t.isActive();if(i==="active"&&!l||i==="inactive"&&l)return!1}return!(typeof s=="boolean"&&t.isStale()!==s||r&&r!==t.state.fetchStatus||o&&!o(t))}function Yu(e,t){const{exact:i,status:n,predicate:r,mutationKey:o}=e;if(o){if(!t.options.mutationKey)return!1;if(i){if(Jr(t.options.mutationKey)!==Jr(o))return!1}else if(!eo(t.options.mutationKey,o))return!1}return!(n&&t.state.status!==n||r&&!r(t))}function ld(e,t){return((t==null?void 0:t.queryKeyHashFn)||Jr)(e)}function Jr(e){return JSON.stringify(e,(t,i)=>Kl(i)?Object.keys(i).sort().reduce((n,r)=>(n[r]=i[r],n),{}):i)}function eo(e,t){return e===t?!0:typeof e!=typeof t?!1:e&&t&&typeof e=="object"&&typeof t=="object"?Object.keys(t).every(i=>eo(e[i],t[i])):!1}function Xm(e,t){if(e===t)return e;const i=Ju(e)&&Ju(t);if(i||Kl(e)&&Kl(t)){const n=i?e:Object.keys(e),r=n.length,o=i?t:Object.keys(t),a=o.length,s=i?[]:{},l=new Set(n);let c=0;for(let u=0;u<a;u++){const p=i?u:o[u];(!i&&l.has(p)||i)&&e[p]===void 0&&t[p]===void 0?(s[p]=void 0,c++):(s[p]=Xm(e[p],t[p]),s[p]===e[p]&&e[p]!==void 0&&c++)}return r===a&&c===r?e:s}return t}function Ju(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function Kl(e){if(!ep(e))return!1;const t=e.constructor;if(t===void 0)return!0;const i=t.prototype;
vendor: 20,584 bytes, line 66
66return!(!ep(i)||!i.hasOwnProperty("isPrototypeOf")||Object.getPrototypeOf(e)!==Object.prototype)}function ep(e){return Object.prototype.toString.call(e)==="[object Object]"}function n1(e){return new Promise(t=>{setTimeout(t,e)})}function r1(e,t,i){return typeof i.structuralSharing=="function"?i.structuralSharing(e,t):i.structuralSharing!==!1?Xm(e,t):t}function o1(e,t,i=0){const n=[...e,t];return i&&n.length>i?n.slice(1):n}function a1(e,t,i=0){const n=[t,...e];return i&&n.length>i?n.slice(0,-1):n}var cd=Symbol();function Ym(e,t){return!e.queryFn&&(t!=null&&t.initialPromise)?()=>t.initialPromise:!e.queryFn||e.queryFn===cd?()=>Promise.reject(new Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}var Vi,pi,jn,up,s1=(up=class extends ts{constructor(){super();Y(this,Vi);Y(this,pi);Y(this,jn);G(this,jn,t=>{if(!is&&window.addEventListener){const i=()=>t();return window.addEventListener("visibilitychange",i,!1),()=>{window.removeEventListener("visibilitychange",i)}}})}onSubscribe(){k(this,pi)||this.setEventListener(k(this,jn))}onUnsubscribe(){var t;this.hasListeners()||((t=k(this,pi))==null||t.call(this),G(this,pi,void 0))}setEventListener(t){var i;G(this,jn,t),(i=k(this,pi))==null||i.call(this),G(this,pi,t(n=>{typeof n=="boolean"?this.setFocused(n):this.onFocus()}))}setFocused(t){k(this,Vi)!==t&&(G(this,Vi,t),this.onFocus())}onFocus(){const t=this.isFocused();this.listeners.forEach(i=>{i(t)})}isFocused(){var t;return typeof k(this,Vi)=="boolean"?k(this,Vi):((t=globalThis.document)==null?void 0:t.visibilityState)!=="hidden"}},Vi=new WeakMap,pi=new WeakMap,jn=new WeakMap,up),Jm=new s1,Bn,gi,Dn,pp,l1=(pp=class extends ts{constructor(){super();Y(this,Bn,!0);Y(this,gi);Y(this,Dn);G(this,Dn,t=>{if(!is&&window.addEventListener){const i=()=>t(!0),n=()=>t(!1);return window.addEventListener("online",i,!1),window.addEventListener("offline",n,!1),()=>{window.removeEventListener("online",i),window.removeEventListener("offline",n)}}})}onSubscribe(){k(this,gi)||this.setEventListener(k(this,Dn))}onUnsubscribe(){var t;this.hasListeners()||((t=k(this,gi))==null||t.call(this),G(this,gi,void 0))}setEventListener(t){var i;G(this,Dn,t),(i=k(this,gi))==null||i.call(this),G(this,gi,t(this.setOnline.bind(this)))}setOnline(t){k(this,Bn)!==t&&(G(this,Bn,t),this.listeners.forEach(n=>{n(t)}))}isOnline(){return k(this,Bn)}},Bn=new WeakMap,gi=new WeakMap,Dn=new WeakMap,pp),za=new l1;function c1(){let e,t;const i=new Promise((r,o)=>{e=r,t=o});i.status="pending",i.catch(()=>{});function n(r){Object.assign(i,r),delete i.resolve,delete i.reject}return i.resolve=r=>{n({status:"fulfilled",value:r}),e(r)},i.reject=r=>{n({status:"rejected",reason:r}),t(r)},i}function d1(e){return Math.min(1e3*2**e,3e4)}function eh(e){return(e??"online")==="online"?za.isOnline():!0}var th=class extends Error{constructor(e){super("CancelledError"),this.revert=e==null?void 0:e.revert,this.silent=e==null?void 0:e.silent}};function $s(e){return e instanceof th}function ih(e){let t=!1,i=0,n=!1,r;const o=c1(),a=h=>{var b;n||(g(new th(h)),(b=e.abort)==null||b.call(e))},s=()=>{t=!0},l=()=>{t=!1},c=()=>Jm.isFocused()&&(e.networkMode==="always"||za.isOnline())&&e.canRun(),u=()=>eh(e.networkMode)&&e.canRun(),p=h=>{var b;n||(n=!0,(b=e.onSuccess)==null||b.call(e,h),r==null||r(),o.resolve(h))},g=h=>{var b;n||(n=!0,(b=e.onError)==null||b.call(e,h),r==null||r(),o.reject(h))},d=()=>new Promise(h=>{var b;r=m=>{(n||c())&&h(m)},(b=e.onPause)==null||b.call(e)}).then(()=>{var h;r=void 0,n||(h=e.onContinue)==null||h.call(e)}),y=()=>{if(n)return;let h;const b=i===0?e.initialPromise:void 0;try{h=b??e.fn()}catch(m){h=Promise.reject(m)}Promise.resolve(h).then(p).catch(m=>{var C;if(n)return;const f=e.retry??(is?0:3),v=e.retryDelay??d1,w=typeof v=="function"?v(i,m):v,S=f===!0||typeof f=="number"&&i<f||typeof f=="function"&&f(i,m);if(t||!S){g(m);return}i++,(C=e.onFail)==null||C.call(e,i,m),n1(w).then(()=>c()?void 0:d()).then(()=>{t?g(m):y()})})};return{promise:o,cancel:a,continue:()=>(r==null||r(),o),cancelRetry:s,continueRetry:l,canStart:u,start:()=>(u()?y():d().then(y),o)}}var u1=e=>setTimeout(e,0);function p1(){let e=[],t=0,i=s=>{s()},n=s=>{s()},r=u1;const o=s=>{t?e.push(s):r(()=>{i(s)})},a=()=>{const s=e;e=[],s.length&&r(()=>{n(()=>{s.forEach(l=>{i(l)})})})};return{batch:s=>{let l;t++;try{l=s()}finally{t--,t||a()}return l},batchCalls:s=>(...l)=>{o(()=>{s(...l)})},schedule:o,setNotifyFunction:s=>{i=s},setBatchNotifyFunction:s=>{n=s},setScheduler:s=>{r=s}}}var Me=p1(),Wi,gp,nh=(gp=class{constructor(){Y(this,Wi)}destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),e1(this.gcTime)&&G(this,Wi,setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(is?1/0:5*60*1e3))}clearGcTimeout(){k(this,Wi)&&(clearTimeout(k(this,Wi)),G(this,Wi,void 0))}},Wi=new WeakMap,gp),Fn,qi,tt,Qi,ze,no,Zi,mt,Bt,fp,g1=(fp=class extends nh{constructor(t){super();Y(this,mt);Y(this,Fn);Y(this,qi);Y(this,tt);Y(this,Qi);Y(this,ze);Y(this,no);Y(this,Zi);G(this,Zi,!1),G(this,no,t.defaultOptions),this.setOptions(t.options),this.observers=[],G(this,Qi,t.client),G(this,tt,k(this,Qi).getQueryCache()),this.queryKey=t.queryKey,this.queryHash=t.queryHash,G(this,Fn,m1(this.options)),this.state=t.state??k(this,Fn),this.scheduleGc()}get meta(){return this.options.meta}get promise(){var t;return(t=k(this,ze))==null?void 0:t.promise}setOptions(t){this.options={...k(this,no),...t},this.updateGcTime(this.options.gcTime)}optionalRemove(){!this.observers.length&&this.state.fetchStatus==="idle"&&k(this,tt).remove(this)}setData(t,i){const n=r1(this.state.data,t,this.options);return ke(this,mt,Bt).call(this,{data:n,type:"success",dataUpdatedAt:i==null?void 0:i.updatedAt,manual:i==null?void 0:i.manual}),n}setState(t,i){ke(this,mt,Bt).call(this,{type:"setState",state:t,setStateOptions:i})}cancel(t){var n,r;const i=(n=k(this,ze))==null?void 0:n.promise;return(r=k(this,ze))==null||r.cancel(t),i?i.then(ft).catch(ft):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}reset(){this.destroy(),this.setState(k(this,Fn))}isActive(){return this.observers.some(t=>i1(t.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===cd||this.state.dataUpdateCount+this.state.errorUpdateCount===0}isStatic(){return this.getObserversCount()>0?this.observers.some(t=>Zl(t.options.staleTime,this)==="static"):!1}isStale(){return this.getObserversCount()>0?this.observers.some(t=>t.getCurrentResult().isStale):this.state.data===void 0||this.state.isInvalidated}isStaleByTime(t=0){return this.state.data===void 0?!0:t==="static"?!1:this.state.isInvalidated?!0:!t1(this.state.dataUpdatedAt,t)}onFocus(){var i;const t=this.observers.find(n=>n.shouldFetchOnWindowFocus());t==null||t.refetch({cancelRefetch:!1}),(i=k(this,ze))==null||i.continue()}onOnline(){var i;const t=this.observers.find(n=>n.shouldFetchOnReconnect());t==null||t.refetch({cancelRefetch:!1}),(i=k(this,ze))==null||i.continue()}addObserver(t){this.observers.includes(t)||(this.observers.push(t),this.clearGcTimeout(),k(this,tt).notify({type:"observerAdded",query:this,observer:t}))}removeObserver(t){this.observers.includes(t)&&(this.observers=this.observers.filter(i=>i!==t),this.observers.length||(k(this,ze)&&(k(this,Zi)?k(this,ze).cancel({revert:!0}):k(this,ze).cancelRetry()),this.scheduleGc()),k(this,tt).notify({type:"observerRemoved",query:this,observer:t}))}getObserversCount(){return this.observers.length}invalidate(){this.state.isInvalidated||ke(this,mt,Bt).call(this,{type:"invalidate"})}fetch(t,i){var c,u,p;if(this.state.fetchStatus!=="idle"){if(this.state.data!==void 0&&(i!=null&&i.cancelRefetch))this.cancel({silent:!0});else if(k(this,ze))return k(this,ze).continueRetry(),k(this,ze).promise}if(t&&this.setOptions(t),!this.options.queryFn){const g=this.observers.find(d=>d.options.queryFn);g&&this.setOptions(g.options)}const n=new AbortController,r=g=>{Object.defineProperty(g,"signal",{enumerable:!0,get:()=>(G(this,Zi,!0),n.signal)})},o=()=>{const g=Ym(this.options,i),y=(()=>{const h={client:k(this,Qi),queryKey:this.queryKey,meta:this.meta};return r(h),h})();return G(this,Zi,!1),this.options.persister?this.options.persister(g,y,this):g(y)},s=(()=>{const g={fetchOptions:i,options:this.options,queryKey:this.queryKey,client:k(this,Qi),state:this.state,fetchFn:o};return r(g),g})();(c=this.options.behavior)==null||c.onFetch(s,this),G(this,qi,this.state),(this.state.fetchStatus==="idle"||this.state.fetchMeta!==((u=s.fetchOptions)==null?void 0:u.meta))&&ke(this,mt,Bt).call(this,{type:"fetch",meta:(p=s.fetchOptions)==null?void 0:p.meta});const l=g=>{var d,y,h,b;$s(g)&&g.silent||ke(this,mt,Bt).call(this,{type:"error",error:g}),$s(g)||((y=(d=k(this,tt).config).onError)==null||y.call(d,g,this),(b=(h=k(this,tt).config).onSettled)==null||b.call(h,this.state.data,g,this)),this.scheduleGc()};return G(this,ze,ih({initialPromise:i==null?void 0:i.initialPromise,fn:s.fetchFn,abort:n.abort.bind(n),onSuccess:g=>{var d,y,h,b;if(g===void 0){l(new Error(`${this.queryHash} data is undefined`));return}try{this.setData(g)}catch(m){l(m);return}(y=(d=k(this,tt).config).onSuccess)==null||y.call(d,g,this),(b=(h=k(this,tt).config).onSettled)==null||b.call(h,g,this.state.error,this),this.scheduleGc()},onError:l,onFail:(g,d)=>{ke(this,mt,Bt).call(this,{type:"failed",failureCount:g,error:d})},onPause:()=>{ke(this,mt,Bt).call(this,{type:"pause"})},onContinue:()=>{ke(this,mt,Bt).call(this,{type:"continue"})},retry:s.options.retry,retryDelay:s.options.retryDelay,networkMode:s.options.networkMode,canRun:()=>!0})),k(this,ze).start()}},Fn=new WeakMap,qi=new WeakMap,tt=new WeakMap,Qi=new WeakMap,ze=new WeakMap,no=new WeakMap,Zi=new WeakMap,mt=new WeakSet,Bt=function(t){const i=n=>{switch(t.type){case"failed":return{...n,fetchFailureCount:t.failureCount,fetchFailureReason:t.error};case"pause":return{...n,fetchStatus:"paused"};case"continue":return{...n,fetchStatus:"fetching"};case"fetch":return{...n,...f1(n.data,this.options),fetchMeta:t.meta??null};case"success":return G(this,qi,void 0),{...n,data:t.data,dataUpdateCount:n.dataUpdateCount+1,dataUpdatedAt:t.dataUpdatedAt??Date.now(),error:null,isInvalidated:!1,status:"success",...!t.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};case"error":const r=t.error;return $s(r)&&r.revert&&k(this,qi)?{...k(this,qi),fetchStatus:"idle"}:{...n,error:r,errorUpdateCount:n.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:n.fetchFailureCount+1,fetchFailureReason:r,fetchStatus:"idle",status:"error"};case"invalidate":return{...n,isInvalidated:!0};case"setState":return{...n,...t.state}}};this.state=i(this.state),Me.batch(()=>{this.observers.forEach(n=>{n.onQueryUpdate()}),k(this,tt).notify({query:this,type:"updated",action:t})})},fp);function f1(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:eh(t.networkMode)?"fetching":"paused",...e===void 0&&{error:null,status:"pending"}}}function m1(e){const t=typeof e.initialData=="function"?e.initialData():e.initialData,i=t!==void 0,n=i?typeof e.initialDataUpdatedAt=="function"?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:i?n??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:i?"success":"pending",fetchStatus:"idle"}}var Et,mp,h1=(mp=class extends ts{constructor(t={}){super();Y(this,Et);this.config=t,G(this,Et,new Map)}build(t,i,n){const r=i.queryKey,o=i.queryHash??ld(r,i);let a=this.get(o);return a||(a=new g1({client:t,queryKey:r,queryHash:o,options:t.defaultQueryOptions(i),state:n,defaultOptions:t.getQueryDefaults(r)}),this.add(a)),a}add(t){k(this,Et).has(t.queryHash)||(k(this,Et).set(t.queryHash,t),this.notify({type:"added",query:t}))}remove(t){const i=k(this,Et).get(t.queryHash);i&&(t.destroy(),i===t&&k(this,Et).delete(t.queryHash),this.notify({type:"removed",query:t}))}clear(){Me.batch(()=>{this.getAll().forEach(t=>{this.remove(t)})})}get(t){return k(this,Et).get(t)}getAll(){return[...k(this,Et).values()]}find(t){const i={exact:!0,...t};return this.getAll().find(n=>Xu(i,n))}findAll(t={}){const i=this.getAll();return Object.keys(t).length>0?i.filter(n=>Xu(t,n)):i}notify(t){Me.batch(()=>{this.listeners.forEach(i=>{i(t)})})}onFocus(){Me.batch(()=>{this.getAll().forEach(t=>{t.onFocus()})})}onOnline(){Me.batch(()=>{this.getAll().forEach(t=>{t.onOnline()})})}},Et=new WeakMap,mp),Rt,Le,Ki,zt,si,hp,v1=(hp=class extends nh{constructor(t){super();Y(this,zt);Y(this,Rt);Y(this,Le);Y(this,Ki);this.mutationId=t.mutationId,G(this,Le,t.mutationCache),G(this,Rt,[]),this.state=t.state||x1(),this.setOptions(t.options),this.scheduleGc()}setOptions(t){this.options=t,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(t){k(this,Rt).includes(t)||(k(this,Rt).push(t),this.clearGcTimeout(),k(this,Le).notify({type:"observerAdded",mutation:this,observer:t}))}removeObserver(t){G(this,Rt,k(this,Rt).filter(i=>i!==t)),this.scheduleGc(),k(this,Le).notify({type:"observerRemoved",mutation:this,observer:t})}optionalRemove(){k(this,Rt).length||(this.state.status==="pending"?this.scheduleGc():k(this,Le).remove(this))}continue(){var t;return((t=k(this,Ki))==null?void 0:t.continue())??this.execute(this.state.variables)}async execute(t){var o,a,s,l,c,u,p,g,d,y,h,b,m,f,v,w,S,C,A,z;const i=()=>{ke(this,zt,si).call(this,{type:"continue"})};G(this,Ki,ih({fn:()=>this.options.mutationFn?this.options.mutationFn(t):Promise.reject(new Error("No mutationFn found")),onFail:(N,L)=>{ke(this,zt,si).call(this,{type:"failed",failureCount:N,error:L})},onPause:()=>{ke(this,zt,si).call(this,{type:"pause"})},onContinue:i,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>k(this,Le).canRun(this)}));const n=this.state.status==="pending",r=!k(this,Ki).canStart();try{if(n)i();else{ke(this,zt,si).call(this,{type:"pending",variables:t,isPaused:r}),await((a=(o=k(this,Le).config).onMutate)==null?void 0:a.call(o,t,this));const L=await((l=(s=this.options).onMutate)==null?void 0:l.call(s,t));L!==this.state.context&&ke(this,zt,si).call(this,{type:"pending",context:L,variables:t,isPaused:r})}const N=await k(this,Ki).start();return await((u=(c=k(this,Le).config).onSuccess)==null?void 0:u.call(c,N,t,this.state.context,this)),await((g=(p=this.options).onSuccess)==null?void 0:g.call(p,N,t,this.state.context)),await((y=(d=k(this,Le).config).onSettled)==null?void 0:y.call(d,N,null,this.state.variables,this.state.context,this)),await((b=(h=this.options).onSettled)==null?void 0:b.call(h,N,null,t,this.state.context)),ke(this,zt,si).call(this,{type:"success",data:N}),N}catch(N){try{throw await((f=(m=k(this,Le).config).onError)==null?void 0:f.call(m,N,t,this.state.context,this)),await((w=(v=this.options).onError)==null?void 0:w.call(v,N,t,this.state.context)),await((C=(S=k(this,Le).config).onSettled)==null?void 0:C.call(S,void 0,N,this.state.variables,this.state.context,this)),await((z=(A=this.options).onSettled)==null?void 0:z.call(A,void 0,N,t,this.state.context)),N}finally{ke(this,zt,si).call(this,{type:"error",error:N})}}finally{k(this,Le).runNext(this)}}},Rt=new WeakMap,Le=new WeakMap,Ki=new WeakMap,zt=new WeakSet,si=function(t){const i=n=>{switch(t.type){case"failed":return{...n,failureCount:t.failureCount,failureReason:t.error};case"pause":return{...n,isPaused:!0};case"continue":return{...n,isPaused:!1};case"pending":return{...n,context:t.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:t.isPaused,status:"pending",variables:t.variables,submittedAt:Date.now()};case"success":return{...n,data:t.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...n,data:void 0,error:t.error,failureCount:n.failureCount+1,failureReason:t.error,isPaused:!1,status:"error"}}};this.state=i(this.state),Me.batch(()=>{k(this,Rt).forEach(n=>{n.onMutationUpdate(t)}),k(this,Le).notify({mutation:this,type:"updated",action:t})})},hp);function x1(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0}}var _t,ht,ro,vp,y1=(vp=class extends ts{constructor(t={}){super();Y(this,_t);Y(this,ht);Y(this,ro);this.config=t,G(this,_t,new Set),G(this,ht,new Map),G(this,ro,0)}build(t,i,n){const r=new v1({mutationCache:this,mutationId:++vo(this,ro)._,options:t.defaultMutationOptions(i),state:n});return this.add(r),r}add(t){k(this,_t).add(t);const i=Do(t);if(typeof i=="string"){const n=k(this,ht).get(i);n?n.push(t):k(this,ht).set(i,[t])}this.notify({type:"added",mutation:t})}remove(t){if(k(this,_t).delete(t)){const i=Do(t);if(typeof i=="string"){const n=k(this,ht).get(i);if(n)if(n.length>1){const r=n.indexOf(t);r!==-1&&n.splice(r,1)}else n[0]===t&&k(this,ht).delete(i)}}this.notify({type:"removed",mutation:t})}canRun(t){const i=Do(t);if(typeof i=="string"){const n=k(this,ht).get(i),r=n==null?void 0:n.find(o=>o.state.status==="pending");return!r||r===t}else return!0}runNext(t){var n;const i=Do(t);if(typeof i=="string"){const r=(n=k(this,ht).get(i))==null?void 0:n.find(o=>o!==t&&o.state.isPaused);return(r==null?void 0:r.continue())??Promise.resolve()}else return Promise.resolve()}clear(){Me.batch(()=>{k(this,_t).forEach(t=>{this.notify({type:"removed",mutation:t})}),k(this,_t).clear(),k(this,ht).clear()})}getAll(){return Array.from(k(this,_t))}find(t){const i={exact:!0,...t};return this.getAll().find(n=>Yu(i,n))}findAll(t={}){return this.getAll().filter(i=>Yu(t,i))}notify(t){Me.batch(()=>{this.listeners.forEach(i=>{i(t)})})}resumePausedMutations(){const t=this.getAll().filter(i=>i.state.isPaused);return Me.batch(()=>Promise.all(t.map(i=>i.continue().catch(ft))))}},_t=new WeakMap,ht=new WeakMap,ro=new WeakMap,vp);function Do(e){var t;return(t=e.options.scope)==null?void 0:t.id}function tp(e){return{onFetch:(t,i)=>{var u,p,g,d,y;const n=t.options,r=(g=(p=(u=t.fetchOptions)==null?void 0:u.meta)==null?void 0:p.fetchMore)==null?void 0:g.direction,o=((d=t.state.data)==null?void 0:d.pages)||[],a=((y=t.state.data)==null?void 0:y.pageParams)||[];let s={pages:[],pageParams:[]},l=0;const c=async()=>{let h=!1;const b=v=>{Object.defineProperty(v,"signal",{enumerable:!0,get:()=>(t.signal.aborted?h=!0:t.signal.addEventListener("abort",()=>{h=!0}),t.signal)})},m=Ym(t.options,t.fetchOptions),f=async(v,w,S)=>{if(h)return Promise.reject();if(w==null&&v.pages.length)return Promise.resolve(v);const A=(()=>{const D={client:t.client,queryKey:t.queryKey,pageParam:w,direction:S?"backward":"forward",meta:t.options.meta};return b(D),D})(),z=await m(A),{maxPages:N}=t.options,L=S?a1:o1;return{pages:L(v.pages,z,N),pageParams:L(v.pageParams,w,N)}};if(r&&o.length){const v=r==="backward",w=v?b1:ip,S={pages:o,pageParams:a},C=w(n,S);s=await f(S,C,v)}else{const v=e??o.length;do{const w=l===0?a[0]??n.initialPageParam:ip(n,s);if(l>0&&w==null)break;s=await f(s,w),l++}while(l<v)}return s};t.options.persister?t.fetchFn=()=>{var h,b;return(b=(h=t.options).persister)==null?void 0:b.call(h,c,{client:t.client,queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},i)}:t.fetchFn=c}}}function ip(e,{pages:t,pageParams:i}){const n=t.length-1;return t.length>0?e.getNextPageParam(t[n],t,i[n],i):void 0}function b1(e,{pages:t,pageParams:i}){var n;return t.length>0?(n=e.getPreviousPageParam)==null?void 0:n.call(e,t[0],t,i[0],i):void 0}var ue,fi,mi,_n,Gn,hi,Hn,$n,xp,w1=(xp=class{constructor(e={}){Y(this,ue);Y(this,fi);Y(this,mi);Y(this,_n);Y(this,Gn);Y(this,hi);Y(this,Hn);Y(this,$n);G(this,ue,e.queryCache||new h1),G(this,fi,e.mutationCache||new y1),G(this,mi,e.defaultOptions||{}),G(this,_n,new Map),G(this,Gn,new Map),G(this,hi,0)}mount(){vo(this,hi)._++,k(this,hi)===1&&(G(this,Hn,Jm.subscribe(async e=>{e&&(await this.resumePausedMutations(),k(this,ue).onFocus())})),G(this,$n,za.subscribe(async e=>{e&&(await this.resumePausedMutations(),k(this,ue).onOnline())})))}unmount(){var e,t;vo(this,hi)._--,k(this,hi)===0&&((e=k(this,Hn))==null||e.call(this),G(this,Hn,void 0),(t=k(this,$n))==null||t.call(this),G(this,$n,void 0))}isFetching(e){return k(this,ue).findAll({...e,fetchStatus:"fetching"}).length}isMutating(e){return k(this,fi).findAll({...e,status:"pending"}).length}getQueryData(e){var i;const t=this.defaultQueryOptions({queryKey:e});return(i=k(this,ue).get(t.queryHash))==null?void 0:i.state.data}ensureQueryData(e){const t=this.defaultQueryOptions(e),i=k(this,ue).build(this,t),n=i.state.data;return n===void 0?this.fetchQuery(e):(e.revalidateIfStale&&i.isStaleByTime(Zl(t.
66staleTime,i))&&this.prefetchQuery(t),Promise.resolve(n))}getQueriesData(e){return k(this,ue).findAll(e).map(({queryKey:t,state:i})=>{const n=i.data;return[t,n]})}setQueryData(e,t,i){const n=this.defaultQueryOptions({queryKey:e}),r=k(this,ue).get(n.queryHash),o=r==null?void 0:r.state.data,a=Jw(t,o);if(a!==void 0)return k(this,ue).build(this,n).setData(a,{...i,manual:!0})}setQueriesData(e,t,i){return Me.batch(()=>k(this,ue).findAll(e).map(({queryKey:n})=>[n,this.setQueryData(n,t,i)]))}getQueryState(e){var i;const t=this.defaultQueryOptions({queryKey:e});return(i=k(this,ue).get(t.queryHash))==null?void 0:i.state}removeQueries(e){const t=k(this,ue);Me.batch(()=>{t.findAll(e).forEach(i=>{t.remove(i)})})}resetQueries(e,t){const i=k(this,ue);return Me.batch(()=>(i.findAll(e).forEach(n=>{n.reset()}),this.refetchQueries({type:"active",...e},t)))}cancelQueries(e,t={}){const i={revert:!0,...t},n=Me.batch(()=>k(this,ue).findAll(e).map(r=>r.cancel(i)));return Promise.all(n).then(ft).catch(ft)}invalidateQueries(e,t={}){return Me.batch(()=>(k(this,ue).findAll(e).forEach(i=>{i.invalidate()}),(e==null?void 0:e.refetchType)==="none"?Promise.resolve():this.refetchQueries({...e,type:(e==null?void 0:e.refetchType)??(e==null?void 0:e.type)??"active"},t)))}refetchQueries(e,t={}){const i={...t,cancelRefetch:t.cancelRefetch??!0},n=Me.batch(()=>k(this,ue).findAll(e).filter(r=>!r.isDisabled()&&!r.isStatic()).map(r=>{let o=r.fetch(void 0,i);return i.throwOnError||(o=o.catch(ft)),r.state.fetchStatus==="paused"?Promise.resolve():o}));return Promise.all(n).then(ft)}fetchQuery(e){const t=this.defaultQueryOptions(e);t.retry===void 0&&(t.retry=!1);const i=k(this,ue).build(this,t);return i.isStaleByTime(Zl(t.staleTime,i))?i.fetch(t):Promise.resolve(i.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(ft).catch(ft)}fetchInfiniteQuery(e){return e.behavior=tp(e.pages),this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(ft).catch(ft)}ensureInfiniteQueryData(e){return e.behavior=tp(e.pages),this.ensureQueryData(e)}resumePausedMutations(){return za.isOnline()?k(this,fi).resumePausedMutations():Promise.resolve()}getQueryCache(){return k(this,ue)}getMutationCache(){return k(this,fi)}getDefaultOptions(){return k(this,mi)}setDefaultOptions(e){G(this,mi,e)}setQueryDefaults(e,t){k(this,_n).set(Jr(e),{queryKey:e,defaultOptions:t})}getQueryDefaults(e){const t=[...k(this,_n).values()],i={};return t.forEach(n=>{eo(e,n.queryKey)&&Object.assign(i,n.defaultOptions)}),i}setMutationDefaults(e,t){k(this,Gn).set(Jr(e),{mutationKey:e,defaultOptions:t})}getMutationDefaults(e){const t=[...k(this,Gn).values()],i={};return t.forEach(n=>{eo(e,n.mutationKey)&&Object.assign(i,n.defaultOptions)}),i}defaultQueryOptions(e){if(e._defaulted)return e;const t={...k(this,mi).queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:!0};return t.queryHash||(t.queryHash=ld(t.queryKey,t)),t.refetchOnReconnect===void 0&&(t.refetchOnReconnect=t.networkMode!=="always"),t.throwOnError===void 0&&(t.throwOnError=!!t.suspense),!t.networkMode&&t.persister&&(t.networkMode="offlineFirst"),t.queryFn===cd&&(t.enabled=!1),t}defaultMutationOptions(e){return e!=null&&e._defaulted?e:{...k(this,mi).mutations,...(e==null?void 0:e.mutationKey)&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:!0}}clear(){k(this,ue).clear(),k(this,fi).clear()}},ue=new WeakMap,fi=new WeakMap,mi=new WeakMap,_n=new WeakMap,Gn=new WeakMap,hi=new WeakMap,Hn=new WeakMap,$n=new WeakMap,xp),S1=x.createContext(void 0),C1=({client:e,children:t})=>(x.useEffect(()=>(e.mount(),()=>{e.unmount()}),[e]),I.jsx(S1.Provider,{value:e,children:t}));/** 67 * @remix-run/router v1.23.0 68 * 69 * Copyright (c) Remix Software Inc. 70 * 71 * This source code is licensed under the MIT license found in the 72 * LICENSE.md file in the root directory of this source tree. 73 * 74 * @license MIT 75 */function to(){return to=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var i=arguments[t];for(var n in i)Object.prototype.hasOwnProperty.call(i,n)&&(e[n]=i[n])}return e},to.apply(this,arguments)}var yi;(function(e){e.Pop="POP",e.Push="PUSH",e.Replace="REPLACE"})(yi||(yi={}));const np="popstate";function A1(e){e===void 0&&(e={});function t(n,r){let{pathname:o,search:a,hash:s}=n.location;return Xl("",{pathname:o,search:a,hash:s},r.state&&r.state.usr||null,r.state&&r.state.key||"default")}function i(n,r){return typeof r=="string"?r:oh(r)}return k1(t,i,null,e)}function ye(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function rh(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function I1(){return Math.random().toString(36).substr(2,8)}function rp(e,t){return{usr:e.state,key:e.key,idx:t}}function Xl(e,t,i,n){return i===void 0&&(i=null),to({pathname:typeof e=="string"?e:e.pathname,search:"",hash:""},typeof t=="string"?ar(t):t,{state:i,key:t&&t.key||n||I1()})}function oh(e){let{pathname:t="/",search:i="",hash:n=""}=e;return i&&i!=="?"&&(t+=i.charAt(0)==="?"?i:"?"+i),n&&n!=="#"&&(t+=n.charAt(0)==="#"?n:"#"+n),t}function ar(e){let t={};if(e){let i=e.indexOf("#");i>=0&&(t.hash=e.substr(i),e=e.substr(0,i));let n=e.indexOf("?");n>=0&&(t.search=e.substr(n),e=e.substr(0,n)),e&&(t.pathname=e)}return t}function k1(e,t,i,n){n===void 0&&(n={});let{window:r=document.defaultView,v5Compat:o=!1}=n,a=r.history,s=yi.Pop,l=null,c=u();c==null&&(c=0,a.replaceState(to({},a.state,{idx:c}),""));function u(){return(a.state||{idx:null}).idx}function p(){s=yi.Pop;let b=u(),m=b==null?null:b-c;c=b,l&&l({action:s,location:h.location,delta:m})}function g(b,m){s=yi.Push;let f=Xl(h.location,b,m);c=u()+1;let v=rp(f,c),w=h.createHref(f);try{a.pushState(v,"",w)}catch(S){if(S instanceof DOMException&&S.name==="DataCloneError")throw S;r.location.assign(w)}o&&l&&l({action:s,location:h.location,delta:1})}function d(b,m){s=yi.Replace;let f=Xl(h.location,b,m);c=u();let v=rp(f,c),w=h.createHref(f);a.replaceState(v,"",w),o&&l&&l({action:s,location:h.location,delta:0})}function y(b){let m=r.location.origin!=="null"?r.location.origin:r.location.href,f=typeof b=="string"?b:oh(b);return f=f.replace(/ $/,"%20"),ye(m,"No window.location.(origin|href) available to create URL for href: "+f),new URL(f,m)}let h={get action(){return s},get location(){return e(r,a)},listen(b){if(l)throw new Error("A history only accepts one active listener");return r.addEventListener(np,p),l=b,()=>{r.removeEventListener(np,p),l=null}},createHref(b){return t(r,b)},createURL:y,encodeLocation(b){let m=y(b);return{pathname:m.pathname,search:m.search,hash:m.hash}},push:g,replace:d,go(b){return a.go(b)}};return h}var op;(function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"})(op||(op={}));function E1(e,t,i){return i===void 0&&(i="/"),R1(e,t,i,!1)}function R1(e,t,i,n){let r=typeof t=="string"?ar(t):t,o=lh(r.pathname||"/",i);if(o==null)return null;let a=ah(e);z1(a);let s=null;for(let l=0;s==null&&l<a.length;++l){let c=F1(o);s=B1(a[l],c,n)}return s}function ah(e,t,i,n){t===void 0&&(t=[]),i===void 0&&(i=[]),n===void 0&&(n="");let r=(o,a,s)=>{let l={relativePath:s===void 0?o.path||"":s,caseSensitive:o.caseSensitive===!0,childrenIndex:a,route:o};l.relativePath.startsWith("/")&&(ye(l.relativePath.startsWith(n),'Absolute route path "'+l.relativePath+'" nested under path '+('"'+n+'" is not val
75id. An absolute child route path ')+"must start with the combined path of all its parent routes."),l.relativePath=l.relativePath.slice(n.length));let c=Ji([n,l.relativePath]),u=i.concat(l);o.children&&o.children.length>0&&(ye(o.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+c+'".')),ah(o.children,t,u,c)),!(o.path==null&&!o.index)&&t.push({path:c,score:U1(c,o.index),routesMeta:u})};return e.forEach((o,a)=>{var s;if(o.path===""||!((s=o.path)!=null&&s.includes("?")))r(o,a);else for(let l of sh(o.path))r(o,a,l)}),t}function sh(e){let t=e.split("/");if(t.length===0)return[];let[i,...n]=t,r=i.endsWith("?"),o=i.replace(/\?$/,"");if(n.length===0)return r?[o,""]:[o];let a=sh(n.join("/")),s=[];return s.push(...a.map(l=>l===""?o:[o,l].join("/"))),r&&s.push(...a),s.map(l=>e.startsWith("/")&&l===""?"/":l)}function z1(e){e.sort((t,i)=>t.score!==i.score?i.score-t.score:j1(t.routesMeta.map(n=>n.childrenIndex),i.routesMeta.map(n=>n.childrenIndex)))}const P1=/^:[\w-]+$/,T1=3,L1=2,N1=1,M1=10,O1=-2,ap=e=>e==="*";function U1(e,t){let i=e.split("/"),n=i.length;return i.some(ap)&&(n+=O1),t&&(n+=L1),i.filter(r=>!ap(r)).reduce((r,o)=>r+(P1.test(o)?T1:o===""?N1:M1),n)}function j1(e,t){return e.length===t.length&&e.slice(0,-1).every((n,r)=>n===t[r])?e[e.length-1]-t[t.length-1]:0}function B1(e,t,i){let{routesMeta:n}=e,r={},o="/",a=[];for(let s=0;s<n.length;++s){let l=n[s],c=s===n.length-1,u=o==="/"?t:t.slice(o.length)||"/",p=sp({path:l.relativePath,caseSensitive:l.caseSensitive,end:c},u),g=l.route;if(!p&&c&&i&&!n[n.length-1].route.index&&(p=sp({path:l.relativePath,caseSensitive:l.caseSensitive,end:!1},u)),!p)return null;
vendor: 6,356 bytes, lines 75-84
75Object.assign(r,p.params),a.push({params:r,pathname:Ji([o,p.pathname]),pathnameBase:W1(Ji([o,p.pathnameBase])),route:g}),p.pathnameBase!=="/"&&(o=Ji([o,p.pathnameBase]))}return a}function sp(e,t){typeof e=="string"&&(e={path:e,caseSensitive:!1,end:!0});let[i,n]=D1(e.path,e.caseSensitive,e.end),r=t.match(i);if(!r)return null;let o=r[0],a=o.replace(/(.)\/+$/,"$1"),s=r.slice(1);return{params:n.reduce((c,u,p)=>{let{paramName:g,isOptional:d}=u;if(g==="*"){let h=s[p]||"";a=o.slice(0,o.length-h.length).replace(/(.)\/+$/,"$1")}const y=s[p];return d&&!y?c[g]=void 0:c[g]=(y||"").replace(/%2F/g,"/"),c},{}),pathname:o,pathnameBase:a,pattern:e}}function D1(e,t,i){t===void 0&&(t=!1),i===void 0&&(i=!0),rh(e==="*"||!e.endsWith("*")||e.endsWith("/*"),'Route path "'+e+'" will be treated as if it were '+('"'+e.replace(/\*$/,"/*")+'" because the `*` character must ')+"always follow a `/` in the pattern. To get rid of this warning, "+('please change the route path to "'+e.replace(/\*$/,"/*")+'".'));let n=[],r="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(a,s,l)=>(n.push({paramName:s,isOptional:l!=null}),l?"/?([^\\/]+)?":"/([^\\/]+)"));return e.endsWith("*")?(n.push({paramName:"*"}),r+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):i?r+="\\/*$":e!==""&&e!=="/"&&(r+="(?:(?=\\/|$))"),[new RegExp(r,t?void 0:"i"),n]}function F1(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return rh(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+t+").")),e}}function lh(e,t){if(t==="/")return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let i=t.endsWith("/")?t.length-1:t.length,n=e.charAt(i);return n&&n!=="/"?null:e.slice(i)||"/"}function _1(e,t){t===void 0&&(t="/");let{pathname:i,search:n="",hash:r=""}=typeof e=="string"?ar(e):e;return{pathname:i?i.startsWith("/")?i:G1(i,t):t,search:q1(n),hash:Q1(r)}}function G1(e,t){let i=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(r=>{r===".."?i.length>1&&i.pop():r!=="."&&i.push(r)}),i.length>1?i.join("/"):"/"}function Vs(e,t,i,n){return"Cannot include a '"+e+"' character in a manually specified "+("`to."+t+"` field ["+JSON.stringify(n)+"]. Please separate it out to the ")+("`to."+i+"` field. Alternatively you may provide the full path as ")+'a string in <Link to="..."> and the router will parse it for you.'}function H1(e){return e.filter((t,i)=>i===0||t.route.path&&t.route.path.length>0)}function $1(e,t){let i=H1(e);return t?i.map((n,r)=>r===i.length-1?n.pathname:n.pathnameBase):i.map(n=>n.pathnameBase)}function V1(e,t,i,n){n===void 0&&(n=!1);let r;typeof e=="string"?r=ar(e):(r=to({},e),ye(!r.pathname||!r.pathname.includes("?"),Vs("?","pathname","search",r)),ye(!r.pathname||!r.pathname.includes("#"),Vs("#","pathname","hash",r)),ye(!r.search||!r.search.includes("#"),Vs("#","search","hash",r)));let o=e===""||r.pathname==="",a=o?"/":r.pathname,s;if(a==null)s=i;else{let p=t.length-1;if(!n&&a.startsWith("..")){let g=a.split("/");for(;g[0]==="..";)g.shift(),p-=1;r.pathname=g.join("/")}s=p>=0?t[p]:"/"}let l=_1(r,s),c=a&&a!=="/"&&a.endsWith("/"),u=(o||a===".")&&i.endsWith("/");return!l.pathname.endsWith("/")&&(c||u)&&(l.pathname+="/"),l}const Ji=e=>e.join("/").replace(/\/\/+/g,"/"),W1=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),q1=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,Q1=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;function Z1(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}const ch=["post","put","patch","delete"];new Set(ch);const K1=["get",...ch];new Set(K1);/** 76 * React Router v6.30.1 77 * 78 * Copyright (c) Remix Software Inc. 79 * 80 * This source code is licensed under the MIT license found in the 81 * LICENSE.md file in the root directory of this source tree. 82 * 83 * @license MIT 84 */function io(){return io=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var i=arguments[t];for(var n in i)Object.prototype.hasOwnProperty.call(i,n)&&(e[n]=i[n])}return e},io.apply(this,arguments)}const dd=x.createContext(null),X1=x.createContext(null),ns=x.createContext(null),rs=x.createContext(null),sr=x.createContext({outlet:null,matches:[],isDataRoute:!1}),dh=x.createContext(null);function os(){return x.useContext(rs)!=null}function ud(){return os()||ye(!1),x.useContext(rs).location}function uh(e){x.useContext(ns).static||x.useLayoutEffect(e)}function as(){let{isDataRoute:e}=x.useContext(sr);return e?d2():Y1()}function Y1(){os()||ye(!1);let e=x.useContext(dd),{basename:t,future:i,navigator:n}=x.useContext(ns),{matches:r}=x.useContext(sr),{pathname:o}=ud(),a=JSON.stringify($1(r,i.v7_relativeSplatPath)),s=x.useRef(!1);return uh(()=>{s.current=!0}),x.useCallback(function(c,u){if(u===void 0&&(u={}),!s.current)return;if(typeof c=="number"){n.go(c);return}let p=V1(c,JSON.parse(a),o,u.relative==="path");e==null&&t!=="/"&&(p.pathname=p.pathname==="/"?t:Ji([t,p.pathname])),(u.replace?n.replace:n.push)(p,u.state,u)},[t,n,a,o,e])}function J1(e,t){return e2(e,t)}function e2(e,t,i,n){os()||ye(!1);let{navigator:r}=x.useContext(ns),{matches:o}=x.useContext(sr),a=o[o.length-1],s=a?a.params:{};a&&a.pathname;let l=a?a.pathnameBase:"/";a&&a.route;let c=ud(),u;if(t){var p;let b=typeof t=="string"?ar(t):t;l==="/"||(p=b.pathname)!=null&&p.startsWith(l)||ye(!1),u=b}else u=c;let g=u.pathname||"/",d=g;if(l!=="/"){let b=l.replace(/^\//,"").split("/");d="/"+g.replace(/^\//,"").split("/").slice(b.length).join("/")}let y=E1(e,{pathname:d}),h=o2(y&&y.map(b=>Object.assign({},b,{params:Object.assign({},s,b.params),pathname:Ji([l,r.encodeLocation?r.encodeLocation(b.pathname).pathname:b.pathname]),pathnameBase:b.pathnameBase==="/"?l:Ji([l,r.encodeLocation?r.encodeLocation(b.pathnameBase).pathname:b.pathnameBase])})),o,i,n);return t&&h?x.createElement(rs.Provider,{value:{location:io({pathname:"/",search:"",hash:"",state:null,key:"default"},u),navigationType:yi.Pop}},h):h}function t2(){let e=c2(),t=Z1(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),i=e instanceof Error?e.stack:null,r={padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"};return x.createElement(x.Fragment,null,x.createElement("h2",null,"Unexpected Application
84Error!"),x.createElement("h3",{style:{fontStyle:"italic"}},t),i?x.createElement("pre",{style:r},i):null,null)}const i2=x.createElement(t2,null);class n2 extends x.Component{constructor(t){super(t),this.state={location:t.location,revalidation:t.revalidation,error:t.error}}static getDerivedStateFromError(t){return{error:t}}static getDerivedStateFromProps(t,i){return i.location!==t.location||i.revalidation!=="idle"&&t.revalidation==="idle"?{error:t.error,location:t.location,revalidation:t.revalidation}:{error:t.error!==void 0?t.error:i.error,location:i.location,revalidation:t.revalidation||i.revalidation}}componentDidCatch(t,i){console.error("React Router caught the following error during render",t,i)}render(){return this.state.error!==void 0?x.createElement(sr.Provider,{value:this.props.routeContext},x.createElement(dh.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function r2(e){let{routeContext:t,match:i,children:n}=e,r=x.useContext(dd);return r&&r.static&&r.staticContext&&(i.route.errorElement||i.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=i.route.id),x.createElement(sr.Provider,{value:t},n)}function o2(e,t,i,n){var r;if(t===void 0&&(t=[]),i===void 0&&(i=null),n===void 0&&(n=null),e==null){var o;if(!i)return null;if(i.errors)e=i.matches;else if((o=n)!=null&&o.v7_partialHydration&&t.length===0&&!i.initialized&&i.matches.length>0)e=i.matches;else return null}let a=e,s=(r=i)==null?void 0:r.errors;if(s!=null){let u=a.findIndex(p=>p.route.id&&(s==null?void 0:s[p.route.id])!==void 0);u>=0||ye(!1),a=a.slice(0,Math.min(a.length,u+1))}let l=!1,c=-1;if(i&&n&&n.v7_partialHydration)for(let u=0;u<a.length;u++){let p=a[u];if((p.route.HydrateFallback||p.route.hydrateFallbackElement)&&(c=u),p.route.id){let{loaderData:g,errors:d}=i,y=p.route.loader&&g[p.route.id]===void 0&&(!d||d[p.route.id]===void 0);if(p.route.lazy||y){l=!0,c>=0?a=a.slice(0,c+1):a=[a[0]];break}}}return a.reduceRight((u,p,g)=>{let d,y=!1,h=null,b=null;i&&(d=s&&p.route.id?s[p.route.id]:void 0,h=p.route.errorElement||i2,l&&(c<0&&g===0?(y=!0,b=null):c===g&&(y=!0,b=p.route.hydrateFallbackElement||null)));let m=t.concat(a.slice(0,g+1)),f=()=>{let v;return d?v=h:y?v=b:p.route.Component?v=x.createElement(p.route.Component,null):p.route.element?v=p.route.element:v=u,x.createElement(r2,{match:p,routeContext:{outlet:u,matches:m,isDataRoute:i!=null},children:v})};return i&&(p.route.ErrorBoundary||p.route.errorElement||g===0)?x.createElement(n2,{location:i.location,revalidation:i.revalidation,component:h,error:d,children:f(),routeContext:{outlet:null,matches:m,isDataRoute:!0}}):f()},null)}var ph=function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e}(ph||{}),Pa=function(e){return e.UseBlocker="useBlocker",e.UseLoaderData="useLoaderData",e.UseActionData="useActionData",e.UseRouteError="useRouteError",e.UseNavigation="useNavigation",e.UseRouteLoaderData="useRouteLoaderData",e.UseMatches="useMatches",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e.UseRouteId="useRouteId",e}(Pa||{});function a2(e){let t=x.useContext(dd);return t||ye(!1),t}function s2(e){let t=x.useContext(X1);return t||ye(!1),t}function l2(e){let t=x.useContext(sr);return t||ye(!1),t}function gh(e){let t=l2(),i=t.matches[t.matches.length-1];return i.route.id||ye(!1),i.route.id}function c2(){var e;let t=x.useContext(dh),i=s2(Pa.UseRouteError),n=gh(Pa.UseRouteError);return t!==void 0?t:(e=i.errors)==null?void 0:e[n]}function d2(){let{router:e}=a2(ph.UseNavigateStable),t=gh(Pa.UseNavigateStable),i=x.useRef(!1);return uh(()=>{i.current=!0}),x.useCallback(function(r,o){o===void 0&&(o={}),i.current&&(typeof r=="number"?e.navigate(r):e.navigate(r,io({fromRouteId:t},o)))},[e,t])}function u2(e,t){e==null||e.v7_startTransition,e==null||e.v7_relativeSplatPath}function et(e){ye(!1)}function p2(e){let{basename:t="/",children:i=null,location:n,navigationType:r=yi.Pop,navigator:o,static:a=!1,future:s}=e;os()&&ye(!1);let l=t.replace(/^\/*/,"/"),c=x.useMemo(()=>({basename:l,navigator:o,static:a,future:io({v7_relativeSplatPath:!1},s)}),[l,s,o,a]);typeof n=="string"&&(n=ar(n));
84let{pathname:u="/",search:p="",hash:g="",state:d=null,key:y="default"}=n,h=x.useMemo(()=>{let b=lh(u,l);return b==null?null:{location:{pathname:b,search:p,hash:g,state:d,key:y},navigationType:r}},[l,u,p,g,d,y,r]);return h==null?null:x.createElement(ns.Provider,{value:c},x.createElement(rs.Provider,{children:i,value:h}))}function g2(e){let{children:t,location:i}=e;return J1(Yl(t),i)}new Promise(()=>{});function Yl(e,t){t===void 0&&(t=[]);let i=[];return x.Children.forEach(e,(n,r)=>{if(!x.isValidElement(n))return;let o=[...t,r];if(n.type===x.Fragment){i.push.apply(i,Yl(n.props.children,o));return}n.type!==et&&ye(!1),!n.props.index||!n.props.children||ye(!1);let a={id:n.props.id||o.join("-"),caseSensitive:n.props.caseSensitive,element:n.props.element,Component:n.props.Component,index:n.props.index,path:n.props.path,loader:n.props.loader,action:n.props.action,errorElement:n.props.errorElement,ErrorBoundary:n.props.ErrorBoundary,hasErrorBoundary:n.props.ErrorBoundary!=null||n.props.errorElement!=null,shouldRevalidate:n.props.shouldRevalidate,handle:n.props.handle,lazy:n.props.lazy};n.props.children&&(a.children=Yl(n.props.children,o)),i.push(a)}),i}/** 85 * React Router DOM v6.30.1 86 * 87 * Copyright (c) Remix Software Inc. 88 * 89 * This source code is licensed under the MIT license found in the 90 * LICENSE.md file in the root directory of this source tree. 91 * 92 * @license MIT 93 */const f2="6";try{window.__reactRouterVersion=f2}catch{}const m2="startTransition",lp=Pp[m2];function h2(e){let{basename:t,children:i,future:n,window:r}=e,o=x.useRef();o.current==null&&(o.current=A1({window:r,v5Compat:!0}));let a=o.current,[s,l]=x.useState({action:a.action,location:a.location}),{v7_startTransition:c}=n||{},u=x.useCallback(p=>{c&&lp?lp(()=>l(p)):l(p)},[l,c]);return x.useLayoutEffect(()=>a.listen(u),[a,u]),x.useEffect(()=>u2(n),[n]),x.createElement(p2,{basename:t,children:i,location:s.location,navigationType:s.action,navigator:a,future:n})}var cp;(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(cp||(cp={}));var dp;(function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"})(dp||(dp={}));const v2=()=>(as(),x.useEffect(()=>{let e=0;const t=3;function i(g){e=g;const d=document.getElementById("heroSliderTrack");d&&(d.style.transform="translateX(-"+g*100+"%)"),document.querySelectorAll(".cg-hero-slider-dot").forEach((h,b)=>h.classList.toggle("active",b===g))}function n(){i((e+1)%t)}function r(){i((e-1+t)%t)}function o(g){const d=document.getElementById(g);if(d){d.scrollIntoView({behavior:"smooth",block:"start"});const y=document.getElementById("cgMobileMenu");y&&y.classList.remove("open");const h=document.getElementById("cgBurger");h&&h.classList.remove("open")}}function a(){const g=document.getElementById("cgMobileMenu"),d=document.getElementById("cgBurger");g&&g.classList.toggle("open"),d&&d.classList.toggle("open")}window.cgSliderGoTo=i,window.cgSliderNext=n,window.cgSliderPrev=r,window.cgScrollTo=o,window.cgToggleMenu=a;let s=setInterval(n,4e3);const l=document.getElementById("heroSlider");l&&(l.addEventListener("mouseenter",()=>clearInterval(s)),l.addEventListener("mouseleave",()=>{s=setInterval(n,4e3)}));const c=25,u=document.getElementById("pubCount");if(u){let g=0;const d=Math.ceil(c/30),y=setInterval(()=>{g=Math.min(g+d,c),u.textContent=String(g),g>=c&&clearInterval(y)},50)}window.cgSwitchTab=function(g){document.querySelectorAll(".cg-desc-tab-btn").forEach(h=>h.classList.remove("active")),document.querySelectorAll(".cg-desc-tab-panel").forEach(h=>h.style.display="none");const d=document.querySelector('[data-tab="'+g+'"]'),y=document.getElementById("tab-"+g);d&&d.classList.add("active"),y&&(y.style.display="block")};function p(){const g=document.querySelector(".cg-institutional-bar"),d=document.querySelector(".cg-nav");g&&d&&(d.style.top=g.offsetHeight+"px")}return requestAnimationFrame(p),setTimeout(p,100),setTimeout(p,500),window.addEventListener("resize",p),window.addEventListener("load",p),()=>{clearInterval(s),window.removeEventListener("resize",p),window.removeEventListener("load",p),delete window.cgSliderGoTo,delete window.cgSliderNext,delete window.cgSliderPrev,delete window.cgScrollTo,delete window.cgSwitchTab}},[]),I.jsx("div",{dangerouslySetInnerHTML:{__html:` 94<style> 95.cg-root *, .cg-root *::before, .cg-root *::after { margin: 0; padding: 0; box-sizing: border-box; } 96.cg-root { 97 font-family: Calibri, 'Segoe UI', sans-serif; 98 color: #3a3a4a; 99 line-height: 1.6; 100 background: #FAF8F2; 101} 102body { overflow-x: hidden; } 103.cg-root img { max-width: 100%; } 104 105/* âââ NAV âââ */ 106.cg-nav { 107 position: fixed; top: 92px; left: 0; right: 0; z-index: 100; 108 background: rgba(255,255,255,0.92); 109 backdrop-filter: blur(16px); 110 padding: 18px 60px; 111 display: flex; align-items: center; justify-content: space-between; 112 border-bottom: 1px solid rgba(0,0,0,0.06); 113 box-shadow: 0 2px 20px rgba(0,0,0,0.04); 114} 115.cg-nav-logo { 116 display: flex; align-items: center; 117} 118.cg-nav-logo img { height: 56px; object-fit: contain; margin-right: 16px; } 119.cg-nav-links { display: flex; gap: 32px; list-style: none; } 120 121/* âââ INSTITUTIONAL BAR âââ */ 122.cg-institutional-bar { 123 position: fixed; top: 0; left: 0; right: 0; z-index: 101; 124 background: #2A65AF; 125 display: flex; align-items: center; justify-content: center; 126 gap: 28px; padding: 14px 40px; 127 border-bottom: 1px solid rgba(0,0,0,0.08); 128 flex-wrap: wrap; 129} 130.cg-institutional-bar img { height: 64px; object-fit: contain; flex-shrink: 0; } 131.cg-institutional-bar .cg-inst-divider { 132 width: 1px; height: 48px; background: rgba(255,255,255,0.3); flex-shrink: 0; 133} 134.cg-nav-links a { 135 color: #555; text-decoration: none; font-size: 0.82rem; 136 font-weight: 600; letter-spacing: 1.5px; text-transform: uppercase; 137 transition: color 0.3s; position: relative; cursor: pointer; 138} 139.cg-nav-links a:hover { color: #8B7535; } 140.cg-nav-links a::after {
141 content:''; position: absolute; bottom: -6px; left: 0; width: 0; height: 2px; 142 background: #8B7535; transition: width 0.3s; 143} 144.cg-nav-links a:hover::after { width: 100%; } 145 146/* âââ HAMBURGER âââ */ 147.cg-burger { 148 display: none; flex-direction: column; gap: 5px; cursor: pointer; 149 padding: 8px; z-index: 200; 150} 151.cg-burger span { 152 display: block; width: 24px; height: 2px; background: #3a3a4a; 153 transition: all 0.3s; border-radius: 2px; 154} 155.cg-burger.open span:nth-child(1) { transform: rotate(45deg) translate(5px, 5px); } 156.cg-burger.open span:nth-child(2) { opacity: 0; } 157.cg-burger.open span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); } 158 159/* âââ MOBILE MENU âââ */ 160.cg-mobile-menu { 161 display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; 162 background: #FAF8F2; z-index: 190; 163 flex-direction: column; align-items: center; justify-content: center; 164 gap: 24px; list-style: none; 165 overflow: hidden; 166} 167.cg-mobile-menu.open { display: flex; } 168.cg-mobile-menu a { 169 color: #3a3a4a; text-decoration: none; font-size: 1.1rem; 170 font-weight: 700; letter-spacing: 2px; text-transform: uppercase; 171 font-family: Calibri, 'Segoe UI', sans-serif; cursor: pointer; 172 transition: color 0.3s; 173} 174.cg-mobile-menu a:hover { color: #8B7535; } 175.cg-mobile-close { 176 position: absolute; top: 20px; right: 20px; 177 width: 40px; height: 40px; cursor: pointer; 178 display: flex; align-items: center; justify-content: center; 179 background: none; border: none; z-index: 200; 180} 181.cg-mobile-close::before, .cg-mobile-close::after { 182 content: ''; position: absolute; 183 width: 24px; height: 2px; background: #3a3a4a; border-radius: 2px; 184} 185.cg-mobile-close::before { transform: rotate(45deg); } 186.cg-mobile-close::after { transform: rotate(-45deg); } 187 188/* âââ HERO âââ */ 189.cg-hero { 190 min-height: auto; 191 background: linear-gradient(160deg, #FAF8F2 0%, #F5F0E6 40%, #EFE9DB 100%); 192 display: grid; grid-template-columns: 1fr 1fr; 193 align-items: center; 194 padding: 240px 60px 80px; 195 position: relative; overflow: hidden; 196} 197.cg-hero::before { 198 content: ''; position: absolute; top: 0; right: 0; 199 width: 55%; height: 100%; 200 background: linear-gradient(135deg, rgba(139,117,53,0.06), rgba(142,69,133,0.08)); 201 clip-path: polygon(15% 0, 100% 0, 100% 100%, 0 100%); 202} 203.cg-hero::after { 204 content: ''; position: absolute; top: 10%; right: 5%; 205 width: 500px; height: 500px; 206 background: radial-gradient(circle, rgba(139,117,53,0.08) 0%, transparent 60%); 207 border-radius: 50%; 208} 209.cg-hero-deco1 { 210 position: absolute; top: 15%; left: 3%; 211 width: 120px; height: 120px; 212 border: 2px solid rgba(139,117,53,0.12); 213 border-radius: 50%; 214 animation: cg-float 6s ease-in-out infinite; 215} 216.cg-hero-deco2 { 217 position: absolute; bottom: 20%; left: 8%; 218 width: 80px; height: 80px; 219 border: 2px solid rgba(142,69,133,0.12); 220 border-radius: 50%; 221 animation: cg-float 8s ease-in-out infinite reverse; 222} 223.cg-hero-deco3 { 224 position: absolute; top: 30%; right: 15%; 225 width: 60px; height: 60px; 226 background: rgba(139,117,53,0.06); 227 border-radius: 50%; 228 animation: cg-float 5s ease-in-out infinite; 229} 230@keyframes cg-float { 231 0%, 100% { transform: translateY(0); } 232 50% { transform: translateY(-20px); } 233} 234.cg-hero-content { position: relative; z-index: 2; max-width: 580px; } 235.cg-hero-badge { 236 display: inline-flex; align-items: center; gap: 8px; 237 background: rgba(139,117,53,0.1); 238 border: 1px solid rgba(139,117,53,0.2); 239 color: #8B7535; padding: 8px 20px; border-radius: 50px; 240 font-size: 0.72rem; font-weight: 700; letter-spacing: 2px; 241 text-transform: uppercase; margin-bottom: 28px; 242} 243.cg-hero-badge::before { 244 content: ''; width: 8px; height: 8px; 245 background: #8B7535; border-radius: 50%; 246 animation: cg-pulse 2s ease-in-out infinite; 247} 248@keyframes cg-pulse { 249 0%, 100% { opacity: 1; transform: scale(1); } 250 50% { opacity: 0.5; transform: scale(1.5); } 251} 252.cg-hero h1 { 253 font-family: Calibri, 'Segoe UI', sans-serif; 254 font-size: clamp(1.6rem, 2.8vw, 2.2rem); font-weight: 800; 255 color: #1a1a2e; letter-spacing: 0.5px; margin-bottom: 12px; 256 line-height: 1.3; text-transform: uppercase; 257} 258.cg-hero h1 span { color: #8B7535; } 259.cg-hero .cg-hero-project-name { 260 font-family: Calibri, 'Segoe UI', sans-serif; 261 font-size: clamp(3rem, 5.5vw, 5rem); font-weight: 900; 262 color: #1a1a2e; letter-spacing: 3px; margin-bottom: 24px; 263 line-height: 1.05; text-transform: uppercase; 264} 265.cg-hero .cg-hero-project-name span { color: #8B7535; } 266.cg-hero p { 267 font-size: 1.05rem; color: #666; 268 margin-bottom: 36px; font-weight: 400; line-height: 1.8; 269} 270.cg-hero-btns { display: flex; gap: 16px; flex-wrap: wrap; } 271.cg-btn { 272 display: inline-block; padding: 16px 36px; 273 background: #8B7535; color: #fff; 274 font-weight: 700; font-size: 0.82rem; 275 border-radius: 6px; text-decoration: none; 276 letter-spacing: 1.5px; text-transform: uppercase; 277 transition: all 0.3s; 278 border: none; cursor: pointer; 279} 280.cg-btn:hover { background: #756228; transform: translateY(-2px); box-shadow: 0 12px 30px rgba(139,117,53,0.25); } 281.cg-btn-outline { 282 display: inline-block; padding: 16px 36px; 283 background: transparent; color: #1a1a2e; 284 font-weight: 700; font-size: 0.82rem; 285 border-radius: 6px; text-decoration: none; 286 letter-spacing: 1.5px; text-transform: uppercase; 287 transition: all 0.3s; 288 border: 2px solid rgba(0,0,0,0.15); 289} 290.cg-btn-outline:hover { border-color: #8B7535; color: #8B7535; } 291 292.cg-hero-visual { 293 position: relative; z-index: 2; 294 display: flex; align-items: center; justify-content: center; 295} 296/* âââ HERO SLIDER âââ */ 297.cg-hero-slider { 298 width: 100%; max-width: 520px; 299 border-radius: 24px; 300 overflow: visible; 301 box-shadow: 0 30px 60px rgba(0,0,0,0.1); 302 position: relative; 303} 304.cg-hero-slider-track-wrapper { 305 overflow: hidden; 306 border-radius: 24px; 307} 308.cg-hero-slider-track { 309 display: flex; 310 transition: transform 0.6s ease; 311} 312.cg-hero-slide { 313 min-width: 100%; 314 position: relative; 315} 316.cg-hero-slide img { 317 width: 100%; aspect-ratio: 4/3; object-fit: cover; display: block; 318} 319.cg-hero-slide-label { 320 position: absolute; bottom: 0; left: 0; right: 0; 321 background: linear-gradient(transparent, rgba(0,0,0,0.7)); 322 padding: 40px 24px 20px; 323 color: #fff; 324 font-family: Calibri, 'Segoe UI', sans-serif; 325 font-size: 0.85rem; font-weight: 700; 326 letter-spacing: 1px; text-transform: uppercase; 327} 328.cg-hero-slider-dots { 329 position: absolute; bottom: 12px; left: 50%; 330 transform: translateX(-50%); 331 display: flex; gap: 8px; z-index: 5; 332} 333.cg-hero-slider-dot { 334 width: 10px; height: 10px; border-radius: 50%; 335 background: rgba(255,255,255,0.5); border: none; 336 cursor: pointer; transition: background 0.3s; 337} 338.cg-hero-slider-dot.active { background: #8B7535; } 339.cg-hero-slider-arrows { 340 position: absolute; top: 50%; left: 0; right: 0; 341 display: flex; justify-content: space-between; 342 transform: translateY(-50%); z-index: 5; padding: 0 12px; 343} 344.cg-hero-slider-arrow { 345 width: 36px; height: 36px; border-radius: 50%; 346 background: rgba(255,255,255,0.8); border: none; 347 cursor: pointer; font-size: 1.2rem; color: #333; 348 display: flex; align-items: center; justify-content: center; 349 transition: background 0.3s; 350} 351.cg-hero-slider-arrow:hover { background: #fff; } 352 353.cg-hero-float-box { 354 position: absolute; bottom: -30px; right: -20px; 355 background: white; 356 border-radius: 16px; padding: 20px 24px; 357 box-shadow: 0 20px 50px rgba(0,0,0,0.12); 358 border: 1px solid rgba(0,0,0,0.05); 359 max-width: 240px; z-index: 10; 360} 361.cg-hero-float-box h4 {
362 font-family: Calibri, 'Segoe UI', sans-serif; 363 font-size: 0.85rem; font-weight: 700; color: #8E4585; 364 text-transform: uppercase; letter-spacing: 1px; margin-bottom: 10px; 365} 366.cg-hero-float-box ul { list-style: none; } 367.cg-hero-float-box li { 368 padding: 5px 0; padding-left: 18px; position: relative; 369 color: #555; font-size: 0.8rem; 370} 371.cg-hero-float-box li::before { 372 content: ''; position: absolute; left: 0; top: 50%; 373 width: 8px; height: 8px; border-radius: 2px; 374 background: #8B7535; transform: translateY(-50%) rotate(45deg); 375} 376 377/* âââ SERVICES CARDS (overlapping hero) âââ */ 378.cg-services-bar { 379 position: relative; z-index: 10; 380 margin-top: -60px; 381 padding: 0 60px; 382 display: grid; grid-template-columns: repeat(4, 1fr); 383 gap: 0; 384} 385.cg-service-card { 386 background: #fff; 387 padding: 40px 28px; 388 border: 1px solid rgba(0,0,0,0.06); 389 transition: all 0.4s; 390 position: relative; 391 overflow: hidden; 392} 393.cg-service-card::before { 394 content: ''; position: absolute; top: 0; left: 0; right: 0; 395 height: 3px; background: #8B7535; 396 transform: scaleX(0); transition: transform 0.4s; transform-origin: left; 397} 398.cg-service-card:hover { transform: translateY(-8px); box-shadow: 0 20px 40px rgba(0,0,0,0.08); } 399.cg-service-card:hover::before { transform: scaleX(1); } 400.cg-service-img { 401 width: 100%; height: 120px; object-fit: cover; 402 border-radius: 10px; margin-bottom: 18px; 403} 404.cg-service-card h3 { 405 font-family: Calibri, 'Segoe UI', sans-serif; 406 font-size: 0.95rem; font-weight: 700; color: #1a1a2e; 407 text-transform: uppercase; letter-spacing: 1px; margin-bottom: 12px; 408} 409.cg-service-card p { font-size: 0.85rem; color: #888; line-height: 1.7; } 410 411/* âââ SECTION COMMON âââ */ 412.cg-section { padding: 100px 60px; max-width: 1400px; margin: 0 auto; } 413.cg-section-full { padding: 100px 60px; } 414.cg-section-header { margin-bottom: 60px; } 415.cg-section-label { 416 font-size: 0.72rem; font-weight: 700; color: #8B7535; 417 letter-spacing: 3px; text-transform: uppercase; margin-bottom: 14px; 418 display: flex; align-items: center; gap: 10px; 419} 420.cg-section-label::before { 421 content: ''; width: 30px; height: 2px; background: #8B7535; 422} 423.cg-section-title { 424 font-family: Calibri, 'Segoe UI', sans-serif; 425 font-size: clamp(1.8rem, 3vw, 2.8rem); font-weight: 800; 426 margin-bottom: 16px; color: #1a1a2e; 427 text-transform: uppercase; letter-spacing: 1px; line-height: 1.15; 428} 429.cg-section-subtitle { 430 font-size: 1rem; color: #777; max-width: 600px; 431 line-height: 1.8; margin: 0 auto; 432} 433 434/* âââ PROGETTO (About section) âââ */ 435.cg-about { background: #fff; } 436.cg-about-inner { 437 max-width: 1400px; margin: 0 auto; 438 display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; 439} 440.cg-about-text p { 441 color: #666; line-height: 1.9; margin-bottom: 20px; font-size: 1rem; 442} 443.cg-about-features { margin-top: 32px; } 444.cg-about-feature { 445 display: flex; gap: 16px; align-items: flex-start; 446 padding: 16px 0; 447 border-bottom: 1px solid rgba(0,0,0,0.06); 448} 449.cg-about-feature-icon { 450 width: 44px; height: 44px; flex-shrink: 0; 451 background: rgba(139,117,53,0.08); 452 border-radius: 10px; 453 display: flex; align-items: center; justify-content: center; 454 overflow: hidden; 455} 456.cg-about-feature-icon img { width: 100%; height: 100%; object-fit: cover; border-radius: 10px; } 457.cg-about-feature h4 { 458 font-family: Calibri, 'Segoe UI', sans-serif; 459 font-size: 0.95rem; font-weight: 700; color: #1a1a2e; 460 text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 4px; 461} 462.cg-about-feature p { font-size: 0.85rem; color: #888; margin: 0; line-height: 1.5; } 463 464.cg-about-image { 465 position: relative; 466 border-radius: 20px; overflow: visible; 467} 468.cg-about-image-main { 469 width: 100%; border-radius: 20px; overflow: hidden; 470 box-shadow: 0 20px 50px rgba(0,0,0,0.08); 471} 472.cg-about-image-main img { 473 width: 100%; aspect-ratio: 4/3; object-fit: cover; display: block; 474} 475 476/* âââ STATS âââ */ 477.cg-stats-section { 478 background: linear-gradient(135deg, #8E4585, #8B7535); 479 padding: 60px; 480} 481.cg-stats-inner { 482 max-width: 1400px; margin: 0 auto; 483 display: grid; grid-template-columns: repeat(4, 1fr); gap: 40px; 484} 485.cg-stat { text-align: center; } 486.cg-stat-num { 487 font-family: Calibri, 'Segoe UI', sans-serif; 488 font-size: 3rem; font-weight: 900; color: #fff; 489} 490.cg-stat-label { 491 font-size: 0.8rem; color: rgba(255,255,255,0.85); 492 font-weight: 600; letter-spacing: 1.5px; text-transform: uppercase; 493 margin-top: 4px; 494} 495 496/* âââ OBIETTIVI (Objectives) âââ */ 497.cg-objectives { background: #FAF8F2; } 498.cg-objectives-layout { 499 max-width: 1200px; margin: 0 auto; 500 position: relative; 501 display: flex; flex-direction: column; align-items: center; gap: 40px; 502} 503.cg-objectives-center { 504 width: 220px; height: 220px; 505 border-radius: 50%; 506 display: flex; align-items: center; justify-content: center; 507 overflow: hidden; 508 box-shadow: 0 20px 50px rgba(139,117,53,0.25); 509} 510.cg-objectives-center img { 511 width: 100%; height: 100%; object-fit: cover; 512} 513.cg-objectives-grid { 514 display: grid; grid-template-columns: 1fr 1fr; 515 gap: 20px; width: 100%; 516} 517.cg-objective-card { 518 background: #fff; 519 border-radius: 16px; 520 padding: 28px 24px; 521 border: 1px solid rgba(0,0,0,0.06); 522 transition: all 0.3s; 523 display: flex; gap: 16px; align-items: flex-start; 524} 525.cg-objective-card:hover { box-shadow: 0 10px 30px rgba(0,0,0,0.06); transform: translateY(-4px); } 526.cg-objective-card:last-child { grid-column: 1 / -1; max-width: 50%; justify-self: center; } 527.cg-objective-icon { 528 flex-shrink: 0; 529 width: 42px; height: 42px; 530 background: linear-gradient(135deg, rgba(139,117,53,0.1), rgba(142,69,133,0.1)); 531 border-radius: 12px; 532 display: flex; align-items: center; justify-content: center; 533 color: #8B7535; 534} 535.cg-objective-icon svg { 536 width: 22px; height: 22px; stroke: currentColor; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; 537} 538.cg-objective-card p { 539 font-size: 0.9rem; color: #555; line-height: 1.7; 540} 541 542/* âââ TEAM âââ */ 543.cg-team { background: #fff; } 544.cg-team-group-photo { 545 max-width: 900px; margin: 40px auto 0; border-radius: 20px; overflow: hidden; 546 box-shadow: 0 20px 50px rgba(0,0,0,0.08); 547} 548.cg-team-group-photo img { 549 width: 100%; display: block; object-fit: cover; 550} 551 552/* âââ RESEARCH UNITS âââ */ 553.cg-units-grid { 554 display: grid; grid-template-columns: repeat(3, 1fr); 555 gap: 24px; max-width: 1200px; margin: 40px auto 0; 556 padding: 0 60px; 557} 558.cg-unit-card { 559 background: #FAF8F2; 560 border-radius: 16px; 561 padding: 40px 28px; 562 text-align: center; 563 border: 1px solid rgba(0,0,0,0.06); 564 transition: all 0.4s; 565 cursor: pointer; 566} 567.cg-unit-card:hover { transform: translateY(-6px); box-shadow: 0 15px 30px rgba(0,0,0,0.08); border-color: rgba(139,117,53,0.2); } 568.cg-unit-logo { 569 width: 140px; height: 140px; 570 border-radius: 50%; 571 object-fit: contain; 572 margin: 0 auto 20px; 573 background: #fff; 574 padding: 12px; 575 box-shadow: 0 4px 12px rgba(0,0,0,0.06); 576} 577.cg-unit-card h3 { 578 font-family: Calibri, 'Segoe UI', sans-serif; 579 font-size: 0.95rem; font-weight: 700; color: #1a1a2e; 580 text-transform: uppercase; letter-spacing: 0.5px; 581} 582.cg-unit-card p { 583 font-size: 0.82rem; color: #888; margin-top: 8px; line-height: 1.6; 584} 585.cg-unit-pi { 586 font-size: 0.78rem; color: #8B7535; font-weight: 600; margin-top: 6px; 587} 588 589/* âââ RICERCA (Lab Services style) âââ */ 590.cg-research { background: #FAF8F2; } 591.cg-research-inner { 592 max-width: 1400px; margin: 0 auto; 593 display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; 594} 595.cg-research-visual { 596 border-radius: 20px; 597 overflow: hidden; 598 box-shadow: 0 20px 50px rgba(0,0,0,0.08); 599} 600.cg-research-visual img { 601 width: 100%; aspect-ratio: 4/3; object-fit: cover; display: block; 602} 603.cg-research-text h3 { 604 font-family: Calibri, 'Segoe UI', sans-serif; 605 font-size: 1.6rem; font-weight: 800; color: #1a1a2e; 606 text-transform: uppercase; letter-spacing: 1px; margin-bottom: 20px; 607} 608.cg-research-text p { color: #666; line-height: 1.9; margin-bottom: 16px; font-size: 1rem; } 609.cg-research-tags { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 28px; } 610.cg-research-tag { 611 padding: 8px 18px; 612 background: rgba(139,117,53,0.08); 613 border: 1px solid rgba(139,117,53,0.15); 614 color: #8B7535; border-radius: 6px; 615 font-size: 0.78rem; font-weight: 700; 616 letter-spacing: 0.5px; text-transform: uppercase; 617} 618 619/* âââ TIMELINE (Roadmap) âââ */ 620.cg-roadmap { background: #fff; }
621.cg-roadmap-grid { 622 display: grid; grid-template-columns: repeat(4, 1fr); 623 gap: 24px; max-width: 1400px; margin: 0 auto; 624} 625.cg-roadmap-item { 626 background: #FAF8F2; 627 border-radius: 16px; 628 padding: 36px 28px; 629 border: 1px solid rgba(0,0,0,0.04); 630 transition: all 0.4s; 631 position: relative; overflow: hidden; 632} 633.cg-roadmap-item::before { 634 content: ''; position: absolute; top: 0; left: 0; 635 width: 4px; height: 100%; 636 background: linear-gradient(180deg, #8B7535, #8E4585); 637 opacity: 0; transition: opacity 0.3s; 638} 639.cg-roadmap-item:hover { transform: translateY(-6px); box-shadow: 0 15px 30px rgba(0,0,0,0.06); } 640.cg-roadmap-item:hover::before { opacity: 1; } 641.cg-roadmap-num { 642 font-family: Calibri, 'Segoe UI', sans-serif; 643 font-size: 2.5rem; font-weight: 900; color: rgba(139,117,53,0.15); 644 margin-bottom: 16px; line-height: 1; 645} 646.cg-roadmap-item h3 { 647 font-family: Calibri, 'Segoe UI', sans-serif; 648 font-size: 1rem; font-weight: 700; color: #1a1a2e; 649 text-transform: uppercase; letter-spacing: 0.5px; 650 margin-bottom: 12px; 651} 652.cg-roadmap-item p { font-size: 0.85rem; color: #888; line-height: 1.7; } 653.cg-roadmap-steps { list-style: none; margin-top: 12px; } 654.cg-roadmap-steps li { 655 font-size: 0.8rem; color: #666; line-height: 1.6; 656 padding: 4px 0 4px 16px; position: relative; 657} 658.cg-roadmap-steps li::before { 659 content: ''; position: absolute; left: 0; top: 11px; 660 width: 6px; height: 6px; background: #8B7535; 661 border-radius: 50%; 662} 663 664/* âââ CONTATTI âââ */ 665.cg-contact { 666 background: #fff; 667 text-align: center; 668} 669.cg-contact-inner { max-width: 700px; margin: 0 auto; } 670.cg-contact p { color: #666; font-size: 1.05rem; line-height: 1.8; margin-bottom: 20px; } 671.cg-contact-uni { 672 font-family: Calibri, 'Segoe UI', sans-serif; 673 font-size: 1.15rem; font-weight: 700; color: #1a1a2e; 674 margin-bottom: 4px; 675} 676.cg-contact-loc { font-size: 0.9rem; color: #999; margin-bottom: 24px; } 677.cg-contact-email { 678 display: inline-block; font-size: 1.3rem; font-weight: 700; 679 color: #8B7535; text-decoration: none; margin-bottom: 32px; 680 transition: opacity 0.3s; 681} 682.cg-contact-email:hover { opacity: 0.8; } 683 684/* âââ INSTITUTIONAL LOGOS âââ */ 685.cg-institutional { 686 display: flex; align-items: center; justify-content: center; 687 gap: 32px; flex-wrap: wrap; margin-top: 40px; 688 padding: 24px; 689 background: rgba(0,0,0,0.02); 690 border-radius: 12px; 691} 692.cg-institutional img { 693 height: 50px; object-fit: contain; 694} 695.cg-institutional-text { 696 font-size: 0.72rem; color: #999; 697 text-align: center; margin-top: 12px; 698 line-height: 1.6; 699} 700 701/* âââ CONFERENCES / DISSEMINATION âââ */ 702.cg-conferences { 703 background: #FAF8F2; 704} 705.cg-conf-cta { 706 text-align: center; margin-top: 40px; 707} 708.cg-conf-cta a { 709 display: inline-block; padding: 14px 36px; 710 background: linear-gradient(135deg, #8B7535, #D4A017); 711 color: #fff; font-weight: 700; font-size: 0.9rem; 712 text-decoration: none; border-radius: 50px; 713 letter-spacing: 1px; text-transform: uppercase; 714 transition: transform 0.3s, box-shadow 0.3s; 715} 716.cg-conf-cta a:hover { 717 transform: translateY(-2px); box-shadow: 0 8px 24px rgba(139,117,53,0.3); 718} 719.cg-conf-list { max-width: 900px; margin: 0 auto; } 720.cg-conf-item { 721 padding: 28px 0; 722 border-bottom: 1px solid rgba(139,117,53,0.12); 723} 724.cg-conf-item:last-child { border-bottom: none; } 725.cg-conf-event { 726 font-family: Calibri, 'Segoe UI', sans-serif; 727 font-size: 1.05rem; font-weight: 700; color: #1a1a2e; 728 margin-bottom: 4px; line-height: 1.4; 729} 730.cg-conf-details { 731 font-size: 0.82rem; color: #8B7535; font-weight: 600; 732 margin-bottom: 8px; 733} 734.cg-conf-type { 735 display: inline-block; 736 font-size: 0.7rem; font-weight: 700; text-transform: uppercase; 737 letter-spacing: 1px; 738 padding: 3px 10px; border-radius: 20px; 739 margin-bottom: 8px; 740} 741.cg-conf-type-oral { background: rgba(142,69,133,0.12); color: #8E4585; } 742.cg-conf-type-poster { background: rgba(139,117,53,0.12); color: #8B7535; } 743.cg-conf-authors { 744 font-size: 0.82rem; color: #777; line-height: 1.5; 745} 746.cg-conf-title-text { 747 font-style: italic; color: #555; font-size: 0.88rem; 748 margin-top: 4px; 749} 750 751/* âââ WORKSHOPS âââ */ 752.cg-workshops-placeholder { 753 max-width: 900px; margin: 0 auto; 754 padding: 40px; text-align: center; 755 background: rgba(139,117,53,0.04); 756 border: 1px dashed rgba(139,117,53,0.2); 757 border-radius: 16px; 758 color: #999; font-size: 0.95rem; 759} 760 761/* âââ FOOTER âââ */ 762.cg-footer { 763 background: #2A65AF; 764 text-align: center; padding: 40px 24px; 765 font-size: 0.82rem; color: rgba(255,255,255,0.7); 766} 767.cg-footer a { color: #fff; text-decoration: none; font-weight: 600; } 768.cg-footer-logos { 769 display: flex; align-items: center; justify-content: center; 770 gap: 24px; margin-bottom: 20px; flex-wrap: wrap; 771} 772.cg-footer-logos img { height: 56px; object-fit: contain; } 773.cg-footer-funding { 774 font-size: 0.72rem; color: rgba(255,255,255,0.6); 775 margin-top: 12px; line-height: 1.6; 776 max-width: 700px; margin-left: auto; margin-right: auto; 777} 778 779/* âââ PROJECT DESCRIPTION TABS âââ */ 780.cg-desc-section { background: #FAF8F2; } 781.cg-desc-tabs { 782 display: flex; gap: 0; border-bottom: 2px solid rgba(0,0,0,0.08); margin-bottom: 32px; 783} 784.cg-desc-tab-btn { 785 padding: 14px 28px; border: none; background: none; cursor: pointer; 786 font-family: Calibri, 'Segoe UI', sans-serif; 787 font-size: 0.82rem; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; 788 color: #888; position: relative; transition: color 0.3s; 789} 790.cg-desc-tab-btn::after {
791 content: ''; position: absolute; bottom: -2px; left: 0; right: 0; 792 height: 3px; background: #8B7535; transform: scaleX(0); transition: transform 0.3s; 793} 794.cg-desc-tab-btn:hover { color: #555; } 795.cg-desc-tab-btn.active { color: #8B7535; } 796.cg-desc-tab-btn.active::after { transform: scaleX(1); } 797.cg-desc-tab-panel { display: none; } 798.cg-desc-tab-panel p { font-size: 0.95rem; color: #555; line-height: 1.9; margin-bottom: 16px; } 799.cg-desc-tab-panel strong { color: #1a1a2e; } 800.cg-desc-ru-list { list-style: none; margin: 16px 0; } 801.cg-desc-ru-list li { 802 padding: 12px 0 12px 20px; position: relative; 803 font-size: 0.92rem; color: #555; line-height: 1.6; 804 border-bottom: 1px solid rgba(0,0,0,0.04); 805} 806.cg-desc-ru-list li::before { 807 content: ''; position: absolute; left: 0; top: 18px; 808 width: 8px; height: 8px; background: #8B7535; border-radius: 2px; transform: rotate(45deg); 809} 810.cg-desc-results-grid { 811 display: grid; grid-template-columns: 1fr; gap: 16px; counter-reset: result; 812} 813.cg-desc-result { 814 display: flex; gap: 16px; align-items: flex-start; 815 padding: 16px 20px; background: #fff; border-radius: 12px; 816 border: 1px solid rgba(0,0,0,0.06); 817} 818.cg-desc-result-num { 819 flex-shrink: 0; width: 36px; height: 36px; 820 background: rgba(139,117,53,0.1); border-radius: 10px; 821 display: flex; align-items: center; justify-content: center; 822 font-family: Calibri, 'Segoe UI', sans-serif; 823 font-size: 0.85rem; font-weight: 800; color: #8B7535; 824} 825.cg-desc-result p { font-size: 0.88rem; color: #555; line-height: 1.7; margin: 0; } 826 827/* âââ RESPONSIVE âââ */ 828@media (max-width: 1024px) { 829 .cg-hide-mobile { display: none !important; } 830 .cg-hero { grid-template-columns: 1fr; padding: 180px 40px 80px; } 831 .cg-hero-visual { display: none; } 832 .cg-services-bar { grid-template-columns: repeat(2, 1fr); padding: 0 40px; } 833 .cg-about-inner, .cg-research-inner { grid-template-columns: 1fr; gap: 40px; } 834 .cg-objectives-grid { grid-template-columns: 1fr; } 835 .cg-objective-card:last-child { max-width: 100%; }
836 .cg-roadmap-grid { grid-template-columns: repeat(2, 1fr); } 837 .cg-stats-inner { grid-template-columns: repeat(2, 1fr); } 838 .cg-units-grid { grid-template-columns: 1fr; padding: 0 40px; } 839 .cg-nav { padding: 16px 24px; } 840 .cg-nav-links { display: none; } 841 .cg-burger { display: flex; } 842 .cg-section, .cg-section-full { padding: 80px 40px; } 843 .cg-institutional-bar { padding: 10px 20px; gap: 14px; } 844 .cg-institutional-bar img { height: 44px; } 845 .cg-institutional-bar .cg-inst-divider { height: 32px; } 846 .cg-conf-list { padding: 0 20px; } 847} 848@media (max-width: 640px) { 849 .cg-services-bar { grid-template-columns: 1fr; margin-top: -30px; } 850 .cg-objectives-grid { grid-template-columns: 1fr; } 851 .cg-roadmap-grid { grid-template-columns: 1fr; padding: 0 10px !important; } 852 .cg-stats-inner { grid-template-columns: 1fr; gap: 24px; } 853 .cg-hero { padding: 200px 10px 50px; text-align: center; } 854 .cg-hero p { text-align: center; } 855 .cg-hero-btns { justify-content: center; } 856 .cg-btn, .cg-btn-outline { width: 100%; text-align: center; padding: 14px 20px; } 857 .cg-section, .cg-section-full { padding: 50px 10px; text-align: center; } 858 .cg-about-inner { padding: 0 10px !important; } 859 .cg-section-full > div { padding-left: 10px !important; padding-right: 10px !important; }
860 .cg-roadmap-grid { padding: 0 10px !important; } 861 .cg-services-bar { padding: 0 10px; } 862 .cg-units-grid { padding: 0 10px; } 863 .cg-institutional-bar { padding: 8px 6px; gap: 8px; justify-content: space-between; flex-wrap: nowrap; } 864 .cg-institutional-bar img { height: 32px !important; flex-shrink: 1; min-width: 0; object-fit: contain; } 865 .cg-institutional-bar .cg-logo-italiadomani { height: 58px !important; } 866 .cg-institutional-bar .cg-inst-divider { display: flex; height: 28px; background: rgba(255,255,255,0.3); width: 1px; flex-shrink: 0; } 867 868 .cg-hero-project-name { font-size: 2rem !important; } 869 .cg-section-title { font-size: 1.6rem; text-align: center; } 870 .cg-footer-logos img { height: 40px; } 871 .cg-conf-event { font-size: 0.92rem; } 872 .cg-objectives-layout { padding: 0 10px !important; } 873 .cg-objective-card { padding: 16px !important; text-align: center; } 874 .cg-objective-card:last-child { max-width: 100% !important; } 875 .cg-roadmap-item { padding: 20px 16px; text-align: center; } 876 .cg-conf-item { padding: 16px 0; text-align: center; } 877 .cg-conf-list { padding: 0 4px !important; } 878 .cg-research-inner { padding: 0 10px !important; text-align: center; } 879 .cg-footer { padding: 30px 10px; } 880 .cg-footer-logos { gap: 12px; } 881 .cg-footer-logos img { height: 32px; } 882 .cg-about-text { text-align: center; } 883 .cg-about-inner p { text-align: center; } 884} 885</style> 886 887<div class="cg-root"> 888 889<!-- INSTITUTIONAL BAR (logo firma con logo ente beneficiario â secondo tipo MUR) --> 890<div class="cg-institutional-bar"> 891 <img src="/images/footer-eu-white.png" alt="Finanziato dall'Unione europea - NextGenerationEU" style="height:56px;" /> 892 <div class="cg-inst-divider"></div> 893 <img src="/images/footer-mur-white.png" alt="Ministero dell'Università e della Ricerca" style="height:42px;" /> 894 <div class="cg-inst-divider"></div> 895 <img src="/images/footer-italiadomani-white.png" alt="Italia Domani - Piano Nazionale di Ripresa e Resilienza" style="height:72px;" class="cg-logo-italiadomani" /> 896 <div class="cg-inst-divider cg-hide-mobile"></div> 897 <img src="/images/logo-uda.png" alt="UdA - Università G. d'Annunzio" style="height:80px;" class="cg-hide-mobile" /> 898 <img src="/images/logo-unime-white.png" alt="UNIME" style="height:76px;" class="cg-hide-mobile" /> 899 <img src="/images/logo-uniba.png" alt="UNIBA" style="height:80px;" class="cg-hide-mobile" /> 900</div> 901 902<nav class="cg-nav"> 903 <div class="cg-nav-logo"><img src="/images/logo-circulagris.png" alt="CIRCULAGRIS" /></div> 904 <ul class="cg-nav-links"> 905 <li><a onclick="cgScrollTo('progetto')">Project</a></li> 906 <li><a onclick="cgScrollTo('obiettivi')">Objectives</a></li> 907 <li><a onclick="cgScrollTo('roadmap')">Roadmap</a></li> 908 <li><a onclick="cgScrollTo('ricerca')">Research Results</a></li> 909 <li><a onclick="cgScrollTo('team')" style="cursor:pointer">Researchers</a></li> 910 <li><a href="https://www.circulagris.com/workshops/" target="_top" style="cursor:pointer">Workshops</a></li> 911 <li><a href="https://www.circulagris.com/conferences/" target="_top" style="cursor:pointer">Conferences</a></li> 912 <li><a href="https://www.circulagris.com/publications/" target="_top" style="cursor:pointer">Publications</a></li> 913 <li><a onclick="cgScrollTo('contatti')">Contact</a></li> 914 <li class="cg-lang-switch"><a href="https://www.circulagris.com/home-ita/" target="_top" style="background:#8B7535;color:#fff !important;padding:6px 14px;border-radius:20px;font-weight:700;cursor:pointer;">IT</a></li> 915 </ul> 916 <div class="cg-burger" id="cgBurger" onclick="cgToggleMenu()"> 917 <span></span><span></span><span></span> 918 </div> 919</nav> 920 921<!-- MOBILE MENU --> 922<ul class="cg-mobile-menu" id="cgMobileMenu"> 923 <button class="cg-mobile-close" onclick="cgToggleMenu()" aria-label="Close menu"></button> 924 <li><a onclick="cgScrollTo('progetto')">Project</a></li> 925 <li><a onclick="cgScrollTo('obiettivi')">Objectives</a></li> 926 927 <li><a onclick="cgScrollTo('roadmap')">Roadmap</a></li> 928 <li><a onclick="cgScrollTo('ricerca')">Research Results</a></li> 929 <li><a onclick="cgScrollTo('team')" style="cursor:pointer">Researchers</a></li> 930 <li>
930<a href="https://www.circulagris.com/workshops/" target="_top" style="cursor:pointer">Workshops</a></li> 931 <li><a href="https://www.circulagris.com/conferences/" target="_top" style="cursor:pointer">Conferences</a></li> 932 <li><a href="https://www.circulagris.com/publications/" target="_top" style="cursor:pointer">Publications</a></li> 933 <li><a onclick="cgScrollTo('contatti')">Contact</a></li> 934 <li class="cg-lang-switch"><a href="https://www.circulagris.com/home-ita/" target="_top" style="background:#8B7535;color:#fff !important;padding:6px 14px;border-radius:20px;font-weight:700;cursor:pointer;">IT</a></li> 935</ul> 936 937<!-- HERO --> 938<section class="cg-hero"> 939 <div class="cg-hero-deco1"></div> 940 <div class="cg-hero-deco2"></div> 941 <div class="cg-hero-deco3"></div> 942 <div class="cg-hero-content"> 943 <div class="cg-hero-badge">PRIN 2022 Project</div> 944 <h1>Towards Circular and Sustainable Agri-food Systems: Metrics for Assessment</h1> 945 <div class="cg-hero-project-name" style="font-family: Calibri, 'Segoe UI', sans-serif; font-size: clamp(3rem, 5.5vw, 5rem); font-weight: 900; color: #8B7535; letter-spacing: 3px; text-transform: uppercase; line-height: 1.05; margin-bottom: 24px;">CIRCULAGRIS</div> 946 <p>Circularity and sustainability in agri-food systems: integrated assessment of wine, olive oil and bread/pasta supply chains through Life Cycle-based methodologies and circularity indicators.</p> 947 <div class="cg-hero-btns"> 948 <a onclick="cgScrollTo('progetto')" class="cg-btn" style="cursor:pointer;">Discover the project</a> 949 <a onclick="cgScrollTo('contatti')" class="cg-btn-outline" style="cursor:pointer;">Contact us</a> 950 </div> 951 </div> 952 <div class="cg-hero-visual"> 953 <div class="cg-hero-slider" id="heroSlider"> 954 <div class="cg-hero-slider-track-wrapper"> 955 <div class="cg-hero-slider-track" id="heroSliderTrack"> 956 <div class="cg-hero-slide"> 957 <img src="/images/research-vineyard.jpg" alt="Wine supply chain" /> 958 <div class="cg-hero-slide-label">Wine Supply Chain</div> 959 </div> 960 <div class="cg-hero-slide"> 961 <img src="/images/olive-grove.jpg" alt="Olive oil supply chain" /> 962 <div class="cg-hero-slide-label">Olive Oil Supply Chain</div> 963 </div> 964 <div class="cg-hero-slide"> 965 <img src="/images/hero-wheat.jpg" alt="Bread/Pasta supply chain" /> 966 <div class="cg-hero-slide-label">Bread/Pasta Supply Chain</div> 967 </div> 968 </div> 969 </div> 970 <div class="cg-hero-slider-arrows"> 971 <button class="cg-hero-slider-arrow" onclick="window.cgSliderPrev()">â¹</button> 972 <button class="cg-hero-slider-arrow" onclick="window.cgSliderNext()">âº</button> 973 </div> 974 <div class="cg-hero-slider-dots" id="heroSliderDots"> 975 <button class="cg-hero-slider-dot active" onclick="window.cgSliderGoTo(0)"></button> 976 <button class="cg-hero-slider-dot" onclick="window.cgSliderGoTo(1)"></button> 977 <button class="cg-hero-slider-dot" onclick="window.cgSliderGoTo(2)"></button> 978 </div> 979 <div class="cg-hero-float-box"> 980 <h4>Supply Chains</h4> 981 <ul> 982 <li>Wine supply chain</li> 983 <li>Olive oil supply chain</li> 984 <li>Bread/Pasta supply chain</li> 985 </ul> 986 </div> 987 </div> 988 </div> 989</section> 990 991<!-- SERVICES BAR (Metodologie) â Ordine: LCA, S-LCA, LCC, Circularity Metrics --> 992<div class="cg-services-bar"> 993 <div class="cg-service-card"> 994 <img class="cg-service-img" src="/images/lca-environmental.jpg" alt="Life Cycle Assessment" /> 995 <h3>Life Cycle Assessment</h3> 996 <p>Assessment of potential environmental impacts throughout the entire life cycle following ISO 14040/44 standards.</p> 997 </div> 998 <div class="cg-service-card"> 999 <img class="cg-service-img" src="/images/social-lca.jpg" alt="Social Life Cycle Assessment" /> 1000 <h3>Social Life Cycle Assessment</h3> 1001 <p>Assessment of potential social impacts on stakeholders.</p> 1002 </div> 1003 <div class="cg-service-card"> 1004 <img class="cg-service-img" src="/images/life-cycle-costing.jpg" alt="Life Cycle Costing" /> 1005 <h3>Life Cycle Costing</h3> 1006 <p>
1006Analysis of internal costs and externalities.</p> 1007 </div> 1008 <div class="cg-service-card"> 1009 <img class="cg-service-img" src="/images/circularity-wheel.png" alt="Circularity Metrics" /> 1010 <h3>Circularity Metrics</h3> 1011 <p>Quantitative indicators to measure the degree of circularity in agri-food supply chains.</p> 1012 </div> 1013</div> 1014 1015<!-- ABOUT / PROGETTO --> 1016<section id="progetto" class="cg-section-full cg-about"> 1017 <div class="cg-about-inner" style="padding: 0 60px; max-width: 1400px; margin: 0 auto;"> 1018 <div> 1019 <div class="cg-section-header"> 1020 <div class="cg-section-label">The Project</div> 1021 <h2 class="cg-section-title">Circularity and Sustainability Assessment in Agri-food</h2> 1022 </div> 1023 <div class="cg-about-text"> 1024 <p>CIRCULAGRIS is a Research Project of National Interest (PRIN) aimed at developing circularity and sustainability metrics for Italian agri-food supply chains, focusing on wine, olive oil and bread/pasta.</p> 1025 <p>The project integrates Life Cycle Assessment (LCA), Social Life Cycle Assessment (S-LCA) and Life Cycle Costing (LCC) methodologies and circularity indicators to provide a holistic assessment of the environmental, social and economic impacts of circular systems.</p> 1026 </div> 1027 <div class="cg-about-features"> 1028 <div class="cg-about-feature"> 1029 <div class="cg-about-feature-icon"> 1030 <img src="/images/about-lab.jpg" alt="Laboratory" /> 1031 </div> 1032 <div> 1033 <h4>Life Cycle Methodologies</h4> 1034 <p>Integrated LCA, S-LCA and LCC framework</p> 1035 </div> 1036 </div> 1037 <div class="cg-about-feature"> 1038 <div class="cg-about-feature-icon"> 1039 <img src="/images/circularity-indicators.jpg" alt="Circularity indicators" /> 1040 </div> 1041 <div> 1042 <h4>Circularity Indicators</h4> 1043 <p>Metrics and indicators for circularity assessment in the agri-food sector</p> 1044 </div> 1045 </div> 1046 </div> 1047 </div> 1048 <div class="cg-about-image"> 1049 <div class="cg-about-image-main"> 1050 <img src="/images/agrifood-lab.png" alt="Agri-food products in research laboratory - olive oil, wine, pasta" /> 1051 </div> 1052 </div> 1053 </div> 1054</section> 1055 1056<!-- BRIEF DESCRIPTION OF THE PROJECT --> 1057<section class="cg-section-full cg-desc-section"> 1058 <div class="cg-section" style="padding-top: 60px; padding-bottom: 60px;"> 1059 <div class="cg-section-header"> 1060 <div class="cg-section-label">Brief Description</div> 1061 <h2 class="cg-section-title">About the Project</h2> 1062 </div> 1063 1064 <!-- Description content --> 1065 <div style="max-width: 900px; margin: 0 auto;"> 1066 <p style="font-size: 0.92rem; color: #555; line-height: 1.8; margin-bottom: 16px;">Agricultural sustainability lies at the core of numerous European Union initiatives, including the Common Agricultural Policy and the "Farm to Fork Strategy". The latter is pivotal to the implementation of the new European Green Deal (EGD), where the Circular Economy (CE) paradigm has been firmly integrated into both policy and business practices. In Italy, agriculture holds a prominent position.</p> 1067 <p style="font-size: 0.92rem; color: #555; line-height: 1.8; margin-bottom: 16px;">Scholars emphasise the importance of assessing sustainability impacts at both company and inter-firm levels. A circular supply chain may not always be the most sustainable choice and sustainability impacts should be assessed on a case-by-case basis. When it comes to the agri-food sector, life cycle-based assessment methodologies, i.e., Life Cycle Assessment, Social Life Cycle Assessment and Life Cycle Costing are considered suitable for evaluating sustainability. However, further development of life cycle-based methodologies is necessary for assessing CE practices in an effective way.</p> 1068 <p style="font-size: 0.92rem; color: #555; line-height: 1.8; margin-bottom: 16px;"><strong>This project aims to understand the relationship between circularity and sustainability in this sector, identifying metrics and exploring the impact of circular practices on sustainability.</strong></p> 1069 <p style="font-size: 0.92rem; color: #555; line-height: 1.8; margin-bottom: 12px;">The project establishes the participation of 3 Italian Research Units:</p> 1070 <ul class="cg-desc-ru-list"> 1071 <li><strong>RU1</strong>
1071 â University "G. d'Annunzio" of Chieti-Pescara (Abruzzo) â <em>Leader of the project</em></li> 1072 <li><strong>RU2</strong> â University of Messina (Sicily)</li> 1073 <li><strong>RU3</strong> â University "Aldo Moro" of Bari (Apulia)</li> 1074 </ul> 1075 </div> 1076 </div> 1077</section> 1078 1079<!-- STATS --> 1080<div class="cg-stats-section"> 1081 <div class="cg-stats-inner"> 1082 <div class="cg-stat"><div class="cg-stat-num">3</div><div class="cg-stat-label">Supply Chains Analysed</div></div> 1083 <div class="cg-stat"><div class="cg-stat-num">3</div><div class="cg-stat-label">Research Units</div></div> 1084 <div class="cg-stat"><div class="cg-stat-num" id="pubCount">0</div><div class="cg-stat-label">Research Outputs</div></div> 1085 <div class="cg-stat"><div class="cg-stat-num">28</div><div class="cg-stat-label">Months of Research</div></div> 1086 </div> 1087</div> 1088 1089<!-- OBIETTIVI --> 1090<section id="obiettivi" class="cg-section-full cg-objectives"> 1091 <div class="cg-section" style="padding-bottom: 40px;"> 1092 <div class="cg-section-header"> 1093 <div class="cg-section-label">Objectives</div> 1094 <h2 class="cg-section-title">Objectives</h2> 1095 </div> 1096 </div> 1097 <div class="cg-objectives-layout" style="padding: 0 60px;"> 1098 <div class="cg-objectives-center"> 1099 <img src="/images/circularity-wheel.png" alt="Circularity in agri-food" /> 1100 </div> 1101 <div class="cg-objectives-grid"> 1102 <div class="cg-objective-card"> 1103 <div class="cg-objective-icon"><svg viewBox="0 0 24 24"><path d="M3 3h18v18H3zM9 3v18M15 3v18M3 9h18M3 15h18"/></svg></div> 1104 <p>Developing a framework to assess the sustainability implications of three supply chains in the Italian agri-food sector.</p> 1105 </div> 1106 <div class="cg-objective-card"> 1107 <div class="cg-objective-icon"><svg viewBox="0 0 24 24"><path d="M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z"/><path d="M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z"/></svg></div> 1108 <p>Generating knowledge regarding methodological choices for applying life cycle-based methodologies to food products within circular supply chains.</p> 1109 </div> 1110 <div class="cg-objective-card"> 1111 <div class="cg-objective-icon"><svg viewBox="0 0 24 24"><circle cx="11" cy="11" r="8"/><path d="m21 21-4.3-4.3"/></svg></div> 1112 <p>Identifying circularity assessment methodologies and indicators tailored to the agri-food sector.</p> 1113 </div> 1114 <div class="cg-objective-card"> 1115 <div class="cg-objective-icon"><svg viewBox="0 0 24 24"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/></svg></div> 1116 <p>Establishing an approach linking circularity and sustainability assessment to aid decision-makers in making supply chains more circular while ensuring increased sustainability.</p> 1117 </div> 1118 <div class="cg-objective-card"> 1119 <div class="cg-objective-icon"><svg viewBox="0 0 24 24"><path d="M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z"/></svg></div> 1120 <p>Identifying best practices, considering sustainability impacts, for structuring wine, olive oil, and bread/pasta supply chains.</p> 1121 </div> 1122 </div> 1123 </div> 1124</section> 1125 1126<!-- TEAM --> 1127<section id="team" class="cg-section-full cg-team"> 1128 <div class="cg-section" style="padding-bottom: 40px;"> 1129 <div class="cg-section-header"> 1130 <div class="cg-section-label">Research Team</div> 1131 <h2 class="cg-section-title">Our Researchers</h2> 1132 <p class="cg-section-subtitle">An interdisciplinary team with expertise in the Circular Economy, sustainability, Life Cycle Thinking and agri-food systems.</p> 1133 </div> 1134 </div> 1135 1136 <!-- Research Units --> 1137 <div style="padding: 0 60px; max-width: 1400px; margin: 0 auto;"> 1138 <div class="cg-section-label" style="margin-bottom: 24px;">Research Units</div> 1139 </div> 1140 <div class="cg-units-grid"> 1141 <div class="cg-unit-card"> 1142 <img class="cg-unit-logo" src="/images/logo-uda.png" alt="Logo Università degli Studi G. d'Annunzio Chieti-Pescara" /> 1143 <h3>
1143University "G. d'Annunzio"<br/>of Chieti-Pescara</h3> 1144 <p>As the CIRCULAGRIS project leader, the Chieti-Pescara team boasts extensive experience in multi- and interdisciplinary research on sustainability. The members of the unit have gained many years of consolidated research experience in Life Cycle Assessment (LCA) applied to agri-food systems.</p> 1145 <div class="cg-unit-pi">Principal Investigator: Prof. Andrea Raggi</div> 1146 </div> 1147 <div class="cg-unit-card"> 1148 <img class="cg-unit-logo" src="/images/logo-unime-color.png" alt="Logo Università di Messina" /> 1149 <h3>University of Messina</h3> 1150 <p>The Messina unit has experience in multi- and interdisciplinary research projects, at national and international level, where Life Cycle Thinking (LCT) tools and methods have been applied to the agri-food system, focusing specifically on the wine supply chain, mapping circular systems and adapting circularity metrics.</p> 1151 <div class="cg-unit-pi">Unit Leader: Prof. Roberta Salomone</div> 1152 </div> 1153 <div class="cg-unit-card"> 1154 <img class="cg-unit-logo" src="/images/logo-uniba-color.png" alt="Logo Università di Bari Aldo Moro" /> 1155 <h3>University of Bari Aldo Moro</h3> 1156 <p>The Bari unit focuses on the Environmental Life Cycle Costing (LCC) in the bread and pasta supply chains and the olive oil industry, aiming at the integration of LCA, LCC and S-LCA for the evaluation of circular systems and the definition of economic, environmental and social indicators.</p> 1157 <div class="cg-unit-pi">Unit Leader: Prof. Bruno Notarnicola</div> 1158 </div> 1159 </div> 1160 1161 <!-- View All Researchers Link --> 1162 <div style="text-align: center; margin: 40px 0 20px;"> 1163 <a href="https://www.circulagris.com/researchers/" target="_top" style="display: inline-flex; align-items: center; gap: 8px; padding: 14px 32px; background: linear-gradient(135deg, #8B7535, #D4A017); color: #fff; text-decoration: none; border-radius: 50px; font-weight: 700; font-size: 0.85rem; letter-spacing: 1px; text-transform: uppercase; transition: opacity 0.3s;">View All Researchers â</a> 1164 </div> 1165 1166 <!-- Group Photo --> 1167 <div class="cg-team-group-photo"> 1168 <img src="/images/team-group.jpg" alt="CIRCULAGRIS research team at workshop" /> 1169 </div> 1170</section> 1171 1172<!-- ROADMAP --> 1173<section id="roadmap" class="cg-section-full cg-roadmap"> 1174 <div class="cg-section" style="padding-bottom: 40px;"> 1175 <div class="cg-section-header"> 1176 <div class="cg-section-label">Project Phases</div> 1177 <h2 class="cg-section-title">Research Roadmap</h2> 1178 </div> 1179 </div>
1180 <div class="cg-roadmap-grid" style="padding: 0 60px;"> 1181 <div class="cg-roadmap-item"> 1182 <div class="cg-roadmap-num">01</div> 1183 <h3>Phase 1 â State-of-the-art and literature review</h3> 1184 <ul class="cg-roadmap-steps"> 1185 <li>Step 1.1 â Identifying circularity assessment methods and indicators for the agri-food sector</li> 1186 <li>Step 1.2 â Defining circular systems in the selected agri-food supply chains</li> 1187 <li>Step 1.3 â Identifying suitable circularity assessment methods and indicators for the selected supply chains</li> 1188 </ul> 1189 </div> 1190 <div class="cg-roadmap-item"> 1191 <div class="cg-roadmap-num">02</div> 1192 <h3>Phase 2 â Methodological development</h3> 1193 <ul class="cg-roadmap-steps"> 1194 <li>Step 2.1 â Adapting Life Cycle Thinking (LCT) methods for the agri-food sectors</li> 1195 <li>Step 2.2 â Integrating the various sustainability issues and the circularity metrics</li> 1196 </ul> 1197 </div> 1198 <div class="cg-roadmap-item"> 1199 <div class="cg-roadmap-num">03</div> 1200 <h3>Phase 3 â Applicative research</h3> 1201 <ul class="cg-roadmap-steps"> 1202 <li>Step 3.1 â Assessing circularity and sustainability of the selected supply chains</li> 1203 <li>Step 3.2 â Comparing system circularity and sustainability through scenario analysis</li> 1204 </ul> 1205 </div> 1206 <div class="cg-roadmap-item"> 1207 <div class="cg-roadmap-num">04</div> 1208 <h3>Phase 4 â Dissemination and communication</h3> 1209 <p>Dissemination of results through scientific publications, conferences, and stakeholder engagement activities.</p> 1210 </div> 1211 </div> 1212</section> 1213 1214<!-- RESEARCH RESULTS --> 1215<section id="ricerca" class="cg-section-full cg-research"> 1216 <div style="padding: 0 60px; max-width: 1400px; margin: 0 auto;"> 1217 <div class="cg-section-header" style="text-align:center;"> 1218 <div class="cg-section-label" style="justify-content:center;">Research Activities</div> 1219 <h2 class="cg-section-title">Research Results</h2> 1220 <p class="cg-section-subtitle">Explore the scientific outputs of the CIRCULAGRIS project.</p> 1221 <div style="display:flex; flex-wrap:wrap; justify-content:center; gap:18px; margin-top:32px;"> 1222 <a href="https://www.circulagris.com/publications/" target="_top" style="display:inline-flex; align-items:center; padding:14px 36px; background:linear-gradient(135deg,#8B7535,#D4A017); color:#fff; font-weight:700; font-size:0.9rem; letter-spacing:1.5px; text-transform:uppercase; text-decoration:none; border-radius:50px; transition:all 0.3s; box-shadow:0 4px 15px rgba(139,117,53,0.3);">Publications</a> 1223 <a href="https://www.circulagris.com/conferences/" target="_top" style="display:inline-flex; align-items:center; padding:14px 36px; background:linear-gradient(135deg,#8B7535,#D4A017); color:#fff; font-weight:700; font-size:0.9rem; letter-spacing:1.5px; text-transform:uppercase; text-decoration:none; border-radius:50px; transition:all 0.3s; box-shadow:0 4px 15px rgba(139,117,53,0.3);">Conferences</a> 1224 <a href="https://www.circulagris.com/workshops/" target="_top" style="display:inline-flex; align-items:center; padding:14px 36px; background:linear-gradient(135deg,#8B7535,#D4A017); color:#fff; font-weight:700; font-size:0.9rem; letter-spacing:1.5px; text-transform:uppercase; text-decoration:none; border-radius:50px; transition:all 0.3s; box-shadow:0 4px 15px rgba(139,117,53,0.3);">Workshops</a> 1225 </div> 1226 </div> 1227 </div> 1228</section> 1229 1230<!-- CONTATTI --> 1231<section id="contatti" class="cg-section-full cg-contact"> 1232 <div class="cg-contact-inner"> 1233 <div class="cg-section-header" style="text-align: center;"> 1234 <div class="cg-section-label" style="justify-content: center;">Contact</div> 1235 <h2 class="cg-section-title">Contact Us</h2> 1236 </div> 1237 <p>Interested in the CIRCULAGRIS project or want to learn more about our research activities? Get in touch.</p> 1238 <div class="cg-contact-uni">Università degli Studi "G. d'Annunzio" Chieti-Pescara</div> 1239 <div class="cg-contact-loc">Viale Pindaro 42, 65127 Pescara, Italy</div> 1240 <a href="mailto:[email protected]" class="cg-contact-email">[email protected]</a> 1241 <div style="margin-top: 8px;"> 1242 <a href="https://www.linkedin.com/company/circulagris-project-prin-2022" target="_blank" rel="noopener noreferrer" style="display: inline-flex; align-items: center; gap: 8px; color: #0077B5; text-decoration: none; font-size: 0.95rem; font-weight: 600; transition: opacity 0.3s;"> 1243 <svg xmlns="http://www.w3.org/2000/svg" width="22" height="22" viewBox="0 0 24 24" fill="#0077B5"><path d="M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433a2.062 2.062 0 01-2.063-2.065 2.064 2.064 0 112.063 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z"/></svg> 1244 CIRCULAGRIS on LinkedIn 1245 </a> 1246 </div> 1247 </div> 1248</section> 1249 1250<!-- FOOTER --> 1251<footer class="cg-footer"> 1252 <div class="cg-footer-logos"> 1253 <img src="/images/logo-circulagris.png" alt="CIRCULAGRIS" style="height: 50px; filter: brightness(0) invert(1);" /> 1254 </div> 1255 <div class="cg-footer-logos" style="margin-top: 16px;"> 1256 <img src="/images/footer-eu-white.png" alt="Finanziato dall'Unione europea - NextGenerationEU" style="height:56px;" /> 1257 <img src="/images/footer-mur-white.png" alt="Ministero dell'Università e della Ricerca" style="height:42px;" />
1258 <img src="/images/footer-italiadomani-white.png" alt="Italia Domani - PNRR" style="height:72px;" /> 1259 <img src="/images/logo-uda.png" alt="UdA" style="height:80px;" /> 1260 <img src="/images/logo-unime-white.png" alt="UNIME" style="height:76px;" /> 1261 <img src="/images/logo-uniba.png" alt="UNIBA" style="height:80px;" /> 1262 </div> 1263 <p style="margin-top: 20px;">© 2024 CIRCULAGRIS â PRIN 2022 Project | <a href="https://www.unich.it" target="_blank">Università degli Studi "G. d'Annunzio" Chieti-Pescara</a></p> 1264 <div class="cg-footer-funding"> 1265 Project "Towards circular and sustainable agri-food systems: metrics for assessment (CIRCULAGRIS)" PRIN2022 (Research Project of National Interest) funded by the European Union - Next Generation EU, Mission 4, Component 2, CUP D53D23011220006. 1266 </div> 1267 <div style="margin-top: 16px; font-size: 0.72rem; color: rgba(255,255,255,0.5);"> 1268 <a href="https://www.sitiwebshop.it/?utm_source=sito-cliente&utm_medium=circulagris-universita-ch" target="_blank" rel="noopener noreferrer" style="color: rgba(255,255,255,0.8); text-decoration: underline;">Powered by Webshop Human AI Automation</a> 1269 </div> 1270</footer> 1271 1272</div> 1273 1274`}})),x2=()=>(as(),x.useEffect(()=>{function e(){const t=document.querySelector(".cg-res-inst-bar"),i=document.querySelector(".cg-res-nav");t&&i&&(i.style.top=t.offsetHeight+"px")}return requestAnimationFrame(e),setTimeout(e,100),setTimeout(e,500),window.addEventListener("resize",e),window.addEventListener("load",e),()=>{window.removeEventListener("resize",e),window.removeEventListener("load",e)}},[]),I.jsx("div",{dangerouslySetInnerHTML:{__html:` 1275<style> 1276.cg-res-root *, .cg-res-root *::before, .cg-res-root *::after { margin: 0; padding: 0; box-sizing: border-box; } 1277.cg-res-root { 1278 font-family: Calibri, 'Segoe UI', sans-serif; 1279 color: #3a3a4a; line-height: 1.6; background: #FAF8F2; 1280 min-height: 100vh; 1281} 1282.cg-res-root img { max-width: 100%; } 1283 1284/* âââ INSTITUTIONAL BAR âââ */ 1285.cg-res-inst-bar { 1286 position: fixed; top: 0; left: 0; right: 0; z-index: 101; 1287 background: #2A65AF; 1288 display: flex; align-items: center; justify-content: center; 1289 gap: 28px; padding: 14px 40px; 1290 border-bottom: 1px solid rgba(0,0,0,0.08); 1291 flex-wrap: wrap; 1292} 1293.cg-res-inst-bar img { height: 64px; object-fit: contain; flex-shrink: 0; } 1294.cg-res-inst-bar .cg-inst-divider { 1295 width: 1px; height: 48px; background: rgba(255,255,255,0.3); flex-shrink: 0; 1296} 1297 1298/* âââ NAV âââ */ 1299.cg-res-nav { 1300 position: fixed; top: 92px; left: 0; right: 0; z-index: 100; 1301 background: rgba(255,255,255,0.92); 1302 backdrop-filter: blur(16px); 1303 padding: 18px 60px; 1304 display: flex; align-items: center; justify-content: space-between; 1305 border-bottom: 1px solid rgba(0,0,0,0.06); 1306 box-shadow: 0 2px 20px rgba(0,0,0,0.04); 1307} 1308.cg-res-nav-logo { display: flex; align-items: center; } 1309.cg-res-nav-logo img { height: 56px; object-fit: contain; margin-right: 16px; } 1310.cg-res-nav-links { display: flex; gap: 32px; list-style: none; } 1311.cg-res-nav-links a { 1312 color: #555; text-decoration: none; font-size: 0.82rem; 1313 font-weight: 600; letter-spacing: 1.5px; text-transform: uppercase; 1314 transition: color 0.3s; position: relative; cursor: pointer; 1315} 1316.cg-res-nav-links a:hover { color: #8B7535; } 1317.cg-res-nav-links a::after { 1318 content:''; position: absolute; bottom: -6px; left: 0; width: 0; height: 2px; 1319 background: #8B7535; transition: width 0.3s; 1320} 1321.cg-res-nav-links a:hover::after { width: 100%; } 1322.cg-res-nav-links a.active { color: #8B7535; } 1323.cg-res-nav-links a.active::after { width: 100%; } 1324 1325/* âââ BURGER âââ */ 1326.cg-res-burger { 1327 display: none; flex-direction: column; gap: 5px; cursor: pointer; 1328 padding: 8px; z-index: 200; 1329} 1330.cg-res-burger span { 1331 display: block; width: 24px; height: 2px; background: #3a3a4a; 1332 transition: all 0.3s; border-radius: 2px; 1333} 1334/* âââ MOBILE MENU âââ */ 1335.cg-res-mobile-menu { 1336 display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; 1337 background: #FAF8F2; z-index: 190; 1338 flex-direction: column; align-items: center; justify-content: center; 1339 gap: 24px; list-style: none; overflow: hidden; 1340} 1341.cg-res-mobile-menu.open { display: flex; } 1342.cg-res-mobile-menu a { 1343 color: #3a3a4a; text-decoration: none; font-size: 1.1rem; 1344 font-weight: 700; letter-spacing: 2px; text-transform: uppercase; 1345 font-family: Calibri, 'Segoe UI', sans-serif; cursor: pointer; 1346 transition: color 0.3s; 1347} 1348.cg-res-mobile-menu a:hover { color: #8B7535; } 1349.cg-res-mobile-close { 1350 position: absolute; top: 20px; right: 20px; 1351 width: 40px; height: 40px; cursor: pointer; 1352 display: flex; align-items: center; justify-content: center; 1353 background: none; border: none; z-index: 200; 1354} 1355.cg-res-mobile-close::before, .cg-res-mobile-close::after {
1356 content: ''; position: absolute; 1357 width: 24px; height: 2px; background: #3a3a4a; border-radius: 2px; 1358} 1359.cg-res-mobile-close::before { transform: rotate(45deg); } 1360.cg-res-mobile-close::after { transform: rotate(-45deg); } 1361 1362.cg-res-header { 1363 background: #2A65AF; 1364 padding: 200px 60px 60px; text-align: center; 1365} 1366.cg-res-header h1 { 1367 font-family: Calibri, 'Segoe UI', sans-serif; 1368 font-size: clamp(1.8rem, 3vw, 2.8rem); font-weight: 800; 1369 color: #fff; text-transform: uppercase; letter-spacing: 2px; margin-bottom: 12px; 1370} 1371.cg-res-header p { 1372 font-size: 1rem; color: rgba(255,255,255,0.7); max-width: 600px; margin: 0 auto; 1373} 1374 1375.cg-res-section { 1376 max-width: 1200px; margin: 0 auto; padding: 60px 40px; 1377} 1378.cg-res-unit-title { 1379 font-family: Calibri, 'Segoe UI', sans-serif; 1380 font-size: 1.3rem; font-weight: 800; color: #1a1a2e; 1381 text-transform: uppercase; letter-spacing: 1px; 1382 margin-bottom: 8px; display: flex; align-items: center; gap: 16px; 1383} 1384.cg-res-unit-title img { height: 50px; border-radius: 50%; } 1385.cg-res-unit-subtitle { 1386 font-size: 0.82rem; color: #8B7535; font-weight: 600; 1387 letter-spacing: 1px; margin-bottom: 32px; 1388} 1389.cg-res-grid { 1390 display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); 1391 gap: 28px; margin-bottom: 60px; 1392} 1393.cg-res-card { 1394 background: #fff; border-radius: 16px; overflow: visible; 1395 border: 1px solid rgba(0,0,0,0.06); transition: all 0.3s; 1396 display: flex; flex-direction: column; align-items: center; 1397 text-align: center; padding: 60px 20px 24px; position: relative; 1398 margin-top: 50px; 1399 border-top: 3px solid #8B7535; 1400} 1401.cg-res-card:hover { transform: translateY(-4px); box-shadow: 0 12px 30px rgba(0,0,0,0.08); } 1402.cg-res-card-img-wrap { 1403 position: absolute; top: -50px; left: 50%; transform: translateX(-50%); 1404 width: 100px; height: 100px; border-radius: 50%; overflow: hidden; 1405 border: 4px solid #fff; box-shadow: 0 4px 16px rgba(0,0,0,0.12); 1406 background: #eee; 1407} 1408.cg-res-card-img { 1409 width: 100%; height: 100%; object-fit: cover; 1410} 1411.cg-res-card-info { flex: 1; } 1412.cg-res-card-info h3 { 1413 font-family: Calibri, 'Segoe UI', sans-serif; 1414 font-size: 1rem; font-weight: 700; color: #1a1a2e; margin-bottom: 4px; 1415} 1416.cg-res-card-role { 1417 font-size: 0.72rem; color: #8B7535; font-weight: 700; 1418 letter-spacing: 1px; text-transform: uppercase; margin-bottom: 10px; 1419} 1420.cg-res-card-info p { font-size: 0.78rem; color: #777; line-height: 1.5; } 1421 1422.cg-res-divider { 1423 width: 60px; height: 3px; background: linear-gradient(90deg, #8B7535, #8E4585); 1424 margin-bottom: 24px; border-radius: 2px; 1425} 1426.cg-res-unit-desc { 1427 font-size: 0.85rem; color: #555; line-height: 1.7; margin-bottom: 36px; 1428 text-align: justify; 1429} 1430 1431@media (max-width: 900px) { 1432 .cg-res-hide-mobile { display: none !important; } 1433 .cg-res-nav-links { display: none; } 1434 .cg-res-burger { display: flex; } 1435 .cg-res-inst-bar { padding: 10px 20px; gap: 14px; flex-wrap: wrap; } 1436 .cg-res-inst-bar img { height: 44px; } 1437 .cg-res-inst-bar .cg-inst-divider { height: 32px; } 1438} 1439@media (max-width: 640px) { 1440 .cg-res-header { padding: 220px 10px 40px; } 1441 .cg-res-section { padding: 40px 10px; text-align: center; } 1442 .cg-res-grid { grid-template-columns: 1fr; } 1443 .cg-res-inst-bar { padding: 8px 6px; gap: 8px; justify-content: space-between; flex-wrap: nowrap; } 1444 .cg-res-inst-bar img { height: 32px !important; flex-shrink: 1; min-width: 0; object-fit: contain; } 1445 .cg-res-inst-bar .cg-logo-italiadomani { height: 58px !important; } 1446 .cg-res-inst-bar .cg-inst-divider { display: flex; height: 28px; background: rgba(255,255,255,0.3); width: 1px; flex-shrink: 0; } 1447 .cg-res-nav { top: auto; padding: 12px 10px; } 1448 .cg-res-card-info p { font-size: 0.75rem; text-align: center; } 1449 .cg-res-unit-title { justify-content: center; text-align: center; } 1450 .cg-res-unit-subtitle { text-align: center; } 1451 .cg-res-unit-desc { font-size: 0.8rem; text-align: center; } 1452 .cg-res-divider { margin-left: auto; margin-right: auto; } 1453 .cg-res-footer { padding: 30px 10px; } 1454 .cg-res-footer-logos { gap: 12px; } 1455 .cg-res-footer-logos img { height: 32px; } 1456} 1457/* âââ FOOTER âââ */ 1458.cg-res-footer { 1459 background: #2A65AF; color: rgba(255,255,255,0.6); 1460 padding: 40px 60px; text-align: center; font-size: 0.8rem; 1461} 1462.cg-res-footer-logos { 1463 display: flex; align-items: center; justify-content: center; 1464 gap: 24px; margin-bottom: 20px; flex-wrap: wrap; 1465} 1466.cg-res-footer-logos img { height: 40px; object-fit: contain; } 1467</style> 1468 1469<div class="cg-res-root"> 1470 1471 <!-- INSTITUTIONAL BAR --> 1472 <div class="cg-res-inst-bar"> 1473 <img src="/images/footer-eu-white.png" alt="Finanziato dall'Unione europea - NextGenerationEU" style="height:56px;" /> 1474 <div class="cg-inst-divider"></div> 1475 <img src="/images/footer-mur-white.png" alt="MUR" style="height:42px;" /> 1476 <div class="cg-inst-divider"></div>
1477 <img src="/images/footer-italiadomani-white.png" alt="Italia Domani" style="height:72px;" class="cg-logo-italiadomani" /> 1478 <div class="cg-inst-divider cg-res-hide-mobile"></div> 1479 <img src="/images/logo-uda.png" alt="UdA" style="height:80px;" class="cg-res-hide-mobile" /> 1480 <img src="/images/logo-unime-white.png" alt="UNIME" style="height:76px;" class="cg-res-hide-mobile" /> 1481 <img src="/images/logo-uniba.png" alt="UNIBA" style="height:80px;" class="cg-res-hide-mobile" /> 1482 </div> 1483 1484 <!-- NAV --> 1485 <nav class="cg-res-nav"> 1486 <a class="cg-res-nav-logo" href="https://www.circulagris.com/" target="_top"><img src="/images/logo-circulagris.png" alt="CIRCULAGRIS" /></a> 1487 <ul class="cg-res-nav-links"> 1488 <li><a href="https://www.circulagris.com/" target="_top">Home</a></li> 1489 <li><a href="https://www.circulagris.com/researchers/" target="_top" class="active">Researchers</a></li> 1490 <li><a href="https://www.circulagris.com/conferences/" target="_top">Conferences</a></li> 1491 <li><a href="https://www.circulagris.com/workshops/" target="_top">Workshops</a></li> 1492 <li><a href="https://www.circulagris.com/publications/" target="_top">Publications</a></li> 1493 <li class="cg-lang-switch"><a href="https://www.circulagris.com/ricercatori/" target="_top" style="background:#8B7535;color:#fff !important;padding:6px 14px;border-radius:20px;font-weight:700;cursor:pointer;">IT</a></li> 1494 </ul> 1495 <div class="cg-res-burger" onclick="(function(){var m=document.getElementById('cgResMobileMenu');m.classList.toggle('open')})()"> 1496 <span></span><span></span><span></span> 1497 </div> 1498 </nav> 1499 1500 <!-- MOBILE MENU --> 1501 <ul class="cg-res-mobile-menu" id="cgResMobileMenu"> 1502 <button class="cg-res-mobile-close" onclick="document.getElementById('cgResMobileMenu').classList.remove('open')" aria-label="Close"></button> 1503 <li><a href="https://www.circulagris.com/" target="_top">Home</a></li> 1504 <li><a href="https://www.circulagris.com/researchers/" target="_top">Researchers</a></li> 1505 <li><a href="https://www.circulagris.com/conferences/" target="_top">Conferences</a></li> 1506 <li><a href="https://www.circulagris.com/workshops/" target="_top">Workshops</a></li> 1507 <li><a href="https://www.circulagris.com/publications/" target="_top">Publications</a></li> 1508 <li class="cg-lang-switch"><a href="https://www.circulagris.com/ricercatori/" target="_top" style="background:#8B7535;color:#fff !important;padding:6px 14px;border-radius:20px;font-weight:700;cursor:pointer;">IT</a></li> 1509 </ul> 1510 1511 <div class="cg-res-header"> 1512 <h1>Our Researchers</h1> 1513 <p>A multidisciplinary team with expertise in Circular Economy, sustainability, Life Cycle Thinking and agri-food systems.</p> 1514 </div> 1515 1516 <div class="cg-res-section"> 1517 1518 <!-- UNIT 1: UNICH --> 1519 <div class="cg-res-unit-title"> 1520 <img src="/images/logo-uda.png" alt="UNICH" /> 1521 University "G. d'Annunzio" of Chieti-Pescara 1522 </div> 1523 <div class="cg-res-unit-subtitle">Principal Investigator: Prof. Andrea Raggi</div> 1524 <div class="cg-res-divider"></div> 1525 <div class="cg-res-unit-desc">The Chieti-Pescara unit, as the project's PI, will coordinate the whole project, supervising the implementation of the various phases and activities carried out by the individual units. The Chieti-Pescara team has participated in several multi- and inter-disciplinary research projects, at national and international level, also involving engagement with stakeholders (mainly industry) and has recently led the WP5 on sustainability metrics for circular systems, within CRESTING. The Chieti-Pescara unit will also collaborate with the other units in defining methodological approaches and in carrying out the joint activities planned in the various phases. Due to their internationally recognised expertise on the Social-LCA topic, the Chieti-Pescara unit will particularly contribute to the development of a S-LCA framework to deeply comprehend social practices in the agri-food sector.<br/><br/>In addition, in full continuity with the PRIN 2017 ILCIDAF Project, the Chieti-Pescara unit will focus specifically on the wine supply chain. Indeed, the members of the unit have gained many years of consolidated research experience in the wine making industry, especially in the theoretical development and application of LCT methods and tools, and have built up a network of contacts with the relevant companies. Circular systems and/or circular practices within the wine making industry will be mapped. The
1525n the identified circularity metrics and circularity assessment methods and indicators for the agri-food sector, will be adapted to the selected circular systems, in order to verify a possible correlation between them. This correlation will be further investigated to identify which circularity practices show improved performance in terms of sustainability.</div> 1526 <div class="cg-res-grid"> 1527 <div class="cg-res-card"> 1528 <div class="cg-res-card-img-wrap"> 1529 <img class="cg-res-card-img" src="/images/team-arzoumanidis.jpg" alt="Ioannis Arzoumanidis" /> 1530 </div> 1531 <div class="cg-res-card-info"> 1532 <h3>Ioannis Arzoumanidis</h3> 1533 <p>Ioannis Arzoumanidis is Senior Assistant Professor of Commodity Science at the Department of Economic Studies, University "G. D'Annunzio", Pescara, Italy. He obtained his PhD in "Innovation, Accounting, Environment and Finance". His teachings include Life Cycle Assessment for Business, Energy Management and Sustainability, and Sustainability and Responsible Tourism. For more than 17 years, he has carried out academic research. His research perspective encompasses life cycle sustainability assessment, industrial ecology, and the circular economy across various sectors and in methodological development. He has authored or co-authored more than 65 scientific publications.</p> 1534 </div> 1535 </div> 1536 <div class="cg-res-card"> 1537 <div class="cg-res-card-img-wrap"> 1538 <img class="cg-res-card-img" src="/images/team-petti.jpg" alt="Luigia Petti" /> 1539 </div> 1540 <div class="cg-res-card-info"> 1541 <h3>Luigia Petti</h3> 1542 <p>Luigia Petti is a Full Professor in Commodity Science (SECS-P/13) at the Department of Economics, University "G. d'Annunzio" of ChietiâPescara, Italy, where she has held this position since February 2019. For more than three decades, she has carried out academic research and teaching. Her research perspective includes quality and environmental management systems, Life Cycle Sustainability Assessment, with a special focus on Social Life Cycle Assessment. Her research is mainly of an interdisciplinary nature, also involving engagement with stakeholders (mainly industry); she has participated in various research projects involving multi- and interdisciplinary collaborations, at both a national and international level.</p> 1543 </div> 1544 </div> 1545 <div class="cg-res-card"> 1546 <div class="cg-res-card-img-wrap"> 1547 <img class="cg-res-card-img" src="/images/team-raggi.jpg" alt="Andrea Raggi" /> 1548 </div> 1549 <div class="cg-res-card-info"> 1550 <h3>Andrea Raggi</h3> 1551 <div class="cg-res-card-role">Principal Investigator</div> 1552 <p>Andrea Raggi is Full Professor of Industrial Ecology and related issues at the Department of Economic Studies, University "G. D'Annunzio", Pescara, Italy. For more than 35 years he has carried out academic research and teaching. His research perspective includes environmental management systems, Life Cycle Sustainability Assessment, industrial ecology, circular economy. His research is mainly of an interdisciplinary nature, also involving engagement with stakeholders (mainly industry); he has participated in various research projects involving multi- and inter-disciplinary collaborations, both at a national and international level. He has authored or co-authored more than 270 scientific publications.</p> 1553 </div> 1554 </div> 1555 <div class="cg-res-card"> 1556 <div class="cg-res-card-img-wrap"> 1557 <img class="cg-res-card-img" src="/images/team-simboli.png" alt="Alberto Simboli" /> 1558 </div> 1559 <div class="cg-res-card-info"> 1560 <h3>Alberto Simboli</h3> 1561 <p>Alberto Simboli is Associate Professor of Commodity Sciences at the Department of Economic Studies, University "G. D'Annunzio", Pescara, Italy. He obtained his PhD in Sciences by discussing a thesis titled 'Value and wastes in production systems: an application of the lean principles to the services sector'. His research interests concern production systems, with specific focus on technological; organizational/managerial and environmental aspects. He is currently involved in national and international research activities and projects and is author of more than 80 scientific publications. Courses given at Pescara University: Technology of Production Cycles; Operations Management; Technology of recovering and recycling of materials, Closed Loop Production Systems.</p> 1562 </div> 1563 </div> 1564 <div class="cg-res-card"> 1565 <div class="cg-res-card-img-wrap"> 1566 <img class="cg-res-card-img" src="/images/team-tragnone.jpg" alt="Bianca Maria Tragnone" /> 1567 </div> 1568 <div class="cg-res-card-info"> 1569 <h3>Bianca Maria Tragnone</h3> 1570 <p>
1570Bianca Maria Tragnone is a post-doc researcher of Commodity Science at the Department of Economic Studies, University "G. D'Annunzio", Pescara, Italy. She obtained her PhD in "Business, Institution, Markets" by presenting a thesis on the role of Social Life Cycle Assessment in addressing social sustainability in supply chains. Her research perspective encompasses Life Cycle Sustainability Assessment, with a specific focus on Social Life Cycle Assessment and Social Organisational Life Cycle Assessment, and the circular economy, also in terms of methodological development.</p> 1571 </div> 1572 </div> 1573 </div> 1574 1575 <!-- UNIT 2: UNIME --> 1576 <div class="cg-res-unit-title"> 1577 <img src="/images/logo-unime-color.png" alt="UNIME" /> 1578 University of Messina 1579 </div> 1580 <div class="cg-res-unit-subtitle">Unit Leader: Prof. Roberta Salomone</div> 1581 <div class="cg-res-divider"></div> 1582 <div class="cg-res-unit-desc">The Messina unit will cooperate with the other research units in Phases 1 (state of the art and literature review), 2 (methodological development) and 4 (dissemination and communication), in relation to the internationally recognised expertise and knowledge of the involved team on LCA, sustainability and CE assessment. In particular, the Messina team has experience in multi and inter-disciplinary research projects, both at national and international level, where LCT tools and methods have been specifically applied to the agri-food system (e.g. it was the PI of the EMAF project PRIN 2008 and it is involved in the ILCIDAF project PRIN 2017), as well in other sectors (e.g. was involved in CRESTING project on sustainability metrics for circular systems and in the PON project THALASSA; it is also unit responsible for the University of Messina for the PO FESR SICILIA project ELETTRORIGENERA), often highlighting the problems connected in linking and integrating sustainability and circularity evaluations.<br/><br/>In addition, in full continuity with the PRIN 2017 ILCIDAF Project, the Messina unit will specifically focus on the olive oil supply chain. Indeed, the members of the unit have gained many years of consolidated research experience in the implementation of LCA and other LCT methods and tools in the olive oil making industry, both from a methodological and operational perspective. In Phase 3 (applicative research), sustainability and circularity assessment within the olive oil making industry will be carried out, the identified circularity assessment methods and indicators will be applied to the selected circular systems and these will be compared to the traditional linear ones in order to verify their life cycle sustainability performances.</div> 1583 <div class="cg-res-grid"> 1584 <div class="cg-res-card"> 1585 <div class="cg-res-card-img-wrap"> 1586 <img class="cg-res-card-img" src="/images/researchers/gulotta.jpg" alt="Teresa Maria Gulotta" /> 1587 </div> 1588 <div class="cg-res-card-info"> 1589 <h3>Teresa Maria Gulotta</h3> 1590 <p>Teresa Maria Gulotta holds a PhD in Energy and Information Technologies from the University of Palermo. She is currently an Assistant Professor (type B) in Commodity Science (s.s.d. ECON-10/A) at the Department of Economics, University of Messina. Her research activities focus primarily on sustainability, Circular Economy, energy efficiency, and related assessment methodologies, with particular emphasis on Life Cycle Thinking approaches.</p> 1591 </div> 1592 </div> 1593 <div class="cg-res-card"> 1594 <div class="cg-res-card-img-wrap"> 1595 <img class="cg-res-card-img" src="/images/researchers/lanuzza.jpg" alt="Francesco Lanuzza" /> 1596 </div> 1597 <div class="cg-res-card-info"> 1598 <h3>Francesco Lanuzza</h3> 1599 <p>Francesco Lanuzza is Full Professor at the Department of Economics of the University of Messina (scientific sector ECON-10/A â Commodity Sciences). His research focuses primarily on the characterization and quality assessment of agri-food products through advanced instrumental methodologies, which allow the identification of bioactive compounds, contaminants, and quality indicators. Other research activities concern the valorization of natural resources and agro-industrial by-products within a framework of sustainability and circular economy.</p> 1600 </div> 1601 </div> 1602 <div class="cg-res-card"> 1603 <div class="cg-res-card-img-wrap"> 1604 <img class="cg-res-card-img" src="/images/researchers/mondello.jpg" alt="Giovanni Mondello" /> 1605 </div> 1606 <div class="cg-res-card-info"> 1607 <h3>Giovanni Mondello</h3> 1608 <p>Giovanni Mondello has a PhD (Doctoratus Europaeus) in Markets, Business and Consumers â curriculum Quality, Innovation and Sustainability from the University of Roma Tre. He is Assistant Professor (type B), s.s.d. ECON-10/A (Commodity Scie
1608nces), at the Department of Economics of the University of Messina. The main research areas are focused on: environmental sustainability, LCA and related evaluation methods, Circular Economy, Industrial Ecology and Industrial Symbiosis.</p> 1609 </div> 1610 </div> 1611 <div class="cg-res-card"> 1612 <div class="cg-res-card-img-wrap"> 1613 <img class="cg-res-card-img" src="/images/researchers/saija.jpg" alt="Giuseppe Saija" /> 1614 </div> 1615 <div class="cg-res-card-info"> 1616 <h3>Giuseppe Saija</h3> 1617 <p>Giuseppe Saija is Full Professor, s.s.d. ECON-10/A (Commodity Sciences), at the Department of Economics, University of Messina. His main research areas of interest are: quality and environment assessment tools and management; systems integrated management systems (quality, environment, safety, ethics, etc.), with particular reference to the agri-food sector; system and product certification; food characterisation and quality.</p> 1618 </div> 1619 </div> 1620 <div class="cg-res-card"> 1621 <div class="cg-res-card-img-wrap"> 1622 <img class="cg-res-card-img" src="/images/researchers/salomone.jpg" alt="Roberta Salomone" /> 1623 </div> 1624 <div class="cg-res-card-info"> 1625 <h3>Roberta Salomone</h3> 1626 <div class="cg-res-card-role">Unit Leader</div> 1627 <p>Roberta Salomone has a Ph.D. in Technology and Economics of Processes and Products for the Environmental Safeguard University of Catania. She is Full Professor of Commodity Science and Rector Delegate for Sustainability at the University of Messina. She is Vice President of the Italian LCA Network. She participates and participated to various research groups, also as national coordinator. Her main research themes are related to sustainability, circular economy, industrial symbiosis and Life Cycle Thinking methods.</p> 1628 </div> 1629 </div> 1630 <div class="cg-res-card"> 1631 <div class="cg-res-card-img-wrap"> 1632 <img class="cg-res-card-img" src="/images/researchers/scandurra.jpg" alt="Federica Scandurra" /> 1633 </div> 1634 <div class="cg-res-card-info"> 1635 <h3>Federica Scandurra</h3> 1636 <p>Previously, Research Fellow of the project CIRCULAGRIS, she is currently a Teaching Fellow in Economics of Climate Change at the School of Economics at University College Dublin (UCD). She has a PhD in Economics, Management and Statistics from the University of Messina. Her main research interests are the adoption and assessment of the circular economy and sustainability, with a specific focus on the agri-food sector and social engagement.</p> 1637 </div> 1638 </div> 1639 </div> 1640 1641 <!-- UNIT 3: UNIBA --> 1642 <div class="cg-res-unit-title"> 1643 <img src="/images/logo-uniba-color.png" alt="UNIBA" /> 1644 University of Bari Aldo Moro 1645 </div> 1646 <div class="cg-res-unit-subtitle">Unit Leader: Prof. Bruno Notarnicola</div> 1647 <div class="cg-res-divider"></div> 1648 <div class="cg-res-unit-desc">The Bari unit will work, with the other research units, on the joint activities concerning Phases 1, 2 and 4 of the proposed project. The unit will make use of its experience and knowledge regarding the application of the "Life Cycle" paradigm to product systems (including agri-food systems â e.g. the Bari unit is the PI of the ILCIDAF project - PRIN 2017).<br/><br/>Furthermore, the unit will also specifically focus on the pasta and bread supply chain. Specifically, the members of the unit have been carrying out, for many decades, research involving the application of life cycle thinking methods to agri-food systems, both from a methodological and operational perspective; such experience will be used to map the sustainability and circularity assessment within the pasta and bread industries. Once the circularity assessment methods and indicators will have been identified, these will be adapted to selected circular systems, and compared to traditional linear ones in order to verify their sustainability performance and thus prove whether circularity practices in the pasta and bread supply chains show improved performance in terms of sustainability. In particular, the Bari unit will focus on the LCA-based methodologies for quantitative and integrated assessment, such as Environmental Life Cycle Costing (LCC) applied to bread/pasta supply chain. The integration of LCA, LCC as well as the inclusion in the analysis of further external social costs (Societal life cycle c
1648osting), will allow the definition of economic, environmental and social indicators. This will represent an important result in food chains where these aspects are often separately determined and not related to each other.</div> 1649 <div class="cg-res-grid"> 1650 <div class="cg-res-card"> 1651 <div class="cg-res-card-img-wrap"> 1652 <img class="cg-res-card-img" src="/images/team-dicapua-2.png" alt="Rosa Di Capua" /> 1653 </div> 1654 <div class="cg-res-card-info"> 1655 <h3>Rosa Di Capua</h3> 1656 <p>Associate Professor of Commodity Science at the Ionian Department of the University of Bari Aldo Moro. PhD in Economics and Management. Her main research lines focus on the application of industrial ecology and its tools to support resource efficiency and the circular economy, in particular industrial symbiosis in different territorial contexts and Life Cycle Assessment (LCA) applied to various product/service systems. Author of numerous contributions in international journals and conference proceedings.</p> 1657 </div> 1658 </div> 1659 <div class="cg-res-card"> 1660 <div class="cg-res-card-img-wrap"> 1661 <img class="cg-res-card-img" src="/images/team-esposito-2.png" alt="Benedetta Esposito" /> 1662 </div> 1663 <div class="cg-res-card-info"> 1664 <h3>Benedetta Esposito</h3> 1665 <p>Tenure-Track Researcher (RTT) in Commodity Science at San Raffaele Roma University. Previously research fellow at the Ionian Department of the University of Bari Aldo Moro. PhD in Big Data Management (University of Salerno, 2024). Visiting researcher at the Universidad de Cádiz (2026) and Cardiff Business School (2023). Associate Editor of the journal Business Strategy & Development. Member of AISME, AIDEA, IAQUIS, Italian LCA Network and ISIE.</p> 1666 </div> 1667 </div> 1668 <div class="cg-res-card"> 1669 <div class="cg-res-card-img-wrap"> 1670 <img class="cg-res-card-img" src="/images/team-notarnicola-2.jpg" alt="Bruno Notarnicola" /> 1671 </div> 1672 <div class="cg-res-card-info"> 1673 <h3>Bruno Notarnicola</h3> 1674 <div class="cg-res-card-role">Unit Leader</div> 1675 <p>Full Professor of Commodity Science at the University of Bari Aldo Moro, formerly Director of the Ionian Department and Dean of the Second Faculty of Economics. Author of more than 250 scientific publications. His research focuses on Life Cycle Assessment (LCA) applied to the agri-food sector, industrial symbiosis and environmental monitoring. Scientific Advisor to the Italian Minister for Ecological Transition on LCA issues. President of Symbiotica srl and Scientific Director of the Talsef Laboratory at the University of Bari.</p> 1676 </div> 1677 </div> 1678 <div class="cg-res-card"> 1679 <div class="cg-res-card-img-wrap"> 1680 <img class="cg-res-card-img" src="/images/team-renzulli-2.png" alt="Pietro Alexander Renzulli" /> 1681 </div> 1682 <div class="cg-res-card-info"> 1683 <h3>Pietro Alexander Renzulli</h3> 1684 <p>Engineer and Full Professor of Commodity Science at the Ionian Department of the University of Bari Aldo Moro. MSc in Mechanical Engineering from Imperial College London, PhD from the Polytechnic University of Bari. Recognised as an LCA expert by the Joint Research Centre of the European Union. Coordinator of the Young Researchers Award of the Italian LCA Network. Author of more than 100 scientific publications.</p> 1685 </div> 1686 </div> 1687 <div class="cg-res-card"> 1688 <div class="cg-res-card-img-wrap"> 1689 <img class="cg-res-card-img" src="/images/team-spizzirri.png" alt="Umile Gianfranco Spizzirri" /> 1690 </div> 1691 <div class="cg-res-card-info"> 1692 <h3>Umile Gianfranco Spizzirri</h3> 1693 <p>Senior Chemist and Tenure-track Assistant Professor (RTDB) in Commodity Sciences at the University of Bari Aldo Moro. Over two decades of experience in Analytical Chemistry, Polymer Chemistry and sustainable technologies. PhD in "Methodologies for the Development of Molecules of Pharmacological Interest". Visiting Scientist at the University of Texas at Austin. Co-founder of the spin-off Symbiotica Srl. H-index 43 (Scopus), nearly 300 scientific publications.</p> 1694 </div> 1695 </div> 1696 </div> 1697 1698 </div> 1699 1700 <!-- FOOTER --> 1701 <footer class="cg-res-footer"> 1702 <div class="cg-res-footer-logos"> 1703 <img src="/images/logo-circulagris.png" alt="CIRCULAGRIS" style="height: 50px; filter: brightness(0) invert(1);" /> 1704 </div> 1705 <div class="cg-res-footer-logos" style="margin-top: 16px;"> 1706 <img src="/images/footer-eu-white.png" alt="Finanziato dall'Unione europea - NextGenerationEU" style="height:56px;" /> 1707 <img src="/images/footer-mur-white.png" alt="Ministero dell'Università e della Ricerca" style="height:42px;" />
1708 <img src="/images/footer-italiadomani-white.png" alt="Italia Domani - PNRR" style="height:72px;" /> 1709 <img src="/images/logo-uda.png" alt="UdA" style="height:80px;" /> 1710 <img src="/images/logo-unime-white.png" alt="UNIME" style="height:76px;" /> 1711 <img src="/images/logo-uniba.png" alt="UNIBA" style="height:80px;" /> 1712 </div> 1713 <p style="margin-top: 20px;">© 2024 CIRCULAGRIS — PRIN 2022 Project | <a href="https://www.unich.it" target="_blank" style="color:rgba(255,255,255,0.7);text-decoration:none;">Università degli Studi "G. d'Annunzio" Chieti-Pescara</a></p> 1714 <div style="max-width:800px;margin:16px auto 0;font-size:0.72rem;color:rgba(255,255,255,0.35);line-height:1.6;"> 1715 Project "Towards circular and sustainable agri-food systems: metrics for assessment (CIRCULAGRIS)" PRIN2022 (Research Project of National Interest) funded by the European Union - Next Generation EU, Mission 4, Component 2, CUP D53D23011220006. 1716 </div> 1717 <div style="margin-top: 16px; font-size: 0.72rem; color: rgba(255,255,255,0.5);"> 1718 <a href="https://www.sitiwebshop.it/?utm_source=sito-cliente&utm_medium=circulagris-universita-ch" target="_blank" rel="noopener noreferrer" style="color: rgba(255,255,255,0.8); text-decoration: underline;">Powered by Webshop Human AI Automation</a> 1719 </div> 1720 </footer> 1721 1722</div> 1723`}})),y2=()=>(x.useEffect(()=>{let e=0;const t=document.querySelectorAll(".cg-conv-slide"),i=t.length;if(!i)return;function n(a){t.forEach((l,c)=>{l.style.opacity=c===a?"1":"0",l.style.transform=c===a?"scale(1)":"scale(1.05)"}),document.querySelectorAll(".cg-conv-slider-dot").forEach((l,c)=>l.classList.toggle("active",c===a)),e=a}n(0);const r=setInterval(()=>{n((e+1)%i)},4e3);window.cgConvSliderPrev=()=>n((e-1+i)%i),window.cgConvSliderNext=()=>n((e+1)%i),window.cgConvSliderGoTo=a=>n(a);function o(){const a=document.querySelector(".cg-conv-inst-bar"),s=document.querySelector(".cg-conv-nav");a&&s&&(s.style.top=a.offsetHeight+"px")}return requestAnimationFrame(o),setTimeout(o,100),setTimeout(o,500),window.addEventListener("resize",o),window.addEventListener("load",o),()=>{clearInterval(r),window.removeEventListener("resize",o),window.removeEventListener("load",o)}},[]),I.jsx("div",{dangerouslySetInnerHTML:{__html:` 1724<style> 1725.cg-conv-root *, .cg-conv-root *::before, .cg-conv-root *::after { margin: 0; padding: 0; box-sizing: border-box; } 1726.cg-conv-root { 1727 font-family: Calibri, 'Segoe UI', sans-serif; 1728 color: #3a3a4a; line-height: 1.6; background: #FAF8F2; 1729 min-height: 100vh; 1730} 1731.cg-conv-root img { max-width: 100%; } 1732 1733/* âââ INSTITUTIONAL BAR âââ */ 1734.cg-conv-inst-bar { 1735 position: fixed; top: 0; left: 0; right: 0; z-index: 101; 1736 background: #2A65AF; 1737 display: flex; align-items: center; justify-content: center; 1738 gap: 28px; padding: 14px 40px; 1739 border-bottom: 1px solid rgba(0,0,0,0.08); 1740 flex-wrap: wrap; 1741} 1742.cg-conv-inst-bar img { height: 64px; object-fit: contain; flex-shrink: 0; } 1743.cg-conv-inst-bar .cg-conv-divider { 1744 width: 1px; height: 48px; background: rgba(255,255,255,0.3); flex-shrink: 0; 1745} 1746 1747/* âââ NAV âââ */ 1748.cg-conv-nav { 1749 position: fixed; top: 92px; left: 0; right: 0; z-index: 100; 1750 background: rgba(255,255,255,0.92); 1751 backdrop-filter: blur(16px); 1752 padding: 18px 60px; 1753 display: flex; align-items: center; justify-content: space-between; 1754 border-bottom: 1px solid rgba(0,0,0,0.06); 1755 box-shadow: 0 2px 20px rgba(0,0,0,0.04); 1756} 1757.cg-conv-nav-logo { display: flex; align-items: center; } 1758.cg-conv-nav-logo img { height: 56px; object-fit: contain; margin-right: 16px; } 1759.cg-conv-nav-links { display: flex; gap: 32px; list-style: none; } 1760.cg-conv-nav-links a { 1761 color: #555; text-decoration: none; font-size: 0.82rem; 1762 font-weight: 600; letter-spacing: 1.5px; text-transform: uppercase; 1763 transition: color 0.3s; position: relative; cursor: pointer; 1764} 1765.cg-conv-nav-links a:hover { color: #8B7535; } 1766.cg-conv-nav-links a::after { 1767 content:''; position: absolute; bottom: -6px; left: 0; width: 0; height: 2px; 1768 background: #8B7535; transition: width 0.3s; 1769} 1770.cg-conv-nav-links a:hover::after { width: 100%; } 1771.cg-conv-nav-links a.active { color: #8B7535; } 1772.cg-conv-nav-links a.active::after { width: 100%; } 1773 1774/* âââ BURGER âââ */ 1775.cg-conv-burger { 1776 display: none; flex-direction: column; gap: 5px; cursor: pointer; 1777 padding: 8px; z-index: 200; 1778} 1779.cg-conv-burger span { 1780 display: block; width: 24px; height: 2px; background: #3a3a4a; 1781 transition: all 0.3s; border-radius: 2px; 1782} 1783.cg-conv-mobile-menu { 1784 display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; 1785 background: #FAF8F2; z-index: 190; 1786 flex-direction: column; align-items: center; justify-content: center; 1787 gap: 24px; list-style: none; overflow: hidden; 1788} 1789.cg-conv-mobile-menu.open { display: flex; } 1790.cg-conv-mobile-menu a { 1791 color: #3a3a4a; text-decoration: none; font-size: 1.1rem; 1792 font-weight: 700; letter-spacing: 2px; text-transform: uppercase; 1793 font-family: Calibri, 'Segoe UI', sans-serif; cursor: pointer; 1794 transition: color 0.3s; 1795} 1796.cg-conv-mobile-menu a:hover { color: #8B7535; } 1797.cg-conv-mobile-close { 1798 position: absolute; top: 20px; right: 20px; 1799 width: 40px; height: 40px; cursor: pointer; 1800 display: flex; align-items: center; justify-content: center; 1801 background: none; border: none; z-index: 200; 1802} 1803.cg-conv-mobile-close::before, .cg-conv-mobile-close::after {
1804 content: ''; position: absolute; 1805 width: 24px; height: 2px; background: #3a3a4a; border-radius: 2px; 1806} 1807.cg-conv-mobile-close::before { transform: rotate(45deg); } 1808.cg-conv-mobile-close::after { transform: rotate(-45deg); } 1809 1810/* âââ HEADER âââ */ 1811.cg-conv-header { 1812 background: #2A65AF; 1813 padding: 200px 60px 60px; text-align: center; 1814} 1815.cg-conv-header h1 { 1816 font-size: clamp(1.8rem, 3vw, 2.8rem); font-weight: 800; 1817 color: #fff; text-transform: uppercase; letter-spacing: 2px; margin-bottom: 12px; 1818} 1819.cg-conv-header p { 1820 font-size: 1rem; color: rgba(255,255,255,0.7); max-width: 650px; margin: 0 auto; 1821} 1822 1823/* âââ SLIDESHOW âââ */ 1824.cg-conv-slideshow-section { 1825 max-width: 1100px; margin: 0 auto; padding: 40px 40px 60px; 1826} 1827.cg-conv-slideshow-title { 1828 font-size: 1.4rem; font-weight: 800; color: #1a1a2e; 1829 text-transform: uppercase; letter-spacing: 1px; margin-bottom: 8px; 1830} 1831.cg-conv-slideshow-sub { 1832 font-size: 0.95rem; color: #777; margin-bottom: 24px; 1833} 1834.cg-conv-slider-wrap { 1835 position: relative; width: 100%; max-width: 600px; margin: 0 auto; 1836 aspect-ratio: 16/10; border-radius: 16px; overflow: hidden; 1837 background: #eee; 1838} 1839.cg-conv-slide.cg-fit-contain { object-fit: contain; background: #f4f1e8; } 1840.cg-conv-slide { 1841 position: absolute; top: 0; left: 0; width: 100%; height: 100%; 1842 object-fit: cover; opacity: 0; 1843 transition: opacity 0.8s ease, transform 0.8s ease; 1844} 1845.cg-conv-slider-arrow { 1846 position: absolute; top: 50%; transform: translateY(-50%); 1847 width: 44px; height: 44px; border-radius: 50%; 1848 background: rgba(255,255,255,0.85); border: none; 1849 cursor: pointer; font-size: 1.2rem; color: #1a1a2e; 1850 display: flex; align-items: center; justify-content: center; 1851 box-shadow: 0 4px 12px rgba(0,0,0,0.15); 1852 transition: background 0.3s; z-index: 5; 1853} 1854.cg-conv-slider-arrow:hover { background: #fff; } 1855.cg-conv-slider-arrow.left { left: 16px; } 1856.cg-conv-slider-arrow.right { right: 16px; } 1857.cg-conv-slider-dots { 1858 display: flex; justify-content: center; gap: 8px; margin-top: 16px; 1859} 1860.cg-conv-slider-dot { 1861 width: 10px; height: 10px; border-radius: 50%; 1862 background: rgba(139,117,53,0.25); border: none; cursor: pointer; 1863 transition: background 0.3s, transform 0.3s; 1864} 1865.cg-conv-slider-dot.active { 1866 background: #8B7535; transform: scale(1.3); 1867} 1868 1869/* âââ CONTENT âââ */ 1870.cg-conv-section { 1871 max-width: 1100px; margin: 0 auto; padding: 40px 40px 60px; 1872} 1873 1874/* âââ UNI BLOCK âââ */ 1875.cg-conv-uni-block { margin-bottom: 64px; } 1876.cg-conv-uni-header { 1877 display: flex; align-items: center; gap: 16px; 1878 margin-bottom: 8px; 1879} 1880.cg-conv-uni-header img { height: 50px; border-radius: 50%; } 1881.cg-conv-uni-header h2 { 1882 font-size: 1.3rem; font-weight: 800; color: #1a1a2e; 1883 text-transform: uppercase; letter-spacing: 1px; 1884} 1885.cg-conv-uni-subtitle { 1886 font-size: 0.82rem; color: #8B7535; font-weight: 600; 1887 letter-spacing: 1px; margin-bottom: 24px; 1888} 1889.cg-conv-uni-divider { 1890 width: 60px; height: 3px; background: linear-gradient(90deg, #8B7535, #8E4585); 1891 margin-bottom: 28px; border-radius: 2px; 1892} 1893 1894/* âââ CONF ITEMS âââ */ 1895.cg-conv-item { 1896 padding: 24px 0; 1897 border-bottom: 1px solid rgba(139,117,53,0.12); 1898} 1899.cg-conv-item:last-child { border-bottom: none; } 1900.cg-conv-event { 1901 font-size: 1.05rem; font-weight: 700; color: #1a1a2e; 1902 margin-bottom: 4px; line-height: 1.4; 1903} 1904.cg-conv-details { 1905 font-size: 0.82rem; color: #8B7535; font-weight: 600; 1906 margin-bottom: 8px; 1907} 1908.cg-conv-type { 1909 display: inline-block; 1910 font-size: 0.7rem; font-weight: 700; text-transform: uppercase; 1911 padding: 3px 10px; border-radius: 20px; letter-spacing: 0.5px; 1912 margin-bottom: 8px; 1913} 1914.cg-conv-type-oral { background: rgba(142,69,133,0.12); color: #8E4585; } 1915.cg-conv-type-poster { background: rgba(139,117,53,0.12); color: #8B7535; } 1916.cg-conv-authors { 1917 font-size: 0.82rem; color: #777; line-height: 1.5; 1918} 1919.cg-conv-title-text { 1920 font-style: italic; color: #555; font-size: 0.88rem; 1921 margin-top: 4px; 1922} 1923 1924/* âââ FOOTER âââ */ 1925.cg-conv-footer { 1926 background: #2A65AF; padding: 40px 60px; text-align: center; 1927 color: rgba(255,255,255,0.5); font-size: 0.78rem; line-height: 1.8; 1928} 1929.cg-conv-footer-logos { 1930 display: flex; justify-content: center; gap: 24px; flex-wrap: wrap; 1931 align-items: center; 1932} 1933.cg-conv-footer-logos img { height: 44px; } 1934.cg-conv-footer a { color: rgba(255,255,255,0.7); text-decoration: none; } 1935.cg-conv-footer-funding { 1936 max-width: 800px; margin: 16px auto 0; font-size: 0.72rem; 1937 color: rgba(255,255,255,0.35); line-height: 1.6; 1938} 1939 1940@media (max-width: 900px) { 1941 .cg-conv-hide-mobile { display: none !important; } 1942 .cg-conv-nav-links { display: none; } 1943 .cg-conv-burger { display: flex; } 1944 .cg-conv-inst-bar { padding: 10px 20px; gap: 14px; flex-wrap: wrap; } 1945 .cg-conv-inst-bar img { height: 44px; } 1946 .cg-conv-inst-bar .cg-conv-divider { height: 32px; } 1947} 1948@media (max-width: 640px) { 1949 .cg-conv-header { padding: 220px 10px 40px; } 1950 .cg-conv-section, .cg-conv-slideshow-section { padding: 30px 10px; text-align: center; } 1951 .cg-conv-inst-bar { padding: 8px 6px; gap: 8px; justify-content: space-between; flex-wrap: nowrap; } 1952 .cg-conv-inst-bar img { height: 32px !important; flex-shrink: 1; min-width: 0; object-fit: contain; } 1953 .cg-conv-inst-bar .cg-logo-italiadomani { height: 58px !important; } 1954 .cg-conv-inst-bar .cg-conv-divider { display: flex; height: 28px; background: rgba(255,255,255,0.3); width: 1px; flex-shrink: 0; } 1955 .cg-conv-nav { top: auto; padding: 12px 10px; } 1956 .cg-conv-event { font-size: 0.92rem; text-align: center; } 1957 .cg-conv-item { padding: 16px 0; text-align: center; }
1958 .cg-conv-uni-header { justify-content: center; text-align: center; } 1959 .cg-conv-uni-subtitle { text-align: center; } 1960 .cg-conv-uni-divider { margin-left: auto; margin-right: auto; } 1961 .cg-conv-slideshow-title { text-align: center; } 1962 .cg-conv-slideshow-sub { text-align: center; } 1963 .cg-conv-footer { padding: 30px 10px; } 1964 .cg-conv-footer-logos { gap: 12px; } 1965 .cg-conv-footer-logos img { height: 32px; } 1966} 1967</style> 1968 1969<div class="cg-conv-root"> 1970 1971 <!-- INSTITUTIONAL BAR --> 1972 <div class="cg-conv-inst-bar"> 1973 <img src="/images/footer-eu-white.png" alt="Finanziato dall'Unione europea - NextGenerationEU" style="height:56px;" /> 1974 <div class="cg-conv-divider"></div> 1975 <img src="/images/footer-mur-white.png" alt="MUR" style="height:42px;" /> 1976 <div class="cg-conv-divider"></div> 1977 <img src="/images/footer-italiadomani-white.png" alt="Italia Domani" style="height:72px;" class="cg-logo-italiadomani" /> 1978 <div class="cg-conv-divider cg-conv-hide-mobile"></div> 1979 <img src="/images/logo-uda.png" alt="UdA" style="height:80px;" class="cg-conv-hide-mobile" /> 1980 <img src="/images/logo-unime-white.png" alt="UNIME" style="height:76px;" class="cg-conv-hide-mobile" /> 1981 <img src="/images/logo-uniba.png" alt="UNIBA" style="height:80px;" class="cg-conv-hide-mobile" /> 1982 </div> 1983 1984 <!-- NAV --> 1985 <nav class="cg-conv-nav"> 1986 <a class="cg-conv-nav-logo" href="https://www.circulagris.com/" target="_top"><img src="/images/logo-circulagris.png" alt="CIRCULAGRIS" /></a> 1987 <ul class="cg-conv-nav-links"> 1988 <li><a href="https://www.circulagris.com/" target="_top">Home</a></li> 1989 <li><a href="https://www.circulagris.com/researchers/" target="_top">Researchers</a></li> 1990 <li><a href="https://www.circulagris.com/conferences/" target="_top" class="active">Conferences</a></li> 1991 <li><a href="https://www.circulagris.com/workshops/" target="_top">Workshops</a></li> 1992 <li><a href="https://www.circulagris.com/publications/" target="_top">Publications</a></li> 1993 <li class="cg-lang-switch"><a href="https://www.circulagris.com/conferenze/" target="_top" style="background:#8B7535;color:#fff !important;padding:6px 14px;border-radius:20px;font-weight:700;cursor:pointer;">IT</a></li> 1994 </ul> 1995 <div class="cg-conv-burger" onclick="(function(){var m=document.getElementById('cgConvMobileMenu');m.classList.toggle('open')})()"> 1996 <span></span><span></span><span></span> 1997 </div> 1998 </nav> 1999 2000 <!-- MOBILE MENU --> 2001 <ul class="cg-conv-mobile-menu" id="cgConvMobileMenu"> 2002 <button class="cg-conv-mobile-close" onclick="document.getElementById('cgConvMobileMenu').classList.remove('open')" aria-label="Close"></button> 2003 <li><a href="https://www.circulagris.com/" target="_top">Home</a></li> 2004 <li><a href="https://www.circulagris.com/researchers/" target="_top">Researchers</a></li> 2005 <li><a href="https://www.circulagris.com/conferences/" target="_top">Conferences</a></li> 2006 <li><a href="https://www.circulagris.com/workshops/" target="_top">Workshops</a></li> 2007 <li><a href="https://www.circulagris.com/publications/" target="_top">Publications</a></li> 2008 <li class="cg-lang-switch"><a href="https://www.circulagris.com/conferenze/" target="_top" style="background:#8B7535;color:#fff !important;padding:6px 14px;border-radius:20px;font-weight:700;cursor:pointer;">IT</a></li> 2009 </ul> 2010 2011 <!-- HEADER --> 2012 <div class="cg-conv-header"> 2013 <h1>Conferences</h1> 2014 <p>Scientific contributions at Italian and international conferences.</p> 2015 </div> 2016 2017 2018 <!-- CONFERENCES LIST --> 2019 <div class="cg-conv-section"> 2020 2021 <div class="cg-conv-item"> 2022 <div class="cg-conv-event">30th Annual International Conference of ISDRS on Sustainable Development Research</div> 2023 <div class="cg-conv-details">10â14 June 2024 · Kathmandu, Nepal</div> 2024 <span class="cg-conv-type cg-conv-type-oral">Oral Presentation</span> 2025 <div class="cg-conv-authors">Raggi A., Arzoumanidis I., Petti L., Simboli A., Di Capua R., Renzulli P.A., Spizzirri G.U., Notarnicola B., Lanuzza F., Mondello G., Saija G., Salomone R.</div> 2026 <div class="cg-conv-title-text">"The CIRCULAGRIS project for developing metrics for circularity and sustainability in Italian agri-food systems"</div>
2027 </div> 2028 2029 <div class="cg-conv-item"> 2030 <div class="cg-conv-event">30th Annual International Conference of ISDRS on Sustainable Development Research</div> 2031 <div class="cg-conv-details">10â14 June 2024 · Kathmandu, Nepal</div> 2032 <span class="cg-conv-type cg-conv-type-poster">Poster Presentation</span> 2033 <div class="cg-conv-authors">Salomone R., Scandurra F., Mondello G., Saija G., Lanuzza F.</div> 2034 <div class="cg-conv-title-text">"Circularity and sustainability indicators for the agrifood sector: the case of olive oil supply chain"</div> 2035 </div> 2036 2037 <div class="cg-conv-item"> 2038 <div class="cg-conv-event">14th International Conference on Life Cycle Assessment of Food (LCA Food 2024)</div> 2039 <div class="cg-conv-details">8â12 September 2024 · Barcelona, Spain</div> 2040 <span class="cg-conv-type cg-conv-type-poster">Poster Presentation</span> 2041 <div class="cg-conv-authors">Raggi A., Arzoumanidis I., Petti L., Simboli A., Di Capua R., Renzulli P.A., Notarnicola B., Lanuzza F., Mondello G., Salomone R.</div> 2042 <div class="cg-conv-title-text">"Circularity and sustainability metrics for Italian agri-food systems: the CIRCULAGRIS project"</div> 2043 </div> 2044 2045 <div class="cg-conv-item"> 2046 <div class="cg-conv-event">18th Conference of the Italian LCA Network Association</div> 2047 <div class="cg-conv-details">3â5 July 2024 · Pescara, Italy</div> 2048 <span class="cg-conv-type cg-conv-type-poster">Poster Presentation</span> 2049 <div class="cg-conv-authors">Salomone R., Scandurra F., Mondello G., Saija G., Lanuzza F.</div> 2050 <div class="cg-conv-title-text">"Circularity metrics in the agri-food sector and olive oil industry: a scoping literature review"</div> 2051 </div> 2052 2053 <div class="cg-conv-item"> 2054 <div class="cg-conv-event">1st International Conference "Circular Economy: the Pathway towards a Sustainable Development"</div> 2055 <div class="cg-conv-details">12â13 September 2024 · Chania, Greece</div> 2056 <span class="cg-conv-type cg-conv-type-poster">Poster Presentation</span> 2057 <div class="cg-conv-authors">Raggi A., Arzoumanidis I., Petti L., Simboli A., Di Capua R., Renzulli P.A., Spizzirri G.U., Notarnicola B., Lanuzza F., Mondello G., Saija G., Salomone R.</div> 2058 <div class="cg-conv-title-text">"Measuring circularity and sustainability in Italian agri-food systems: the CIRCULAGRIS project"</div> 2059 </div> 2060 2061 <div class="cg-conv-item"> 2062 <div class="cg-conv-event">IAQUIS 2024 Conference</div> 2063 <div class="cg-conv-details">11â14 September 2024 · Viterbo, Italy</div> 2064 <span class="cg-conv-type cg-conv-type-oral">Oral Presentation</span> 2065 <div class="cg-conv-authors">Esposito B., Notarnicola B., Di Capua R., Renzulli P.A.</div> 2066 <div class="cg-conv-title-text">"Unravelling circular best practices in the pasta and bread supply chains: insights from Italy"</div> 2067 </div> 2068 2069 <div class="cg-conv-item"> 2070 <div class="cg-conv-event">IAQUIS 2024 Conference</div> 2071 <div class="cg-conv-details">11â14 September 2024 · Viterbo, Italy</div> 2072 <span class="cg-conv-type cg-conv-type-oral">Oral Presentation</span> 2073 <div class="cg-conv-authors">Salomone R., Scandurra F., Mondello G., Saija G., Lanuzza F.</div> 2074 <div class="cg-conv-title-text">"Circular economy metrics in the agri-food sector: an applicative study in the olive oil industry"</div> 2075 </div> 2076 2077 <div class="cg-conv-item"> 2078 <div class="cg-conv-event">32nd Congress of the Italian Academy of Commodity Science</div> 2079 <div class="cg-conv-details">19â20 September 2024 · Lecce, Italy</div> 2080 <span class="cg-conv-type cg-conv-type-oral">Oral Presentation</span> 2081 <div class="cg-conv-authors">Salomone R., Scandurra F., Mondello G., Saija G., Lanuzza F.</div> 2082 <div class="cg-conv-title-text">"Measuring circularity and sustainability in the olive oil supply chain: an overview of available metrics"</div> 2083 </div> 2084 2085 <div class="cg-conv-item"> 2086 <div class="cg-conv-event">19th Conference of the Italian LCA Network Association</div> 2087 <div class="cg-conv-details">19â21 March 2025 · Cortina d'Ampezzo, Italy</div>
2088 <span class="cg-conv-type cg-conv-type-oral">Oral Presentation</span> 2089 <div class="cg-conv-authors">Raggi A., Salomone R., Notarnicola B., Arzoumanidis I., Astuto F., Di Capua R., Esposito B., Lanuzza F., Mondello G., Petti L., Renzulli P.A., Saija G., Scandurra F., Simboli A., Tragnone B.M.</div> 2090 <div class="cg-conv-title-text">"Measuring circularity in agri-food: a methodological proposal for the selection and classification of indicators"</div> 2091 </div> 2092 2093 <div class="cg-conv-item"> 2094 <div class="cg-conv-event">19th Conference of the Italian LCA Network Association</div> 2095 <div class="cg-conv-details">19â21 March 2025 · Cortina d'Ampezzo, Italy</div> 2096 <span class="cg-conv-type cg-conv-type-poster">Poster Presentation</span> 2097 <div class="cg-conv-authors">Arzoumanidis I., Petti L., Simboli A., Tragnone B.M., Raggi A.</div> 2098 <div class="cg-conv-title-text">"Circularity indicators for the agri-food sector and the wine industry"</div> 2099 </div> 2100 2101 <div class="cg-conv-item"> 2102 <div class="cg-conv-event">19th Conference of the Italian LCA Network Association</div> 2103 <div class="cg-conv-details">19â21 March 2025 · Cortina d'Ampezzo, Italy</div> 2104 <span class="cg-conv-type cg-conv-type-poster">Poster Presentation</span> 2105 <div class="cg-conv-authors">Salomone R., Scandurra F., Mondello G., Saija G., Lanuzza F.</div> 2106 <div class="cg-conv-title-text">"Circular economy in the olive oil industry: evaluating best practices through life cycle assessment"</div> 2107 </div> 2108 2109 <div class="cg-conv-item"> 2110 <div class="cg-conv-event">ECOMED 2025 â Seminario "Guidare la Transizione Circolare: Innovazione, Sostenibilità e Metodi di Valutazione"</div> 2111 <div class="cg-conv-details">15 April 2025 · Catania, Italy</div> 2112 <span class="cg-conv-type cg-conv-type-oral">Oral Presentation</span> 2113 <div class="cg-conv-authors">Salomone R.</div> 2114 <div class="cg-conv-title-text">"Valutazione della sostenibilità e circolarità nelle filiere agro-alimentari: il progetto CIRCULAGRIS"</div> 2115 </div> 2116 2117 <div class="cg-conv-item"> 2118 <div class="cg-conv-event">Second openLCA.conf</div> 2119 <div class="cg-conv-details">9â11 April 2025 · Berlin, Germany</div> 2120 <span class="cg-conv-type cg-conv-type-poster">Poster Presentation</span> 2121 <div class="cg-conv-authors">Tragnone B.M., Arzoumanidis I., Petti L., Simboli A., Raggi A.</div> 2122 <div class="cg-conv-title-text">"Toward circular and sustainable wine supply chains: a social insight"</div> 2123 </div> 2124 2125 <div class="cg-conv-item"> 2126 <div class="cg-conv-event">31st Annual Conference of the Sustainable Development Research Society (ISDRS)</div> 2127 <div class="cg-conv-details">8â12 July 2025 · Budapest, Hungary</div> 2128 <span class="cg-conv-type cg-conv-type-oral">Oral Presentation</span> 2129 <div class="cg-conv-authors">Raggi A., Salomone R., Notarnicola B., Arzoumanidis I., Astuto F., Di Capua R., Esposito B., Lanuzza F., Mondello G., Petti L., Renzulli P.A., Saija G., Scandurra F., Simboli A., Tragnone B.M.</div> 2130 <div class="cg-conv-title-text">"Measuring circularity in agri-food: a methodological proposal for the selection and classification of indicators"</div> 2131 </div> 2132 2133 <div class="cg-conv-item"> 2134 <div class="cg-conv-event">2nd International Conference "Circular Economy: the Pathway towards a Sustainable Development"</div> 2135 <div class="cg-conv-details">17â19 September 2025 · Chania, Greece</div> 2136 <span class="cg-conv-type cg-conv-type-poster">Poster Presentation</span> 2137 <div class="cg-conv-authors">Tragnone B.M., Arzoumanidis I., Petti L., Simboli A., Raggi A.</div> 2138 <div class="cg-conv-title-text">"Identification of agri-food Social Life Cycle Assessment material themes"</div> 2139 </div> 2140 2141 <div class="cg-conv-item"> 2142 <div class="cg-conv-event">Workshop "Application of Life Cycle Thinking to the agri-food sector" â Italian LCA Network Association</div> 2143 <div class="cg-conv-details">24â25 September 2025 · Reggio Calabria, Italy</div>
2144 <span class="cg-conv-type cg-conv-type-oral">Oral Presentation</span> 2145 <div class="cg-conv-authors">Arzoumanidis I., Tragnone B.M., Petti L., Chiusano L., Raggi A.</div> 2146 <div class="cg-conv-title-text">"Environmental sustainability of circular practices in the wine supply chain: insights from a case study"</div> 2147 </div> 2148 2149 <div class="cg-conv-item"> 2150 <div class="cg-conv-event">41st Conference of the Italian Academy of Business Administration</div> 2151 <div class="cg-conv-details">22â23 January 2026 · Milan, Italy</div> 2152 <span class="cg-conv-type cg-conv-type-oral">Oral Presentation</span> 2153 <div class="cg-conv-authors">Tragnone B.M., Arzoumanidis I., Petti L., Chiusano L., Raggi A.</div> 2154 <div class="cg-conv-title-text">"Circular and sustainable solutions in the wine sector: a case study"</div> 2155 </div> 2156 2157 <div class="cg-conv-item"> 2158 <div class="cg-conv-event">Re-Think â Circular Economy Forum 2024</div> 2159 <div class="cg-conv-details">2â4 October 2024 · Taranto, Italy</div> 2160 <span class="cg-conv-type cg-conv-type-oral">Oral Presentation</span> 2161 <div class="cg-conv-authors">Notarnicola B., Renzulli P.A., Di Capua R., Esposito B.</div> 2162 <div class="cg-conv-title-text">"Necessità di una metrica per quantificare la sostenibilità derivante dalla valorizzazione di materiali e residui: il ruolo della LCA"</div> 2163 </div> 2164 2165 <div class="cg-conv-item"> 2166 <div class="cg-conv-event">19th Conference of the Italian LCA Network Association</div> 2167 <div class="cg-conv-details">19â21 March 2025 · Cortina d'Ampezzo, Italy</div> 2168 <span class="cg-conv-type cg-conv-type-poster">Poster Presentation</span> 2169 <div class="cg-conv-authors">Esposito B., Notarnicola B., Di Capua R., Renzulli P.A.</div> 2170 <div class="cg-conv-title-text">"Il Life Cycle Costing come Strumento per l'Economia Circolare nel Settore Agroalimentare: Una Revisione Sistematica della Letteratura" â In press</div> 2171 </div> 2172 2173 <div class="cg-conv-item"> 2174 <div class="cg-conv-event">AFLUM 2026 International Conference â "The New Sustainability Agenda: Addressing Environmental and Social Challenges â Climate, Circularity, Biodiversity and Equity in Uncertain Times"</div> 2175 <div class="cg-conv-details">4â5 June 2026 · Bari, Italy</div> 2176 <span class="cg-conv-type cg-conv-type-oral">Oral Presentation</span> 2177 <div class="cg-conv-authors">Notarnicola B., Astuto F., De Gennaro S., Di Capua R., Esposito B., Renzulli P.A., Spizzirri U.G., Stasi G.</div> 2178 <div class="cg-conv-title-text">"Integrating Environmental and Circularity Metrics in the Pasta Supply Chain: a Comparative Assessment of Circular and Linear Alternatives"</div> 2179 </div> 2180 2181 </div> 2182 2183 2184 <!-- PHOTO SLIDESHOW --> 2185 <div class="cg-conv-slideshow-section"> 2186 <h3 class="cg-conv-slideshow-title">Photo Gallery</h3> 2187 <p class="cg-conv-slideshow-sub">Moments from our conference participations.</p> 2188 <div class="cg-conv-slider-wrap"> 2189 <img class="cg-conv-slide" src="/images/conf-milano-1.jpg" alt="AIDEA 2026 - Milan" /> 2190 <img class="cg-conv-slide" src="/images/conf-cortina-new-1.jpg" alt="XIX Convegno Rete Italiana LCA - Cortina d'Ampezzo" /> 2191 <img class="cg-conv-slide" src="/images/conf-cortina-new-2.jpg" alt="XIX Convegno Rete Italiana LCA - Cortina d'Ampezzo" /> 2192 <img class="cg-conv-slide" src="/images/conf-barcellona-new.jpg" alt="LCA Food 2024 - Barcelona" /> 2193 <img class="cg-conv-slide" src="/images/conf-messina-welcome.jpg" alt="Institutional Welcome - University of Messina" /> 2194 <img class="cg-conv-slide" src="/images/conf-messina-opening.jpg" alt="Opening session - University of Messina" /> 2195 <img class="cg-conv-slide" src="/images/conf-messina-platea.jpg" alt="Audience - University of Messina" /> 2196 <img class="cg-conv-slide cg-fit-contain" src="/images/conf-messina-registration.jpg" alt="Registration desk - University of Messina" /> 2197 <img class="cg-conv-slide cg-fit-contain" src="/images/conf-rilca-2025.jpg" alt="RILCA 2025" /> 2198 <img class="cg-conv-slide" src="/images/conf-rethink-tondo.jpg" alt="ReThink - University of Bari Aldo Moro" /> 2199 <img class="cg-conv-slide cg-fit-contain" src="/images/conf-unich.jpg" alt="Workshop - G. d'Annu
2199nzio University of Chieti-Pescara" /> 2200 <img class="cg-conv-slide" src="/images/conf-uniba.jpg" alt="Workshop - University of Bari Aldo Moro" /> 2201 <button class="cg-conv-slider-arrow left" onclick="cgConvSliderPrev()">â</button> 2202 <button class="cg-conv-slider-arrow right" onclick="cgConvSliderNext()">â</button> 2203 </div> 2204 <div class="cg-conv-slider-dots"> 2205 <button class="cg-conv-slider-dot" onclick="cgConvSliderGoTo(0)"></button> 2206 <button class="cg-conv-slider-dot" onclick="cgConvSliderGoTo(1)"></button> 2207 <button class="cg-conv-slider-dot" onclick="cgConvSliderGoTo(2)"></button> 2208 <button class="cg-conv-slider-dot" onclick="cgConvSliderGoTo(3)"></button> 2209 <button class="cg-conv-slider-dot" onclick="cgConvSliderGoTo(4)"></button> 2210 <button class="cg-conv-slider-dot" onclick="cgConvSliderGoTo(5)"></button> 2211 <button class="cg-conv-slider-dot" onclick="cgConvSliderGoTo(6)"></button> 2212 <button class="cg-conv-slider-dot" onclick="cgConvSliderGoTo(7)"></button> 2213 <button class="cg-conv-slider-dot" onclick="cgConvSliderGoTo(8)"></button> 2214 <button class="cg-conv-slider-dot" onclick="cgConvSliderGoTo(9)"></button> 2215 <button class="cg-conv-slider-dot" onclick="cgConvSliderGoTo(10)"></button> 2216 <button class="cg-conv-slider-dot" onclick="cgConvSliderGoTo(11)"></button> 2217 </div> 2218 </div> 2219 2220 <!-- FOOTER --> 2221 <footer class="cg-conv-footer"> 2222 <div class="cg-conv-footer-logos"> 2223 <img src="/images/logo-circulagris.png" alt="CIRCULAGRIS" style="height: 50px; filter: brightness(0) invert(1);" /> 2224 </div> 2225 <div class="cg-conv-footer-logos" style="margin-top: 16px;"> 2226 <img src="/images/footer-eu-white.png" alt="Finanziato dall'Unione europea - NextGenerationEU" style="height:56px;" /> 2227 <img src="/images/footer-mur-white.png" alt="Ministero dell'Università e della Ricerca" style="height:42px;" /> 2228 <img src="/images/footer-italiadomani-white.png" alt="Italia Domani - PNRR" style="height:72px;" /> 2229 <img src="/images/logo-uda.png" alt="UdA" style="height:80px;" /> 2230 <img src="/images/logo-unime-white.png" alt="UNIME" style="height:76px;" /> 2231 <img src="/images/logo-uniba.png" alt="UNIBA" style="height:80px;" /> 2232 </div> 2233 <p style="margin-top: 20px;">© 2024 CIRCULAGRIS â PRIN 2022 Project | <a href="https://www.unich.it" target="_blank">Università degli Studi "G. d'Annunzio" Chieti-Pescara</a></p> 2234 <div class="cg-conv-footer-funding"> 2235 Project "Towards circular and sustainable agri-food systems: metrics for assessment (CIRCULAGRIS)" PRIN2022 (Research Project of National Interest) funded by the European Union - Next Generation EU, Mission 4, Component 2, CUP D53D23011220006. 2236 </div> 2237 <div style="margin-top: 16px; font-size: 0.72rem; color: rgba(255,255,255,0.5);"> 2238 <a href="https://www.sitiwebshop.it/?utm_source=sito-cliente&utm_medium=circulagris-universita-ch" target="_blank" rel="noopener noreferrer" style="color: rgba(255,255,255,0.8); text-decoration: underline;">Powered by Webshop Human AI Automation</a> 2239 </div> 2240 </footer> 2241 2242</div> 2243`}})),b2=()=>(x.useEffect(()=>{function e(){const t=document.querySelector(".cg-pub-inst-bar"),i=document.querySelector(".cg-pub-nav");t&&i&&(i.style.top=t.offsetHeight+"px")}return requestAnimationFrame(e),setTimeout(e,100),setTimeout(e,500),window.addEventListener("resize",e),window.addEventListener("load",e),()=>{window.removeEventListener("resize",e),window.removeEventListener("load",e)}},[]),I.jsx("div",{dangerouslySetInnerHTML:{__html:` 2244<style> 2245.cg-pub-root *, .cg-pub-root *::before, .cg-pub-root *::after { margin: 0; padding: 0; box-sizing: border-box; } 2246.cg-pub-root { 2247 font-family: Calibri, 'Segoe UI', sans-serif; 2248 color: #3a3a4a; line-height: 1.6; background: #FAF8F2; 2249 min-height: 100vh; 2250} 2251.cg-pub-root img { max-width: 100%; } 2252 2253/* âââ INSTITUTIONAL BAR âââ */ 2254.cg-pub-inst-bar { 2255 position: fixed; top: 0; left: 0; right: 0; z-index: 101; 2256 background: #2A65AF; 2257 display: flex; align-items: center; justify-content: center; 2258 gap: 28px; padding: 14px 40px; 2259 border-bottom: 1px solid rgba(0,0,0,0.08); 2260 flex-wrap: wrap; 2261} 2262.cg-pub-inst-bar img { height: 64px; object-fit: contain; flex-shrink: 0; } 2263.cg-pub-inst-bar .cg-inst-divider { 2264 width: 1px; height: 48px; background: rgba(255,255,255,0.3); flex-shrink: 0; 2265} 2266 2267/* âââ NAV âââ */ 2268.cg-pub-nav { 2269 position: fixed; top: 92px; left: 0; right: 0; z-index: 100; 2270 background: rgba(255,255,255,0.92); 2271 backdrop-filter: blur(16px); 2272 padding: 18px 60px; 2273 display: flex; align-items: center; justify-content: space-between; 2274 border-bottom: 1px solid rgba(0,0,0,0.06); 2275 box-shadow: 0 2px 20px rgba(0,0,0,0.04); 2276} 2277.cg-pub-nav-logo { display: flex; align-items: center; } 2278.cg-pub-nav-logo img { height: 56px; object-fit: contain; margin-right: 16px; } 2279.cg-pub-nav-links { display: flex; gap: 32px; list-style: none; } 2280.cg-pub-nav-links a { 2281 color: #555; text-decoration: none; font-size: 0.82rem; 2282 font-weight: 600; letter-spacing: 1.5px; text-transform: uppercase; 2283 transition: color 0.3s; position: relative; cursor: pointer; 2284} 2285.cg-pub-nav-links a:hover { color: #8B7535; } 2286.cg-pub-nav-links a::after {
2287 content:''; position: absolute; bottom: -6px; left: 0; width: 0; height: 2px; 2288 background: #8B7535; transition: width 0.3s; 2289} 2290.cg-pub-nav-links a:hover::after { width: 100%; } 2291.cg-pub-nav-links a.active { color: #8B7535; } 2292.cg-pub-nav-links a.active::after { width: 100%; } 2293 2294/* âââ BURGER âââ */ 2295.cg-pub-burger { 2296 display: none; flex-direction: column; gap: 5px; cursor: pointer; 2297 padding: 8px; z-index: 200; 2298} 2299.cg-pub-burger span { 2300 display: block; width: 24px; height: 2px; background: #3a3a4a; 2301 transition: all 0.3s; border-radius: 2px; 2302} 2303.cg-pub-mobile-menu { 2304 display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; 2305 background: #FAF8F2; z-index: 190; 2306 flex-direction: column; align-items: center; justify-content: center; 2307 gap: 24px; list-style: none; overflow: hidden; 2308} 2309.cg-pub-mobile-menu.open { display: flex; } 2310.cg-pub-mobile-menu a { 2311 color: #3a3a4a; text-decoration: none; font-size: 1.1rem; 2312 font-weight: 700; letter-spacing: 2px; text-transform: uppercase; 2313 font-family: Calibri, 'Segoe UI', sans-serif; cursor: pointer; 2314 transition: color 0.3s; 2315} 2316.cg-pub-mobile-menu a:hover { color: #8B7535; } 2317.cg-pub-mobile-close { 2318 position: absolute; top: 20px; right: 20px; 2319 width: 40px; height: 40px; cursor: pointer; 2320 display: flex; align-items: center; justify-content: center; 2321 background: none; border: none; z-index: 200; 2322} 2323.cg-pub-mobile-close::before, .cg-pub-mobile-close::after { 2324 content: ''; position: absolute; 2325 width: 24px; height: 2px; background: #3a3a4a; border-radius: 2px; 2326} 2327.cg-pub-mobile-close::before { transform: rotate(45deg); } 2328.cg-pub-mobile-close::after { transform: rotate(-45deg); } 2329 2330/* âââ HEADER âââ */ 2331.cg-pub-header { 2332 background: #2A65AF; 2333 padding: 200px 60px 60px; text-align: center; 2334} 2335.cg-pub-header h1 { 2336 font-family: Calibri, 'Segoe UI', sans-serif; 2337 font-size: clamp(1.8rem, 3vw, 2.8rem); font-weight: 800; 2338 color: #fff; text-transform: uppercase; letter-spacing: 2px; margin-bottom: 12px; 2339} 2340.cg-pub-header p { 2341 font-size: 1rem; color: rgba(255,255,255,0.7); max-width: 600px; margin: 0 auto; 2342} 2343 2344/* âââ CONTENT âââ */ 2345.cg-pub-section { 2346 max-width: 1000px; margin: 0 auto; padding: 60px 40px; 2347} 2348.cg-pub-divider { 2349 width: 60px; height: 3px; background: linear-gradient(90deg, #8B7535, #8E4585); 2350 margin-bottom: 32px; border-radius: 2px; 2351} 2352.cg-pub-list { 2353 list-style: none; display: flex; flex-direction: column; gap: 20px; 2354 margin-bottom: 60px; 2355} 2356.cg-pub-item { 2357 background: #fff; border-radius: 12px; padding: 24px 28px; 2358 border: 1px solid rgba(0,0,0,0.06); 2359 border-left: 4px solid #8B7535; 2360 transition: all 0.3s; 2361} 2362.cg-pub-item:hover { 2363 transform: translateX(4px); 2364 box-shadow: 0 4px 20px rgba(0,0,0,0.06); 2365} 2366.cg-pub-item p { 2367 font-size: 0.85rem; color: #555; line-height: 1.7; 2368} 2369.cg-pub-item .cg-pub-authors { 2370 font-weight: 700; color: #3a3a4a; 2371} 2372.cg-pub-item .cg-pub-year { 2373 display: inline-block; background: #8B7535; color: #fff; 2374 font-size: 0.7rem; font-weight: 700; padding: 2px 10px; 2375 border-radius: 20px; margin-bottom: 8px; letter-spacing: 0.5px; 2376} 2377.cg-pub-item .cg-pub-venue { 2378 font-style: italic; color: #777; 2379} 2380/* âââ FOOTER âââ */ 2381.cg-pub-footer { 2382 background: #2A65AF; padding: 40px 60px; text-align: center; 2383 color: rgba(255,255,255,0.5); font-size: 0.78rem; line-height: 1.8; 2384} 2385.cg-pub-footer-logos { 2386 display: flex; align-items: center; justify-content: center; 2387 gap: 24px; margin-bottom: 16px; flex-wrap: wrap; 2388} 2389.cg-pub-footer-logos img { height: 44px; object-fit: contain; } 2390.cg-pub-footer a { color: rgba(255,255,255,0.7); text-decoration: none; } 2391.cg-pub-footer-funding { 2392 max-width: 800px; margin: 16px auto 0; font-size: 0.72rem; 2393 color: rgba(255,255,255,0.35); line-height: 1.6; 2394} 2395.cg-pub-footer p { color: rgba(255,255,255,0.5); } 2396 2397@media (max-width: 900px) { 2398 .cg-pub-hide-mobile { display: none !important; } 2399 .cg-pub-nav-links { display: none; } 2400 .cg-pub-burger { display: flex; } 2401 .cg-pub-inst-bar { padding: 10px 20px; gap: 14px; flex-wrap: wrap; } 2402 .cg-pub-inst-bar img { height: 44px; } 2403 .cg-pub-inst-bar .cg-inst-divider { height: 32px; } 2404} 2405@media (max-width: 640px) { 2406 .cg-pub-header { padding: 220px 10px 40px; } 2407 .cg-pub-section { padding: 40px 10px; text-align: center; } 2408 .cg-pub-inst-bar { padding: 8px 6px; gap: 8px; justify-content: space-between; flex-wrap: nowrap; } 2409 .cg-pub-inst-bar img { height: 32px !important; flex-shrink: 1; min-width: 0; object-fit: contain; } 2410 .cg-pub-inst-bar .cg-logo-italiadomani { height: 58px !important; } 2411 .cg-pub-inst-bar .cg-inst-divider { display: flex; height: 28px; background: rgba(255,255,255,0.3); width: 1px; flex-shrink: 0; } 2412 .cg-pub-nav { top: auto; padding: 12px 10px; } 2413 .cg-pub-item { padding: 16px 14px; text-align: center; } 2414 .cg-pub-item p { text-align: center; } 2415 .cg-pub-divider { margin-left: auto; margin-right: auto; } 2416 .cg-pub-footer { padding: 30px 10px; } 2417 .cg-pub-footer-logos { gap: 12px; } 2418 .cg-pub-footer-logos img { height: 32px; } 2419} 2420</style> 2421 2422<div class="cg-pub-root"> 2423 2424 <!-- INSTITUTIONAL BAR --> 2425 <div class="cg-pub-inst-bar"> 2426 <img src="/images/footer-eu-white.png" alt="Finanziato dall'Unione europea - NextGenerationEU" style="height:56px;" /> 2427 <div class="cg-inst-divider"></div> 2428 <img src="/images/footer-mur-white.png" alt="MUR" style="height:42px;" /> 2429 <div class="cg-inst-divider"></div>
2430 <img src="/images/footer-italiadomani-white.png" alt="Italia Domani" style="height:72px;" class="cg-logo-italiadomani" /> 2431 <div class="cg-inst-divider cg-pub-hide-mobile"></div> 2432 <img src="/images/logo-uda.png" alt="UdA" style="height:80px;" class="cg-pub-hide-mobile" /> 2433 <img src="/images/logo-unime-white.png" alt="UNIME" style="height:76px;" class="cg-pub-hide-mobile" /> 2434 <img src="/images/logo-uniba.png" alt="UNIBA" style="height:80px;" class="cg-pub-hide-mobile" /> 2435 </div> 2436 2437 <!-- NAV --> 2438 <nav class="cg-pub-nav"> 2439 <a class="cg-pub-nav-logo" href="https://www.circulagris.com/" target="_top"><img src="/images/logo-circulagris.png" alt="CIRCULAGRIS" /></a> 2440 <ul class="cg-pub-nav-links"> 2441 <li><a href="https://www.circulagris.com/" target="_top">Home</a></li> 2442 <li><a href="https://www.circulagris.com/researchers/" target="_top">Researchers</a></li> 2443 <li><a href="https://www.circulagris.com/conferences/" target="_top">Conferences</a></li> 2444 <li><a href="https://www.circulagris.com/workshops/" target="_top">Workshops</a></li> 2445 <li><a href="https://www.circulagris.com/publications/" target="_top" class="active">Publications</a></li> 2446 <li class="cg-lang-switch"><a href="https://www.circulagris.com/pubblicazioni/" target="_top" style="background:#8B7535;color:#fff !important;padding:6px 14px;border-radius:20px;font-weight:700;cursor:pointer;">IT</a></li> 2447 </ul> 2448 <div class="cg-pub-burger" onclick="(function(){var m=document.getElementById('cgPubMobileMenu');m.classList.toggle('open')})()"> 2449 <span></span><span></span><span></span> 2450 </div> 2451 </nav> 2452 2453 <!-- MOBILE MENU --> 2454 <ul class="cg-pub-mobile-menu" id="cgPubMobileMenu"> 2455 <button class="cg-pub-mobile-close" onclick="document.getElementById('cgPubMobileMenu').classList.remove('open')" aria-label="Close"></button> 2456 <li><a href="https://www.circulagris.com/" target="_top">Home</a></li> 2457 <li><a href="https://www.circulagris.com/researchers/" target="_top">Researchers</a></li> 2458 <li><a href="https://www.circulagris.com/conferences/" target="_top">Conferences</a></li> 2459 <li><a href="https://www.circulagris.com/workshops/" target="_top">Workshops</a></li> 2460 <li><a href="https://www.circulagris.com/publications/" target="_top">Publications</a></li> 2461 <li class="cg-lang-switch"><a href="https://www.circulagris.com/pubblicazioni/" target="_top" style="background:#8B7535;color:#fff !important;padding:6px 14px;border-radius:20px;font-weight:700;cursor:pointer;">IT</a></li> 2462 </ul> 2463 2464 <div class="cg-pub-header"> 2465 <h1>Publications</h1> 2466 <p>Scientific contributions produced within the CIRCULAGRIS project.</p> 2467 </div> 2468 2469 <div class="cg-pub-section"> 2470 2471 <div class="cg-pub-divider"></div> 2472 <ul class="cg-pub-list"> 2473 2474 <li class="cg-pub-item"> 2475 <span class="cg-pub-year">2024</span> 2476 <p><span class="cg-pub-authors">ESPOSITO, B., NOTARNICOLA, B., DI CAPUA, R., RENZULLI, P.A.</span> 2024. Unravelling circular best practices in the pasta and bread supply chains: insights from Italy. <span class="cg-pub-venue">In: Suarez Barraza, M.F., Edvardsson, B., Jaca, C., Psomas, E., Renzi, M.F., Marimon, F. Gianni, M., Sebahtu, S., Ruggieri, A. (Eds.). IAQUIS 2024 Conference Proceedings "Fostering organizational transformation for a sustainable future: Enhancing synergies between quality, innovation and sustainability", pp. 19-36. ISBN: 979-12-210-9378-0</span></p> 2477 </li> 2478 2479 <li class="cg-pub-item"> 2480 <span class="cg-pub-year">2024</span> 2481 <p><span class="cg-pub-authors">RAGGI A., ARZOUMANIDIS I., PETTI L., SIMBOLI A., DI CAPUA R., RENZULLI P.A., SPIZZIRRI G.U., NOTARNICOLA B., LANUZZA F., MONDELLO G., SAIJA G., SALOMONE R.</span> 2024. The CIRCULAGRIS project for developing metrics for circularity and sustainability in Italian agri-food systems. <span class="cg-pub-venue">Book of abstracts of the 30th Annual International Conference of ISDRS on Sustainable Development Research “Linking Futures of Mountain and Ocean: Rescuing the SDGs 2030 for Sustainable Livelihood”, 10-14 June 2024, Kathmandu, Nepal, pp. 174-175</span></p> 2482 </li> 2483 2484 <li class="cg-pub-item">
2485 <span class="cg-pub-year">2024</span> 2486 <p><span class="cg-pub-authors">RAGGI A., ARZOUMANIDIS I., PETTI L., SIMBOLI A., DI CAPUA R., RENZULLI P.A., NOTARNICOLA B., LANUZZA F., MONDELLO G., SALOMONE R.</span> 2024. Circularity and sustainability metrics for Italian agri-food systems: the CIRCULAGRIS project. <span class="cg-pub-venue">In: Núñez M. (Ed.), Book of abstracts of the 14th International Conference on Life Cycle Assessment of Food (LCA Food 2024), 8-12 September 2024, Barcelona, Spain, pp. 911-912</span></p> 2487 </li> 2488 2489 <li class="cg-pub-item"> 2490 <span class="cg-pub-year">2024</span> 2491 <p><span class="cg-pub-authors">RAGGI A., ARZOUMANIDIS I., PETTI L., SIMBOLI A., DI CAPUA R., RENZULLI P.A., SPIZZIRRI G.U., NOTARNICOLA B., LANUZZA F., MONDELLO G., SAIJA G., SALOMONE R.</span> 2024. Measuring circularity and sustainability in Italian agri-food systems: the CIRCULAGRIS project. <span class="cg-pub-venue">Book of Abstracts of the 1st International Conference “Circular Economy: the pathway towards a sustainable development” of the Hellenic Society for Circular Economy, 12-13 September 2024, Chania, Greece, pp. 292-293</span></p> 2492 </li> 2493 2494 <li class="cg-pub-item"> 2495 <span class="cg-pub-year">2024</span> 2496 <p><span class="cg-pub-authors">SALOMONE, R., SCANDURRA, F., MONDELLO, G., SAIJA, G., LANUZZA, F.</span> 2024. Circular economy metrics in the agri-food sector: an applicative study in the olive oil industry. <span class="cg-pub-venue">In: Suarez Barraza, M.F., Edvardsson, B., Jaca, C., Psomas, E., Renzi, M.F., Marimon, F., Gianni, M., Sebahtu, S., Ruggieri, A. (Eds.). IAQUIS 2024 Conference Proceedings “Fostering organisational transformation for a sustainable future: Enhancing synergies between quality, innovation and sustainability”, 11-14 September 2024, Viterbo, Italy, pp. 236-246, ISBN: 9791221093780</span> </p> 2497 </li> 2498 2499 <li class="cg-pub-item"> 2500 <span class="cg-pub-year">2024</span> 2501 <p><span class="cg-pub-authors">SALOMONE, R., SCANDURRA, F., MONDELLO, G., SAIJA, G., LANUZZA, F.</span> 2024. Measuring circularity and sustainability in the olive oil supply chain: an overview of available metrics. <span class="cg-pub-venue">In: Agnusdei, L., Agnusdei, G.P., De Leo, F., Miglietta, P.P., Massari, S., Ruberti, M. (Eds.). Proceedings of the 32nd Congress of the Italian Academy of Commodity Science “Resilienza e sostenibilità nel cambiamento globale”, 19-20 September 2024 Lecce, Italy, pp. 482-489, ISBN: 979-12-985593-1-8</span> </p> 2502 </li> 2503 2504 <li class="cg-pub-item"> 2505 <span class="cg-pub-year">2024</span> 2506 <p><span class="cg-pub-authors">SCANDURRA, F., SALOMONE, R., MONDELLO, G., SAIJA, G., & LANUZZA, F.</span> 2024. Circularity and sustainability indicators for the agrifood sector: The case of olive oil supply chain. <span class="cg-pub-venue">Proceedings of the 30th Annual International Conference of ISDRS on Sustainable Development Research “Linking Futures of Mountain and Ocean: Rescuing the SDGs 2030 for Sustainable Livelihood”, 10-14 June 2024, Kathmandu, Nepal, pp. 460–470. ISBN 978-9937-1-8614-8</span> </p> 2507 </li> 2508 2509 <li class="cg-pub-item"> 2510 <span class="cg-pub-year">2025</span> 2511 <p><span class="cg-pub-authors">ESPOSITO, B., NOTARNICOLA, B., RENZULLI, P.A., DI CAPUA, R.</span> 2025. Circularity in the pasta supply chain: Developing a multi-indicator framework for circular economy assessment. <span class="cg-pub-venue">Cleaner Environmental Systems, 100327</span></p> 2512 </li> 2513 2514 <li class="cg-pub-item"> 2515 <span class="cg-pub-year">2025</span> 2516 <p><span class="cg-pub-authors">SALOMONE, R., SCANDURRA, F., MONDELLO, G., SAIJA, G., LANUZZA, F.</span> 2025. Circularity metrics in the agri-food sector and olive oil industry: a scoping literature review. <span class="cg-pub-venue">In: Raggi, A., Petti, L., Tascione, V., Arzoumanidis, I. (Eds.). the 18th Italian LCA Network Association Conference “Life Cycle Thinking a supporto di modelli di produzione e di consumo sostenibili”, 3-5 July 2024, Pescara, Italy, pp. 135-142, ISBN: 9791221004571</span> </p> 2517 </li> 2518 2519 <li class="cg-pub-item">
2520 <span class="cg-pub-year">2025</span> 2521 <p><span class="cg-pub-authors">TRAGNONE, B.M., ARZOUMANIDIS, I., PETTI, L., SIMBOLI, A., RAGGI, A.</span> 2025. Toward circular and sustainable wine supply chains: a social insight. <span class="cg-pub-venue">In: Mittal, M., Cilleruelo Palomero, J., Radwan, L., Ciroth, A. (Eds.) openLCA.conf 2025 Proceedings. Second openLCA.conf, 10–11 April 2025, Berlin, Germany, p. 64. https://doi.org/10.5281/zenodo.15209873</span></p> 2522 </li> 2523 2524 <li class="cg-pub-item"> 2525 <span class="cg-pub-year">2025</span> 2526 <p><span class="cg-pub-authors">TRAGNONE, B.M., ARZOUMANIDIS, I., PETTI, L., SIMBOLI, A., RAGGI, A.</span> 2025. Identification of agri-food Social Life Cycle Assessment material themes. <span class="cg-pub-venue">In: Stefanakis, A., Nikolaou, I. (Eds) e-Book of Abstracts of the 2nd International Conference “Circular Economy: the pathway towards a sustainable development” of the Hellenic Society for Circular Economy, 17-19 September 2025, Chania, Greece, pp. 284-285 ISBN: 978-618-5558-17-8</span></p> 2527 </li> 2528 2529 <li class="cg-pub-item"> 2530 <span class="cg-pub-year">2025</span> 2531 <p><span class="cg-pub-authors">ARZOUMANIDIS, I., PETTI, L., SIMBOLI, A., TRAGNONE, B.M., RAGGI, A.</span> Indicatori di circolarità per il settore agroalimentare e il comparto vitivinicolo. <span class="cg-pub-venue">Proceedings of the 19th Conference of the Italian LCA Network Association, “Transizione sostenibile, competitività e innovazione: il ruolo della Life Cycle Assessment”, 19-21 March 2025, Cortina d’Ampezzo, Italy. In press</span></p> 2532 </li> 2533 2534 <li class="cg-pub-item"> 2535 <span class="cg-pub-year">2025</span> 2536 <p><span class="cg-pub-authors">ESPOSITO, B., NOTARNICOLA, B., DI CAPUA, R., RENZULLI, P.A.</span> Il Life Cycle Costing come Strumento per l’Economia Circolare nel Settore Agroalimentare: Una Revisione Sistematica della Letteratura. <span class="cg-pub-venue">Proceedings of the 19th Conference of the Italian LCA Network Association, “Transizione sostenibile, competitività e innovazione: il ruolo della Life Cycle Assessment”, 19-21 March 2025, Cortina d’Ampezzo, Italy. In press</span></p> 2537 </li> 2538 2539 <li class="cg-pub-item"> 2540 <span class="cg-pub-year">2025</span> 2541 <p><span class="cg-pub-authors">RAGGI, A., SALOMONE, R., NOTARNICOLA, B., ARZOUMANIDIS, I., ASTUTO, F., DI CAPUA, R., ESPOSITO, B., LANUZZA, F., MONDELLO, G., PETTI, L., RENZULLI, P.A., SAIJA, G., SCANDURRA, F., SIMBOLI, A., TRAGNONE, B.M.</span> Misurazione della circolarità nell’agri-food: una proposta metodologica per la selezione e la classificazione di indicatori. <span class="cg-pub-venue">Proceedings of the 19th Conference of the Italian LCA Network Association, “Transizione sostenibile, competitività e innovazione: il ruolo della Life Cycle Assessment”, 19-21 March 2025, Cortina d’Ampezzo, Italy. In press</span></p> 2542 </li> 2543 2544 <li class="cg-pub-item"> 2545 <span class="cg-pub-year">2025</span> 2546 <p><span class="cg-pub-authors">SALOMONE, R., SCANDURRA, F., MONDELLO, G., SAIJA, G., LANUZZA, F.</span> Circular economy in the olive oil industry: evaluating best practices through life cycle assessment. <span class="cg-pub-venue">Proceedings of the 19th Conference of the Italian LCA Network Association, “Transizione sostenibile, competitività e innovazione: il ruolo della Life Cycle Assessment”, 19-21 March 2025, Cortina d’Ampezzo, Italy. In press</span> </p> 2547 </li> 2548 2549 <li class="cg-pub-item"> 2550 <span class="cg-pub-year">2025</span> 2551 <p><span class="cg-pub-authors">RAGGI A., SALOMONE R., NOTARNICOLA B., ARZOUMANIDIS I., ASTUTO F., DI CAPUA R., ESPOSITO B., LANUZZA F., MONDELLO G., PETTI L., RENZULLI P.A., SAIJA G., SCANDURRA F., SIMBOLI A., TRAGNONE B.M.</span> Measuring circularity in agri-food: a methodological proposal for the selection and classification of indicators. <span class="cg-pub-venue">Book of abstracts of the 31st Annual Conference of the International Sustainable Development Research Society (ISDRS), “Sustainability and beyond”, 8th-12th July 2025, Budapest, Hungary. In press</span></p> 2552 </li> 2553 2554 <li class="cg-pub-item">
2555 <span class="cg-pub-year">2025</span> 2556 <p><span class="cg-pub-authors">RAGGI A., SALOMONE R., NOTARNICOLA B., ARZOUMANIDIS I., ASTUTO F., DI CAPUA R., ESPOSITO B., LANUZZA F., MONDELLO G., PETTI L., RENZULLI P.A., SAIJA G., SCANDURRA F., SIMBOLI A., TRAGNONE B.M.</span> Measuring circularity in agri-food: a methodological proposal for the selection and classification of indicators. <span class="cg-pub-venue">Proceedings of the 31st Annual Conference of the International Sustainable Development Research Society (ISDRS), “Sustainability and beyond”, 8th-12th July 2025, Budapest, Hungary. In press</span></p> 2557 </li> 2558 2559 <li class="cg-pub-item"> 2560 <span class="cg-pub-year">2026</span> 2561 <p><span class="cg-pub-authors">TRAGNONE, B.M., ARZOUMANIDIS, I., PETTI, L., CHIUSANO, L., RAGGI, A.</span> Soluzioni circolari e sostenibili nel vitivinicolo: un caso studio. <span class="cg-pub-venue">41st Conference of Academy of Business Administration (AIDEA), “Le Intelligenze Aziendali per la competitività sostenibile e il bene comune”, 22-23 January 2026, Milan, Italy. In press</span></p> 2562 </li> 2563 2564 <li class="cg-pub-item"> 2565 <span class="cg-pub-year">2026</span> 2566 <p><span class="cg-pub-authors">TRAGNONE, B.M., ARZOUMANIDIS, I., PETTI, L., SIMBOLI, A., RAGGI, A.</span> “Aspetti sociali nella transizione verso filiere vitivinicole circolari” <span class="cg-pub-venue">Book Chapter, Bologna University Press. In press</span></p> 2567 </li> 2568 2569 <li class="cg-pub-item"> 2570 <span class="cg-pub-year">2026</span> 2571 <p><span class="cg-pub-authors">ARZOUMANIDIS, I., TRAGNONE, B.M., PETTI, L., RAGGI A.</span> The environmental profile of a biosymbiotic wine in Italy: towards more circular solutions. <span class="cg-pub-venue">2nd LUM Conference on Accounting, Banking, and Finance Research “The New Sustainability Agenda: Addressing Environmental and Social Challenges – Climate, Circularity, Biodiversity and Equity in Uncertain Times”, 4-5 June 2026, Bari, Italy. Accepted</span></p> 2572 </li> 2573 2574 <li class="cg-pub-item"> 2575 <span class="cg-pub-year">2026</span> 2576 <p><span class="cg-pub-authors">TRAGNONE, B.M., ARZOUMANIDIS, I., PETTI, L., RAGGI, A.</span> “Towards Circular Agri-food Chains: Challenges in the Application of Social Life Cycle Assessment”. <span class="cg-pub-venue">Social Life Cycle Assessment (S-LCA) Conference 2026, “Unity in diversity”, 17-19 June 2026, Jakarta, Indonesia. Accepted</span></p> 2577 </li> 2578 2579 <li class="cg-pub-item"> 2580 <span class="cg-pub-year">2026</span> 2581 <p><span class="cg-pub-authors">NOTARNICOLA, B., ASTUTO, F., DE GENNARO, S., DI CAPUA, R., ESPOSITO, B., RENZULLI, P.A., SPIZZIRRI, U.G., STASI, G.</span> Integrating Environmental and Circularity Metrics in the Pasta Supply Chain: a Comparative Assessment of Circular and Linear Alternatives. <span class="cg-pub-venue">2nd LUM Conference on Accounting, Banking, and Finance Research “The New Sustainability Agenda: Addressing Environmental and Social Challenges – Climate, Circularity, Biodiversity and Equity in Uncertain Times”, 4-5 June 2026, Bari, Italy. Submitted</span></p> 2582 </li> 2583 2584 <li class="cg-pub-item"> 2585 <span class="cg-pub-year">2026</span> 2586 <p><span class="cg-pub-authors">TRAGNONE, B.M., ARZOUMANIDIS, I., PETTI, L., SIMBOLI, A., RAGGI, A.</span> Verso transizioni circolari nella filiera vitivinicola: una sintesi sistematica delle soluzioni proposte in letteratura. <span class="cg-pub-venue">33rd Congress of the Italian Academy of Commodity Science “Rigenerare il valore: qualità innovazione e sostenibilità per il futuro delle organizzazioni e della società”, 14–16 September 2026, Catania, Italy. Submitted</span></p> 2587 </li> 2588 2589 <li class="cg-pub-item"> 2590 <span class="cg-pub-year">2026</span> 2591 <p><span class="cg-pub-authors">TRAGNONE, B.M., ARZOUMANIDIS, I., PETTI, L., SIMBOLI, A., RAGGI, A.</span> Circolarità nella filiera vitivinicola: una ricognizione delle soluzioni implementate in vigneto e cantina. <span class="cg-pub-venue">20th Conference of the Italian LCA Network Association “LCA e metodi life cycle-based per la misurazione della sostenibilità di prodotti, servizi, organizzazioni e soluzioni circolari”, 23–25 September 2026, Taranto, Italy. Submitted</span></p> 2592 </li> 2593 2594 <li class="cg-pub-item">
2595 <span class="cg-pub-year">2026</span> 2596 <p><span class="cg-pub-authors">ARZOUMANIDIS, I., TRAGNONE, B.M., PETTI, L., CHIUSANO, L., RAGGI A.</span> Circular and sustainable solutions in the wine sector: a case study. <span class="cg-pub-venue">32nd Annual Conference of ISDRS “Transforming Global Challenges into Sustainable Opportunities: Collaborations and Partnerships across the globe”, 7-11 July, Victoria, Brasil. Submitted</span></p> 2597 </li> 2598 2599 </ul> 2600 2601 </div> 2602 2603 <!-- FOOTER --> 2604 <footer class="cg-pub-footer"> 2605 <div class="cg-pub-footer-logos"> 2606 <img src="/images/logo-circulagris.png" alt="CIRCULAGRIS" style="height: 50px; filter: brightness(0) invert(1);" /> 2607 </div> 2608 <div class="cg-pub-footer-logos" style="margin-top: 16px;"> 2609 <img src="/images/footer-eu-white.png" alt="Finanziato dall'Unione europea - NextGenerationEU" style="height:56px;" /> 2610 <img src="/images/footer-mur-white.png" alt="Ministero dell'Università e della Ricerca" style="height:42px;" /> 2611 <img src="/images/footer-italiadomani-white.png" alt="Italia Domani - PNRR" style="height:72px;" /> 2612 <img src="/images/logo-uda.png" alt="UdA" style="height:80px;" /> 2613 <img src="/images/logo-unime-white.png" alt="UNIME" style="height:76px;" /> 2614 <img src="/images/logo-uniba.png" alt="UNIBA" style="height:80px;" /> 2615 </div> 2616 <p style="margin-top: 20px;">© 2024 CIRCULAGRIS — PRIN 2022 Project | <a href="https://www.unich.it" target="_blank" style="color:rgba(255,255,255,0.7);text-decoration:none;">Università degli Studi "G. d'Annunzio" Chieti-Pescara</a></p> 2617 <div style="max-width:800px;margin:16px auto 0;font-size:0.72rem;color:rgba(255,255,255,0.35);line-height:1.6;"> 2618 Project "Towards circular and sustainable agri-food systems: metrics for assessment (CIRCULAGRIS)" PRIN2022 (Research Project of National Interest) funded by the European Union - Next Generation EU, Mission 4, Component 2, CUP D53D23011220006. 2619 </div> 2620 <div style="margin-top: 16px; font-size: 0.72rem; color: rgba(255,255,255,0.5);"> 2621 <a href="https://www.sitiwebshop.it/?utm_source=sito-cliente&utm_medium=circulagris-universita-ch" target="_blank" rel="noopener noreferrer" style="color: rgba(255,255,255,0.8); text-decoration: underline;">Powered by Webshop Human AI Automation</a> 2622 </div> 2623 </footer> 2624 2625</div> 2626`}})),w2=()=>(x.useEffect(()=>{function e(){const t=document.querySelector(".cg-ws-inst-bar"),i=document.querySelector(".cg-ws-nav");t&&i&&(i.style.top=t.offsetHeight+"px")}return requestAnimationFrame(e),setTimeout(e,100),setTimeout(e,500),window.addEventListener("resize",e),window.addEventListener("load",e),()=>{window.removeEventListener("resize",e),window.removeEventListener("load",e)}},[]),I.jsx("div",{dangerouslySetInnerHTML:{__html:` 2627<style> 2628.cg-ws-root *, .cg-ws-root *::before, .cg-ws-root *::after { margin: 0; padding: 0; box-sizing: border-box; } 2629.cg-ws-root { 2630 font-family: Calibri, 'Segoe UI', sans-serif; 2631 color: #3a3a4a; line-height: 1.6; background: #FAF8F2; 2632 min-height: 100vh; 2633} 2634.cg-ws-root img { max-width: 100%; } 2635 2636/* âââ INSTITUTIONAL BAR âââ */ 2637.cg-ws-inst-bar { 2638 position: fixed; top: 0; left: 0; right: 0; z-index: 101; 2639 background: #2A65AF; 2640 display: flex; align-items: center; justify-content: center; 2641 gap: 28px; padding: 14px 40px; 2642 border-bottom: 1px solid rgba(0,0,0,0.08); 2643 flex-wrap: wrap; 2644} 2645.cg-ws-inst-bar img { height: 64px; object-fit: contain; flex-shrink: 0; } 2646.cg-ws-inst-bar .cg-inst-divider { 2647 width: 1px; height: 48px; background: rgba(255,255,255,0.3); flex-shrink: 0; 2648} 2649 2650/* âââ NAV âââ */ 2651.cg-ws-nav { 2652 position: fixed; top: 92px; left: 0; right: 0; z-index: 100; 2653 background: rgba(255,255,255,0.92); 2654 backdrop-filter: blur(16px); 2655 padding: 18px 60px; 2656 display: flex; align-items: center; justify-content: space-between; 2657 border-bottom: 1px solid rgba(0,0,0,0.06); 2658 box-shadow: 0 2px 20px rgba(0,0,0,0.04); 2659} 2660.cg-ws-nav-logo { display: flex; align-items: center; } 2661.cg-ws-nav-logo img { height: 56px; object-fit: contain; margin-right: 16px; } 2662.cg-ws-nav-links { display: flex; gap: 32px; list-style: none; } 2663.cg-ws-nav-links a { 2664 color: #555; text-decoration: none; font-size: 0.82rem; 2665 font-weight: 600; letter-spacing: 1.5px; text-transform: uppercase; 2666 transition: color 0.3s; position: relative; cursor: pointer; 2667} 2668.cg-ws-nav-links a:hover { color: #8B7535; } 2669.cg-ws-nav-links a::after {
2670 content:''; position: absolute; bottom: -6px; left: 0; width: 0; height: 2px; 2671 background: #8B7535; transition: width 0.3s; 2672} 2673.cg-ws-nav-links a:hover::after { width: 100%; } 2674.cg-ws-nav-links a.active { color: #8B7535; } 2675.cg-ws-nav-links a.active::after { width: 100%; } 2676 2677/* âââ BURGER âââ */ 2678.cg-ws-burger { 2679 display: none; flex-direction: column; gap: 5px; cursor: pointer; 2680 padding: 8px; z-index: 200; 2681} 2682.cg-ws-burger span { 2683 display: block; width: 24px; height: 2px; background: #3a3a4a; 2684 transition: all 0.3s; border-radius: 2px; 2685} 2686.cg-ws-mobile-menu { 2687 display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; 2688 background: #FAF8F2; z-index: 190; 2689 flex-direction: column; align-items: center; justify-content: center; 2690 gap: 24px; list-style: none; overflow: hidden; 2691} 2692.cg-ws-mobile-menu.open { display: flex; } 2693.cg-ws-mobile-menu a { 2694 color: #3a3a4a; text-decoration: none; font-size: 1.1rem; 2695 font-weight: 700; letter-spacing: 2px; text-transform: uppercase; 2696 font-family: Calibri, 'Segoe UI', sans-serif; cursor: pointer; 2697 transition: color 0.3s; 2698} 2699.cg-ws-mobile-menu a:hover { color: #8B7535; } 2700.cg-ws-mobile-close { 2701 position: absolute; top: 20px; right: 20px; 2702 width: 40px; height: 40px; cursor: pointer; 2703 display: flex; align-items: center; justify-content: center; 2704 background: none; border: none; z-index: 200; 2705} 2706.cg-ws-mobile-close::before, .cg-ws-mobile-close::after { 2707 content: ''; position: absolute; 2708 width: 24px; height: 2px; background: #3a3a4a; border-radius: 2px; 2709} 2710.cg-ws-mobile-close::before { transform: rotate(45deg); } 2711.cg-ws-mobile-close::after { transform: rotate(-45deg); } 2712 2713/* âââ HEADER âââ */ 2714.cg-ws-header { 2715 background: #2A65AF; 2716 padding: 200px 60px 60px; text-align: center; 2717} 2718.cg-ws-header h1 { 2719 font-family: Calibri, 'Segoe UI', sans-serif; 2720 font-size: clamp(1.8rem, 3vw, 2.8rem); font-weight: 800; 2721 color: #fff; text-transform: uppercase; letter-spacing: 2px; margin-bottom: 12px; 2722} 2723.cg-ws-header p { 2724 font-size: 1rem; color: rgba(255,255,255,0.7); max-width: 650px; margin: 0 auto; 2725} 2726 2727/* âââ CONTENT âââ */ 2728.cg-ws-section { 2729 max-width: 1100px; margin: 0 auto; padding: 60px 40px; 2730} 2731 2732/* âââ WORKSHOP CARD âââ */ 2733.cg-ws-card { 2734 background: #fff; border-radius: 16px; overflow: hidden; 2735 border: 1px solid rgba(0,0,0,0.06); 2736 margin-bottom: 48px; 2737 box-shadow: 0 4px 24px rgba(0,0,0,0.05); 2738 transition: all 0.3s; 2739} 2740.cg-ws-card:hover { box-shadow: 0 8px 32px rgba(0,0,0,0.08); } 2741.cg-ws-card-top { 2742 display: flex; gap: 0; 2743} 2744.cg-ws-card-poster { 2745 flex: 0 0 380px; max-width: 380px; 2746 background: #f5f3ed; display: flex; flex-direction: column; gap: 0; 2747 align-self: stretch; 2748} 2749.cg-ws-card-poster img { 2750 width: 100%; height: 100%; object-fit: contain; display: block; background: #f5f3ed; 2751} 2752.cg-ws-card-body { 2753 flex: 1; padding: 32px 36px; 2754} 2755.cg-ws-card-uni { 2756 display: flex; align-items: center; gap: 12px; margin-bottom: 16px; 2757} 2758.cg-ws-card-uni img { height: 40px; border-radius: 50%; } 2759.cg-ws-card-uni span { 2760 font-size: 0.78rem; color: #8B7535; font-weight: 700; 2761 letter-spacing: 1px; text-transform: uppercase; 2762} 2763.cg-ws-card-title { 2764 font-size: 1.2rem; font-weight: 800; color: #1a1a2e; 2765 line-height: 1.4; margin-bottom: 12px; 2766} 2767.cg-ws-card-meta { 2768 display: flex; flex-wrap: wrap; gap: 16px; margin-bottom: 16px; 2769} 2770.cg-ws-card-meta-item { 2771 display: flex; align-items: center; gap: 6px; 2772 font-size: 0.82rem; color: #777; font-weight: 600; 2773} 2774.cg-ws-card-meta-item svg { width: 16px; height: 16px; color: #8B7535; } 2775.cg-ws-card-desc { 2776 font-size: 0.88rem; color: #555; line-height: 1.7; 2777} 2778.cg-ws-card-divider { 2779 width: 40px; height: 3px; background: linear-gradient(90deg, #8B7535, #8E4585); 2780 margin: 16px 0; border-radius: 2px; 2781} 2782.cg-ws-card-badge { 2783 display: inline-block; background: #8B7535; color: #fff; 2784 font-size: 0.7rem; font-weight: 700; padding: 3px 12px; 2785 border-radius: 20px; letter-spacing: 0.5px; text-transform: uppercase; 2786 margin-bottom: 12px; 2787} 2788 2789/* âââ DOWNLOAD BTN âââ */ 2790.cg-ws-download-btn { 2791 display: inline-flex; align-items: center; gap: 8px; 2792 margin-top: 20px; padding: 12px 24px; 2793 background: #8B7535; color: #fff; 2794 font-weight: 700; font-size: 0.82rem; 2795 border-radius: 6px; text-decoration: none; 2796 letter-spacing: 1px; text-transform: uppercase; 2797 transition: all 0.3s; border: none; cursor: pointer; 2798} 2799.cg-ws-download-btn:hover { background: #756228; transform: translateY(-2px); box-shadow: 0 8px 20px rgba(139,117,53,0.25); } 2800.cg-ws-download-btn svg { width: 18px; height: 18px; } 2801 2802/* âââ PROGRAM âââ */ 2803.cg-ws-program { margin-top: 20px; } 2804.cg-ws-program-title { 2805 font-size: 0.82rem; font-weight: 700; color: #8B7535; 2806 letter-spacing: 1.5px; text-transform: uppercase; margin-bottom: 16px; 2807} 2808.cg-ws-program-item { 2809 display: flex; gap: 16px; padding: 10px 0; 2810 border-bottom: 1px solid rgba(0,0,0,0.04); 2811} 2812.cg-ws-program-time { 2813 flex-shrink: 0; width: 60px; 2814 font-size: 0.82rem; font-weight: 700; color: #8B7535; 2815} 2816.cg-ws-program-content { flex: 1; } 2817.cg-ws-program-content strong { 2818 display: block; font-size: 0.85rem; color: #1a1a2e; margin-bottom: 2px; 2819} 2820.cg-ws-program-content span { 2821 font-size: 0.8rem; color: #777; line-height: 1.5; 2822} 2823 2824/* âââ FOOTER âââ */ 2825.cg-ws-footer { 2826 background: #2A65AF; color: rgba(255,255,255,0.6); 2827 padding: 40px 60px; text-align: center; font-size: 0.8rem; 2828} 2829.cg-ws-footer-logos { 2830 display: flex; align-items: center; justify-content: center; 2831 gap: 24px; margin-bottom: 20px; flex-wrap: wrap; 2832} 2833.cg-ws-footer-logos img { height: 40px; object-fit: contain; } 2834 2835@media (max-width: 900px) { 2836 .cg-ws-hide-mobile { display: none !important; } 2837 .cg-ws-nav-links { display: none; } 2838 .cg-ws-burger { display: flex; } 2839 .cg-ws-inst-bar { padding: 10px 20px; gap: 14px; flex-wrap: wrap; } 2840 .cg-ws-inst-bar img { height: 44px; } 2841 .cg-ws-inst-bar .cg-inst-divider { height: 32px; } 2842 .cg-ws-card-top { flex-direction: column; } 2843 .cg-ws-card-poster { flex: none; max-width: 100%; max-height: 400px; } 2844} 2845@media (max-width: 640px) { 2846 .cg-ws-header { padding: 220px 10px 40px; } 2847 .cg-ws-section { padding: 40px 10px; } 2848 .cg-ws-inst-bar { padding: 8px 6px; gap: 8px; justify-content: space-between; flex-wrap: nowrap; } 2849 .cg-ws-inst-bar img { height: 32px !important; flex-shrink: 1; min-width: 0; object-fit: contain; } 2850 .cg-ws-inst-bar .cg-logo-italiadomani { height: 58px !important; } 2851 .cg-ws-inst-bar .cg-inst-divider { display: flex; height: 28px; background: rgba(255,255,255,0.3); width: 1px; flex-shrink: 0; } 2852 .cg-ws-nav { top: auto; padding: 12px 10px; } 2853 .cg-ws-card-body { padding: 20px 10px; text-align: center; } 2854 .cg-ws-card-title { font-size: 1rem; text-align: center; } 2855 .cg-ws-card-desc { font-size: 0.82rem; text-align: center; } 2856 .cg-ws-card-meta { justify-content: center; } 2857 .cg-ws-card-uni { justify-content: center; text-align: center; }
2858 .cg-ws-card-divider { margin-left: auto; margin-right: auto; } 2859 .cg-ws-download-btn { width: 100%; justify-content: center; } 2860 .cg-ws-footer { padding: 30px 10px; } 2861 .cg-ws-footer-logos { gap: 12px; } 2862 .cg-ws-footer-logos img { height: 32px; } 2863} 2864</style> 2865 2866<div class="cg-ws-root"> 2867 2868 <!-- INSTITUTIONAL BAR --> 2869 <div class="cg-ws-inst-bar"> 2870 <img src="/images/footer-eu-white.png" alt="Finanziato dall'Unione europea - NextGenerationEU" style="height:56px;" /> 2871 <div class="cg-inst-divider"></div> 2872 <img src="/images/footer-mur-white.png" alt="MUR" style="height:42px;" /> 2873 <div class="cg-inst-divider"></div> 2874 <img src="/images/footer-italiadomani-white.png" alt="Italia Domani" style="height:72px;" class="cg-logo-italiadomani" /> 2875 <div class="cg-inst-divider cg-ws-hide-mobile"></div> 2876 <img src="/images/logo-uda.png" alt="UdA" style="height:80px;" class="cg-ws-hide-mobile" /> 2877 <img src="/images/logo-unime-white.png" alt="UNIME" style="height:76px;" class="cg-ws-hide-mobile" /> 2878 <img src="/images/logo-uniba.png" alt="UNIBA" style="height:80px;" class="cg-ws-hide-mobile" /> 2879 </div> 2880 2881 <!-- NAV --> 2882 <nav class="cg-ws-nav"> 2883 <a class="cg-ws-nav-logo" href="https://www.circulagris.com/" target="_top"><img src="/images/logo-circulagris.png" alt="CIRCULAGRIS" /></a> 2884 <ul class="cg-ws-nav-links"> 2885 <li><a href="https://www.circulagris.com/" target="_top">Home</a></li> 2886 <li><a href="https://www.circulagris.com/researchers/" target="_top">Researchers</a></li> 2887 <li><a href="https://www.circulagris.com/conferences/" target="_top">Conferences</a></li> 2888 <li><a href="https://www.circulagris.com/workshops/" target="_top" class="active">Workshops</a></li> 2889 <li><a href="https://www.circulagris.com/publications/" target="_top">Publications</a></li> 2890 <li class="cg-lang-switch"><a href="https://www.circulagris.com/workshops-ita/" target="_top" style="background:#8B7535;color:#fff !important;padding:6px 14px;border-radius:20px;font-weight:700;cursor:pointer;">IT</a></li> 2891 </ul> 2892 <div class="cg-ws-burger" onclick="(function(){var m=document.getElementById('cgWsMobileMenu');m.classList.toggle('open')})()"> 2893 <span></span><span></span><span></span> 2894 </div> 2895 </nav> 2896 2897 <!-- MOBILE MENU --> 2898 <ul class="cg-ws-mobile-menu" id="cgWsMobileMenu"> 2899 <button class="cg-ws-mobile-close" onclick="document.getElementById('cgWsMobileMenu').classList.remove('open')" aria-label="Close"></button> 2900 <li><a href="https://www.circulagris.com/" target="_top">Home</a></li> 2901 <li><a href="https://www.circulagris.com/researchers/" target="_top">Researchers</a></li> 2902 <li><a href="https://www.circulagris.com/conferences/" target="_top">Conferences</a></li> 2903 <li><a href="https://www.circulagris.com/workshops/" target="_top">Workshops</a></li> 2904 <li><a href="https://www.circulagris.com/publications/" target="_top">Publications</a></li> 2905 <li class="cg-lang-switch"><a href="https://www.circulagris.com/workshops-ita/" target="_top" style="background:#8B7535;color:#fff !important;padding:6px 14px;border-radius:20px;font-weight:700;cursor:pointer;">IT</a></li> 2906 </ul> 2907 2908 <div class="cg-ws-header"> 2909 <h1>Workshops</h1> 2910 <p>Workshops and seminars organised within the CIRCULAGRIS project to promote knowledge transfer and stakeholder engagement.</p> 2911 </div> 2912 2913 <div class="cg-ws-section"> 2914 2915 <!-- WORKSHOP: PESCARA (Conclusivo) --> 2916 <div class="cg-ws-card"> 2917 <div class="cg-ws-card-top"> 2918 <div class="cg-ws-card-poster"> 2919 <img src="/images/workshop-pe-poster.jpg" alt="Locandina Workshop Conclusivo Pescara" /> 2920 </div> 2921 <div class="cg-ws-card-body"> 2922 <div class="cg-ws-card-uni"> 2923 <img src="/images/logo-uda.png" alt="UdA" /> 2924 <span>"G. d'Annunzio" University of Chieti-Pescara</span> 2925 </div> 2926 <span class="cg-ws-card-badge">Workshop Conclusivo</span> 2927 <div class="cg-ws-card-title">Sistemi Agro-Alimentari Circolari e Sostenibili â Workshop Conclusivo Progetto CIRCULAGRIS</div> 2928 <div style="font-size: 0.95rem; color: #666; font-style: italic; margin-bottom: 12px;">Con evidenze e riflessioni su vitivinicolo</div> 2929 <div class="cg-ws-card-meta"> 2930 <div class="cg-ws-card-meta-item"> 2931 <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M6.75 3v2.25M17.25 3v2.25M3 18.75V7.5a2.25 2.25 0 012.25-2.25h13.5A2.25 2.25 0 0121 7.5v11.25m-18 0A2.25 2.25 0 005.25 21h13.5A2.25 2.25 0 0021 18.75m-18 0v-7.5A2.25 2.25 0 015.25 9h13.5A2.25 2.25 0 0121 11.25v7.5" /></svg> 2932 12 February 2026 2933 </div> 2934 <div class="cg-ws-card-meta-item"> 2935 <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M12 6v6h4.5m4.5 0a9 9 0 11-18 0 9 9 0 0118 0z" /></svg> 2936 9:00 â 13:00 2937 </div> 2938 <div class="cg-ws-card-meta-item"> 2939 <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M15 10.5a3 3 0 11-6 0 3 3 0 016 0z" /><path stroke-linecap="round" stroke-linejoin="round" d="M19.5 10.5c0 7.142-7.5 11.25-7.5 11.25S4.5 17.642 4.5 10.5a7.5 7.5 0 1115 0z" /></svg> 2940 Aula De Tommaso, Viale Pindaro 42, Pescara 2941 </div> 2942 </div>
2943 <div class="cg-ws-card-divider"></div> 2944 <p class="cg-ws-card-desc"> 2945 The event was held in hybrid mode, allowing both in-presence and remote participation. The workshop involved companies, professional associations and sectoral stakeholders from the wine industry, and registered significant participation of students enrolled in the University's study programmes. Final outcomes of the project were also presented. 2946 </p> 2947 </div> 2948 </div> 2949 </div> 2950 2951 <!-- WORKSHOP: UNIBA Taranto --> 2952 <div class="cg-ws-card"> 2953 <div class="cg-ws-card-top"> 2954 <div class="cg-ws-card-poster"> 2955 <img src="/images/workshop-uniba-taranto.jpg" alt="Locandina Workshop UNIBA Taranto" /> 2956 </div> 2957 <div class="cg-ws-card-body"> 2958 <div class="cg-ws-card-uni"> 2959 <img src="/images/logo-uniba-color.png" alt="UNIBA" /> 2960 <span>University of Bari Aldo Moro</span> 2961 </div> 2962 <span class="cg-ws-card-badge">Workshop</span> 2963 <div class="cg-ws-card-title">Circular Economy in the Agri-food Sector: Best Practices and Sustainability Metrics</div> 2964 <div class="cg-ws-card-meta"> 2965 <div class="cg-ws-card-meta-item"> 2966 <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M6.75 3v2.25M17.25 3v2.25M3 18.75V7.5a2.25 2.25 0 012.25-2.25h13.5A2.25 2.25 0 0121 7.5v11.25m-18 0A2.25 2.25 0 005.25 21h13.5A2.25 2.25 0 0021 18.75m-18 0v-7.5A2.25 2.25 0 015.25 9h13.5A2.25 2.25 0 0121 11.25v7.5" /></svg> 2967 30 January 2026 2968 </div> 2969 <div class="cg-ws-card-meta-item"> 2970 <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M15 10.5a3 3 0 11-6 0 3 3 0 016 0z" /><path stroke-linecap="round" stroke-linejoin="round" d="M19.5 10.5c0 7.142-7.5 11.25-7.5 11.25S4.5 17.642 4.5 10.5a7.5 7.5 0 1115 0z" /></svg> 2971 Dipartimento Jonico, Taranto 2972 </div> 2973 </div> 2974 <div class="cg-ws-card-divider"></div> 2975 <p class="cg-ws-card-desc"> 2976 The workshop addressed the main topics of circular economy in the agri-food sector, with a specific focus on metrics, indicators and tools for assessing sustainability and circularity. The opening session presented the results of the CIRCULAGRIS project, focused on the analysis and promotion of circular models in the pasta and bread, wine and olive oil supply chains. 2977 </p> 2978 <br/> 2979 <p class="cg-ws-card-desc"> 2980 A specific contribution was offered by the Ministry of the Environment and Energy Security (MASE), which presented the Made Green in Italy scheme. The workshop concluded with a round table featuring business representatives, fostering dialogue between universities and enterprises on best practices in circularity and sustainability. 2981 </p> 2982 </div> 2983 </div> 2984 </div> 2985 2986 <!-- WORKSHOP: UNIME Messina --> 2987 <div class="cg-ws-card"> 2988 <div class="cg-ws-card-top"> 2989 <div class="cg-ws-card-poster"> 2990 <img src="/images/workshops/locandina-messina.jpg" alt="Locandina Workshop UNIME Messina" /> 2991 </div> 2992 <div class="cg-ws-card-body"> 2993 <div class="cg-ws-card-uni"> 2994 <img src="/images/logo-unime-white.png" alt="UNIME" style="filter: none; background: #fff; border-radius: 50%; padding: 4px; height: 40px;" /> 2995 <span>University of Messina</span> 2996 </div> 2997 <span class="cg-ws-card-badge">Workshop</span> 2998 <div class="cg-ws-card-title">Circular Economy in the Agri-food Sector: Best Practices and Sustainability Metrics</div> 2999 <div class="cg-ws-card-meta"> 3000 <div class="cg-ws-card-meta-item"> 3001 <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M6.75 3v2.25M17.25 3v2.25M3 18.75V7.5a2.25 2.25 0 012.25-2.25h13.5A2.25 2.25 0 0121 7.5v11.25m-18 0A2.25 2.25 0 005.25 21h13.5A2.25 2.25 0 0021 18.75m-18 0v-7.5A2.25 2.25 0 015.25 9h13.5A2.25 2.25 0 0121 11.25v7.5" /></svg> 3002 10 December 2025 3003 </div> 3004 <div class="cg-ws-card-meta-item"> 3005 <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M12 6v6h4.5m4.5 0a9 9 0 11-18 0 9 9 0 0118 0z" /></svg> 3006 9:00 â 13:00 3007 </div> 3008 <div class="cg-ws-card-meta-item"> 3009 <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M15 10.5a3 3 0 11-6 0 3 3 0 016 0z" /><path stroke-linecap="round" stroke-linejoin="round" d="M19.5 10.5c0 7.142-7.5 11.25-7.5 11.25S4.5 17.642 4.5 10.5a7.5 7.5 0 1115 0z" /></svg> 3010 Aula Magna, Department of Economics, University of Messina 3011 </div> 3012 </div>
3013 <div class="cg-ws-card-divider"></div> 3014 <p class="cg-ws-card-desc"> 3015 The Aula Magna of the Department of Economics at the University of Messina hosted the workshop "Circular Economy in the Agri-food Sector: Best Practices and Sustainability Metrics", organised within the PRIN CIRCULAGRIS project. 3016 </p> 3017 <br/> 3018 <p class="cg-ws-card-desc"> 3019 Following the institutional greetings from the Rector, Prof. Giovanna Spatari, Prof. Carlo Vermiglio (delegate of the Director of the Department of Economics, Prof. Gustavo Barresi), and the President of Sicindustria Messina, Mr. Pietro Franza, academic experts and business representatives took part. The closing remarks were delivered by Prof. Roberta Salomone, University Delegate for Sustainability and Scientific Coordinator of the UniME Research Unit of CIRCULAGRIS. 3020 </p> 3021 <br/> 3022 <p class="cg-ws-card-desc"> 3023 The event represented an important opportunity for discussion on circular and sustainable models for the agri-food sector, with particular attention to assessment metrics and innovative experiences. 3024 </p> 3025 </div> 3026 </div> 3027 </div> 3028 3029 </div> 3030 3031 <!-- FOOTER --> 3032 <footer class="cg-ws-footer"> 3033 <div class="cg-ws-footer-logos"> 3034 <img src="/images/logo-circulagris.png" alt="CIRCULAGRIS" style="height: 50px; filter: brightness(0) invert(1);" /> 3035 </div> 3036 <div class="cg-ws-footer-logos" style="margin-top: 16px;"> 3037 <img src="/images/footer-eu-white.png" alt="Finanziato dall'Unione europea - NextGenerationEU" style="height:56px;" /> 3038 <img src="/images/footer-mur-white.png" alt="MUR" style="height:42px;" /> 3039 <img src="/images/footer-italiadomani-white.png" alt="Italia Domani" style="height:72px;" /> 3040 <img src="/images/logo-uda.png" alt="UdA" style="height:80px;" /> 3041 <img src="/images/logo-unime-white.png" alt="UNIME" style="height:76px;" /> 3042 <img src="/images/logo-uniba.png" alt="UNIBA" style="height:80px;" /> 3043 </div> 3044 <p style="margin-top: 20px;">© 2024 CIRCULAGRIS — PRIN 2022 Project | <a href="https://www.unich.it" target="_blank" style="color:rgba(255,255,255,0.7);text-decoration:none;">Università degli Studi "G. d'Annunzio" Chieti-Pescara</a></p> 3045 <div style="max-width:800px;margin:16px auto 0;font-size:0.72rem;color:rgba(255,255,255,0.35);line-height:1.6;"> 3046 Project "Towards circular and sustainable agri-food systems: metrics for assessment (CIRCULAGRIS)" PRIN2022 (Research Project of National Interest) funded by the European Union - Next Generation EU, Mission 4, Component 2, CUP D53D23011220006. 3047 </div> 3048 <div style="margin-top: 16px; font-size: 0.72rem; color: rgba(255,255,255,0.5);"> 3049 <a href="https://www.sitiwebshop.it/?utm_source=sito-cliente&utm_medium=circulagris-universita-ch" target="_blank" rel="noopener noreferrer" style="color: rgba(255,255,255,0.8); text-decoration: underline;">Powered by Webshop Human AI Automation</a> 3050 </div> 3051 </footer> 3052 3053</div> 3054`}})),S2=()=>(as(),x.useEffect(()=>{let e=0;const t=3;function i(g){e=g;const d=document.getElementById("heroSliderTrack");d&&(d.style.transform="translateX(-"+g*100+"%)"),document.querySelectorAll(".cg-hero-slider-dot").forEach((h,b)=>h.classList.toggle("active",b===g))}function n(){i((e+1)%t)}function r(){i((e-1+t)%t)}function o(g){const d=document.getElementById(g);if(d){d.scrollIntoView({behavior:"smooth",block:"start"});const y=document.getElementById("cgMobileMenu");y&&y.classList.remove("open");const h=document.getElementById("cgBurger");h&&h.classList.remove("open")}}function a(){const g=document.getElementById("cgMobileMenu"),d=document.getElementById("cgBurger");g&&g.classList.toggle("open"),d&&d.classList.toggle("open")}window.cgSliderGoTo=i,window.cgSliderNext=n,window.cgSliderPrev=r,window.cgScrollTo=o,window.cgToggleMenu=a;let s=setInterval(n,4e3);const l=document.getElementById("heroSlider");l&&(l.addEventListener("mouseenter",()=>clearInterval(s)),l.addEventListener("mouseleave",()=>{s=setInterval(n,4e3)}));const c=25,u=document.getElementById("pubCount");if(u){let g=0;const d=Math.ceil(c/30),y=setInterval(()=>{g=Math.min(g+d,c),u.textContent=String(g),g>=c&&clearInterval(y)},50)}window.cgSwitchTab=function(g){document.querySelectorAll(".cg-desc-tab-btn").forEach(h=>h.classList.remove("active")),document.querySelectorAll(".cg-desc-tab-panel").forEach(h=>h.style.display="none");const d=document.querySelector('[data-tab="'+g+'"]'),y=document.getElementById("tab-"+g);d&&d.classList.add("active"),y&&(y.style.display="block")};function p(){const g=document.querySelector(".cg-institutional-bar"),d=document.querySelector(".cg-nav");g&&d&&(d.style.top=g.offsetHeight+"px")}return requestAnimationFrame(p),setTimeout(p,100),setTimeout(p,500),window.addEventListener("resize",p),window.addEventListener("load",p),()=>{clearInterval(s),window.removeEventListener("resize",p),window.removeEventListener("load",p),delete window.cgSliderGoTo,delete window.cgSliderNext,delete window.cgSliderPrev,delete window.cgScrollTo,delete window.cgSwitchTab}},[]),I.jsx("div",{dangerouslySetInnerHTML:{__html:` 3055<style> 3056.cg-root *, .cg-root *::before, .cg-root *::after { margin: 0; padding: 0; box-sizing: border-box; } 3057.cg-root { 3058 font-family: Calibri, 'Segoe UI', sans-serif; 3059 color: #3a3a4a; 3060 line-height: 1.6; 3061 background: #FAF8F2; 3062} 3063body { overflow-x: hidden; } 3064.cg-root img { max-width: 100%; } 3065 3066/* âââ NAV âââ */ 3067.cg-nav { 3068 position: fixed; top: 92px; left: 0; right: 0; z-index: 100; 3069 background: rgba(255,255,255,0.92); 3070 backdrop-filter: blur(16px); 3071 padding: 18px 60px; 3072 display: flex; align-items: center; justify-content: space-between; 3073 border-bottom: 1px solid rgba(0,0,0,0.06); 3074 box-shadow: 0 2px 20px rgba(0,0,0,0.04); 3075} 3076.cg-nav-logo { 3077 display: flex; align-items: center; 3078} 3079.cg-nav-logo img { height: 56px; object-fit: contain; margin-right: 16px; } 3080.cg-nav-links { display: flex; gap: 32px; list-style: none; } 3081 3082/* âââ INSTITUTIONAL BAR âââ */ 3083.cg-institutional-bar { 3084 position: fixed; top: 0; left: 0; right: 0; z-index: 101; 3085 background: #2A65AF; 3086 display: flex; align-items: center; justify-content: center; 3087 gap: 28px; padding: 14px 40px; 3088 border-bottom: 1px solid rgba(0,0,0,0.08); 3089 flex-wrap: wrap; 3090} 3091.cg-institutional-bar img { height: 64px; object-fit: contain; flex-shrink: 0; } 3092.cg-institutional-bar .cg-inst-divider { 3093 width: 1px; height: 48px; background: rgba(255,255,255,0.3); flex-shrink: 0; 3094} 3095.cg-nav-links a { 3096 color: #555; text-decoration: none; font-size: 0.82rem; 3097 font-weight: 600; letter-spacing: 1.5px; text-transform: uppercase; 3098 transition: color 0.3s; position: relative; cursor: pointer; 3099} 3100.cg-nav-links a:hover { color: #8B7535; } 3101.cg-nav-links a::after {
3102 content:''; position: absolute; bottom: -6px; left: 0; width: 0; height: 2px; 3103 background: #8B7535; transition: width 0.3s; 3104} 3105.cg-nav-links a:hover::after { width: 100%; } 3106 3107/* âââ HAMBURGER âââ */ 3108.cg-burger { 3109 display: none; flex-direction: column; gap: 5px; cursor: pointer; 3110 padding: 8px; z-index: 200; 3111} 3112.cg-burger span { 3113 display: block; width: 24px; height: 2px; background: #3a3a4a; 3114 transition: all 0.3s; border-radius: 2px; 3115} 3116.cg-burger.open span:nth-child(1) { transform: rotate(45deg) translate(5px, 5px); } 3117.cg-burger.open span:nth-child(2) { opacity: 0; } 3118.cg-burger.open span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); } 3119 3120/* âââ MOBILE MENU âââ */ 3121.cg-mobile-menu { 3122 display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; 3123 background: #FAF8F2; z-index: 190; 3124 flex-direction: column; align-items: center; justify-content: center; 3125 gap: 24px; list-style: none; 3126 overflow: hidden; 3127} 3128.cg-mobile-menu.open { display: flex; } 3129.cg-mobile-menu a { 3130 color: #3a3a4a; text-decoration: none; font-size: 1.1rem; 3131 font-weight: 700; letter-spacing: 2px; text-transform: uppercase; 3132 font-family: Calibri, 'Segoe UI', sans-serif; cursor: pointer; 3133 transition: color 0.3s; 3134} 3135.cg-mobile-menu a:hover { color: #8B7535; } 3136.cg-mobile-close { 3137 position: absolute; top: 20px; right: 20px; 3138 width: 40px; height: 40px; cursor: pointer; 3139 display: flex; align-items: center; justify-content: center; 3140 background: none; border: none; z-index: 200; 3141} 3142.cg-mobile-close::before, .cg-mobile-close::after { 3143 content: ''; position: absolute; 3144 width: 24px; height: 2px; background: #3a3a4a; border-radius: 2px; 3145} 3146.cg-mobile-close::before { transform: rotate(45deg); } 3147.cg-mobile-close::after { transform: rotate(-45deg); } 3148 3149/* âââ HERO âââ */ 3150.cg-hero { 3151 min-height: auto; 3152 background: linear-gradient(160deg, #FAF8F2 0%, #F5F0E6 40%, #EFE9DB 100%); 3153 display: grid; grid-template-columns: 1fr 1fr; 3154 align-items: center; 3155 padding: 240px 60px 80px; 3156 position: relative; overflow: hidden; 3157} 3158.cg-hero::before { 3159 content: ''; position: absolute; top: 0; right: 0; 3160 width: 55%; height: 100%; 3161 background: linear-gradient(135deg, rgba(139,117,53,0.06), rgba(142,69,133,0.08)); 3162 clip-path: polygon(15% 0, 100% 0, 100% 100%, 0 100%); 3163} 3164.cg-hero::after { 3165 content: ''; position: absolute; top: 10%; right: 5%; 3166 width: 500px; height: 500px; 3167 background: radial-gradient(circle, rgba(139,117,53,0.08) 0%, transparent 60%); 3168 border-radius: 50%; 3169} 3170.cg-hero-deco1 { 3171 position: absolute; top: 15%; left: 3%; 3172 width: 120px; height: 120px; 3173 border: 2px solid rgba(139,117,53,0.12); 3174 border-radius: 50%; 3175 animation: cg-float 6s ease-in-out infinite; 3176} 3177.cg-hero-deco2 { 3178 position: absolute; bottom: 20%; left: 8%; 3179 width: 80px; height: 80px; 3180 border: 2px solid rgba(142,69,133,0.12); 3181 border-radius: 50%; 3182 animation: cg-float 8s ease-in-out infinite reverse; 3183} 3184.cg-hero-deco3 { 3185 position: absolute; top: 30%; right: 15%; 3186 width: 60px; height: 60px; 3187 background: rgba(139,117,53,0.06); 3188 border-radius: 50%; 3189 animation: cg-float 5s ease-in-out infinite; 3190} 3191@keyframes cg-float { 3192 0%, 100% { transform: translateY(0); } 3193 50% { transform: translateY(-20px); } 3194} 3195.cg-hero-content { position: relative; z-index: 2; max-width: 580px; } 3196.cg-hero-badge { 3197 display: inline-flex; align-items: center; gap: 8px; 3198 background: rgba(139,117,53,0.1); 3199 border: 1px solid rgba(139,117,53,0.2); 3200 color: #8B7535; padding: 8px 20px; border-radius: 50px; 3201 font-size: 0.72rem; font-weight: 700; letter-spacing: 2px; 3202 text-transform: uppercase; margin-bottom: 28px; 3203} 3204.cg-hero-badge::before { 3205 content: ''; width: 8px; height: 8px; 3206 background: #8B7535; border-radius: 50%; 3207 animation: cg-pulse 2s ease-in-out infinite; 3208} 3209@keyframes cg-pulse { 3210 0%, 100% { opacity: 1; transform: scale(1); } 3211 50% { opacity: 0.5; transform: scale(1.5); } 3212} 3213.cg-hero h1 { 3214 font-family: Calibri, 'Segoe UI', sans-serif; 3215 font-size: clamp(1.6rem, 2.8vw, 2.2rem); font-weight: 800; 3216 color: #1a1a2e; letter-spacing: 0.5px; margin-bottom: 12px; 3217 line-height: 1.3; text-transform: uppercase; 3218} 3219.cg-hero h1 span { color: #8B7535; } 3220.cg-hero .cg-hero-project-name { 3221 font-family: Calibri, 'Segoe UI', sans-serif; 3222 font-size: clamp(3rem, 5.5vw, 5rem); font-weight: 900; 3223 color: #1a1a2e; letter-spacing: 3px; margin-bottom: 24px; 3224 line-height: 1.05; text-transform: uppercase; 3225} 3226.cg-hero .cg-hero-project-name span { color: #8B7535; } 3227.cg-hero p { 3228 font-size: 1.05rem; color: #666; 3229 margin-bottom: 36px; font-weight: 400; line-height: 1.8; 3230} 3231.cg-hero-btns { display: flex; gap: 16px; flex-wrap: wrap; } 3232.cg-btn { 3233 display: inline-block; padding: 16px 36px; 3234 background: #8B7535; color: #fff; 3235 font-weight: 700; font-size: 0.82rem; 3236 border-radius: 6px; text-decoration: none; 3237 letter-spacing: 1.5px; text-transform: uppercase; 3238 transition: all 0.3s; 3239 border: none; cursor: pointer; 3240} 3241.cg-btn:hover { background: #756228; transform: translateY(-2px); box-shadow: 0 12px 30px rgba(139,117,53,0.25); } 3242.cg-btn-outline { 3243 display: inline-block; padding: 16px 36px; 3244 background: transparent; color: #1a1a2e; 3245 font-weight: 700; font-size: 0.82rem; 3246 border-radius: 6px; text-decoration: none; 3247 letter-spacing: 1.5px; text-transform: uppercase; 3248 transition: all 0.3s; 3249 border: 2px solid rgba(0,0,0,0.15); 3250} 3251.cg-btn-outline:hover { border-color: #8B7535; color: #8B7535; } 3252 3253.cg-hero-visual { 3254 position: relative; z-index: 2; 3255 display: flex; align-items: center; justify-content: center; 3256} 3257/* âââ HERO SLIDER âââ */ 3258.cg-hero-slider { 3259 width: 100%; max-width: 520px; 3260 border-radius: 24px; 3261 overflow: visible; 3262 box-shadow: 0 30px 60px rgba(0,0,0,0.1); 3263 position: relative; 3264} 3265.cg-hero-slider-track-wrapper { 3266 overflow: hidden; 3267 border-radius: 24px; 3268} 3269.cg-hero-slider-track { 3270 display: flex; 3271 transition: transform 0.6s ease; 3272} 3273.cg-hero-slide { 3274 min-width: 100%; 3275 position: relative; 3276} 3277.cg-hero-slide img { 3278 width: 100%; aspect-ratio: 4/3; object-fit: cover; display: block; 3279} 3280.cg-hero-slide-label { 3281 position: absolute; bottom: 0; left: 0; right: 0; 3282 background: linear-gradient(transparent, rgba(0,0,0,0.7)); 3283 padding: 40px 24px 20px; 3284 color: #fff; 3285 font-family: Calibri, 'Segoe UI', sans-serif; 3286 font-size: 0.85rem; font-weight: 700; 3287 letter-spacing: 1px; text-transform: uppercase; 3288} 3289.cg-hero-slider-dots { 3290 position: absolute; bottom: 12px; left: 50%; 3291 transform: translateX(-50%); 3292 display: flex; gap: 8px; z-index: 5; 3293} 3294.cg-hero-slider-dot { 3295 width: 10px; height: 10px; border-radius: 50%; 3296 background: rgba(255,255,255,0.5); border: none; 3297 cursor: pointer; transition: background 0.3s; 3298} 3299.cg-hero-slider-dot.active { background: #8B7535; } 3300.cg-hero-slider-arrows { 3301 position: absolute; top: 50%; left: 0; right: 0; 3302 display: flex; justify-content: space-between; 3303 transform: translateY(-50%); z-index: 5; padding: 0 12px; 3304} 3305.cg-hero-slider-arrow { 3306 width: 36px; height: 36px; border-radius: 50%; 3307 background: rgba(255,255,255,0.8); border: none; 3308 cursor: pointer; font-size: 1.2rem; color: #333; 3309 display: flex; align-items: center; justify-content: center; 3310 transition: background 0.3s; 3311} 3312.cg-hero-slider-arrow:hover { background: #fff; } 3313 3314.cg-hero-float-box { 3315 position: absolute; bottom: -30px; right: -20px; 3316 background: white; 3317 border-radius: 16px; padding: 20px 24px; 3318 box-shadow: 0 20px 50px rgba(0,0,0,0.12); 3319 border: 1px solid rgba(0,0,0,0.05); 3320 max-width: 240px; z-index: 10; 3321} 3322.cg-hero-float-box h4 {
3323 font-family: Calibri, 'Segoe UI', sans-serif; 3324 font-size: 0.85rem; font-weight: 700; color: #8E4585; 3325 text-transform: uppercase; letter-spacing: 1px; margin-bottom: 10px; 3326} 3327.cg-hero-float-box ul { list-style: none; } 3328.cg-hero-float-box li { 3329 padding: 5px 0; padding-left: 18px; position: relative; 3330 color: #555; font-size: 0.8rem; 3331} 3332.cg-hero-float-box li::before { 3333 content: ''; position: absolute; left: 0; top: 50%; 3334 width: 8px; height: 8px; border-radius: 2px; 3335 background: #8B7535; transform: translateY(-50%) rotate(45deg); 3336} 3337 3338/* âââ SERVICES CARDS (overlapping hero) âââ */ 3339.cg-services-bar { 3340 position: relative; z-index: 10; 3341 margin-top: -60px; 3342 padding: 0 60px; 3343 display: grid; grid-template-columns: repeat(4, 1fr); 3344 gap: 0; 3345} 3346.cg-service-card { 3347 background: #fff; 3348 padding: 40px 28px; 3349 border: 1px solid rgba(0,0,0,0.06); 3350 transition: all 0.4s; 3351 position: relative; 3352 overflow: hidden; 3353} 3354.cg-service-card::before { 3355 content: ''; position: absolute; top: 0; left: 0; right: 0; 3356 height: 3px; background: #8B7535; 3357 transform: scaleX(0); transition: transform 0.4s; transform-origin: left; 3358} 3359.cg-service-card:hover { transform: translateY(-8px); box-shadow: 0 20px 40px rgba(0,0,0,0.08); } 3360.cg-service-card:hover::before { transform: scaleX(1); } 3361.cg-service-img { 3362 width: 100%; height: 120px; object-fit: cover; 3363 border-radius: 10px; margin-bottom: 18px; 3364} 3365.cg-service-card h3 { 3366 font-family: Calibri, 'Segoe UI', sans-serif; 3367 font-size: 0.95rem; font-weight: 700; color: #1a1a2e; 3368 text-transform: uppercase; letter-spacing: 1px; margin-bottom: 12px; 3369} 3370.cg-service-card p { font-size: 0.85rem; color: #888; line-height: 1.7; } 3371 3372/* âââ SECTION COMMON âââ */ 3373.cg-section { padding: 100px 60px; max-width: 1400px; margin: 0 auto; } 3374.cg-section-full { padding: 100px 60px; } 3375.cg-section-header { margin-bottom: 60px; } 3376.cg-section-label { 3377 font-size: 0.72rem; font-weight: 700; color: #8B7535; 3378 letter-spacing: 3px; text-transform: uppercase; margin-bottom: 14px; 3379 display: flex; align-items: center; gap: 10px; 3380} 3381.cg-section-label::before { 3382 content: ''; width: 30px; height: 2px; background: #8B7535; 3383} 3384.cg-section-title { 3385 font-family: Calibri, 'Segoe UI', sans-serif; 3386 font-size: clamp(1.8rem, 3vw, 2.8rem); font-weight: 800; 3387 margin-bottom: 16px; color: #1a1a2e; 3388 text-transform: uppercase; letter-spacing: 1px; line-height: 1.15; 3389} 3390.cg-section-subtitle { 3391 font-size: 1rem; color: #777; max-width: 600px; 3392 line-height: 1.8; margin: 0 auto; 3393} 3394 3395/* âââ PROGETTO (About section) âââ */ 3396.cg-about { background: #fff; } 3397.cg-about-inner { 3398 max-width: 1400px; margin: 0 auto; 3399 display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; 3400} 3401.cg-about-text p { 3402 color: #666; line-height: 1.9; margin-bottom: 20px; font-size: 1rem; 3403} 3404.cg-about-features { margin-top: 32px; } 3405.cg-about-feature { 3406 display: flex; gap: 16px; align-items: flex-start; 3407 padding: 16px 0; 3408 border-bottom: 1px solid rgba(0,0,0,0.06); 3409} 3410.cg-about-feature-icon { 3411 width: 44px; height: 44px; flex-shrink: 0; 3412 background: rgba(139,117,53,0.08); 3413 border-radius: 10px; 3414 display: flex; align-items: center; justify-content: center; 3415 overflow: hidden; 3416} 3417.cg-about-feature-icon img { width: 100%; height: 100%; object-fit: cover; border-radius: 10px; } 3418.cg-about-feature h4 { 3419 font-family: Calibri, 'Segoe UI', sans-serif; 3420 font-size: 0.95rem; font-weight: 700; color: #1a1a2e; 3421 text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 4px; 3422} 3423.cg-about-feature p { font-size: 0.85rem; color: #888; margin: 0; line-height: 1.5; } 3424 3425.cg-about-image { 3426 position: relative; 3427 border-radius: 20px; overflow: visible; 3428} 3429.cg-about-image-main { 3430 width: 100%; border-radius: 20px; overflow: hidden; 3431 box-shadow: 0 20px 50px rgba(0,0,0,0.08); 3432} 3433.cg-about-image-main img { 3434 width: 100%; aspect-ratio: 4/3; object-fit: cover; display: block; 3435} 3436 3437/* âââ STATS âââ */ 3438.cg-stats-section { 3439 background: linear-gradient(135deg, #8E4585, #8B7535); 3440 padding: 60px; 3441} 3442.cg-stats-inner { 3443 max-width: 1400px; margin: 0 auto; 3444 display: grid; grid-template-columns: repeat(4, 1fr); gap: 40px; 3445} 3446.cg-stat { text-align: center; } 3447.cg-stat-num { 3448 font-family: Calibri, 'Segoe UI', sans-serif; 3449 font-size: 3rem; font-weight: 900; color: #fff; 3450} 3451.cg-stat-label { 3452 font-size: 0.8rem; color: rgba(255,255,255,0.85); 3453 font-weight: 600; letter-spacing: 1.5px; text-transform: uppercase; 3454 margin-top: 4px; 3455} 3456 3457/* âââ OBIETTIVI (Objectives) âââ */ 3458.cg-objectives { background: #FAF8F2; } 3459.cg-objectives-layout { 3460 max-width: 1200px; margin: 0 auto; 3461 position: relative; 3462 display: flex; flex-direction: column; align-items: center; gap: 40px; 3463} 3464.cg-objectives-center { 3465 width: 220px; height: 220px; 3466 border-radius: 50%; 3467 display: flex; align-items: center; justify-content: center; 3468 overflow: hidden; 3469 box-shadow: 0 20px 50px rgba(139,117,53,0.25); 3470} 3471.cg-objectives-center img { 3472 width: 100%; height: 100%; object-fit: cover; 3473} 3474.cg-objectives-grid { 3475 display: grid; grid-template-columns: 1fr 1fr; 3476 gap: 20px; width: 100%; 3477} 3478.cg-objective-card { 3479 background: #fff; 3480 border-radius: 16px; 3481 padding: 28px 24px; 3482 border: 1px solid rgba(0,0,0,0.06); 3483 transition: all 0.3s; 3484 display: flex; gap: 16px; align-items: flex-start; 3485} 3486.cg-objective-card:hover { box-shadow: 0 10px 30px rgba(0,0,0,0.06); transform: translateY(-4px); } 3487.cg-objective-card:last-child { grid-column: 1 / -1; max-width: 50%; justify-self: center; } 3488.cg-objective-icon { 3489 flex-shrink: 0; 3490 width: 42px; height: 42px; 3491 background: linear-gradient(135deg, rgba(139,117,53,0.1), rgba(142,69,133,0.1)); 3492 border-radius: 12px; 3493 display: flex; align-items: center; justify-content: center; 3494 color: #8B7535; 3495} 3496.cg-objective-icon svg { 3497 width: 22px; height: 22px; stroke: currentColor; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; 3498} 3499.cg-objective-card p { 3500 font-size: 0.9rem; color: #555; line-height: 1.7; 3501} 3502 3503/* âââ TEAM âââ */ 3504.cg-team { background: #fff; } 3505.cg-team-group-photo { 3506 max-width: 900px; margin: 40px auto 0; border-radius: 20px; overflow: hidden; 3507 box-shadow: 0 20px 50px rgba(0,0,0,0.08); 3508} 3509.cg-team-group-photo img { 3510 width: 100%; display: block; object-fit: cover; 3511} 3512 3513/* âââ RESEARCH UNITS âââ */ 3514.cg-units-grid { 3515 display: grid; grid-template-columns: repeat(3, 1fr); 3516 gap: 24px; max-width: 1200px; margin: 40px auto 0; 3517 padding: 0 60px; 3518} 3519.cg-unit-card { 3520 background: #FAF8F2; 3521 border-radius: 16px; 3522 padding: 40px 28px; 3523 text-align: center; 3524 border: 1px solid rgba(0,0,0,0.06); 3525 transition: all 0.4s; 3526 cursor: pointer; 3527} 3528.cg-unit-card:hover { transform: translateY(-6px); box-shadow: 0 15px 30px rgba(0,0,0,0.08); border-color: rgba(139,117,53,0.2); } 3529.cg-unit-logo { 3530 width: 140px; height: 140px; 3531 border-radius: 50%; 3532 object-fit: contain; 3533 margin: 0 auto 20px; 3534 background: #fff; 3535 padding: 12px; 3536 box-shadow: 0 4px 12px rgba(0,0,0,0.06); 3537} 3538.cg-unit-card h3 { 3539 font-family: Calibri, 'Segoe UI', sans-serif; 3540 font-size: 0.95rem; font-weight: 700; color: #1a1a2e; 3541 text-transform: uppercase; letter-spacing: 0.5px; 3542} 3543.cg-unit-card p { 3544 font-size: 0.82rem; color: #888; margin-top: 8px; line-height: 1.6; 3545} 3546.cg-unit-pi { 3547 font-size: 0.78rem; color: #8B7535; font-weight: 600; margin-top: 6px; 3548} 3549 3550/* âââ RICERCA (Lab Services style) âââ */ 3551.cg-research { background: #FAF8F2; } 3552.cg-research-inner { 3553 max-width: 1400px; margin: 0 auto; 3554 display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; 3555} 3556.cg-research-visual { 3557 border-radius: 20px; 3558 overflow: hidden; 3559 box-shadow: 0 20px 50px rgba(0,0,0,0.08); 3560} 3561.cg-research-visual img { 3562 width: 100%; aspect-ratio: 4/3; object-fit: cover; display: block; 3563} 3564.cg-research-text h3 { 3565 font-family: Calibri, 'Segoe UI', sans-serif; 3566 font-size: 1.6rem; font-weight: 800; color: #1a1a2e; 3567 text-transform: uppercase; letter-spacing: 1px; margin-bottom: 20px; 3568} 3569.cg-research-text p { color: #666; line-height: 1.9; margin-bottom: 16px; font-size: 1rem; } 3570.cg-research-tags { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 28px; } 3571.cg-research-tag { 3572 padding: 8px 18px; 3573 background: rgba(139,117,53,0.08); 3574 border: 1px solid rgba(139,117,53,0.15); 3575 color: #8B7535; border-radius: 6px; 3576 font-size: 0.78rem; font-weight: 700; 3577 letter-spacing: 0.5px; text-transform: uppercase; 3578} 3579 3580/* âââ TIMELINE (Roadmap) âââ */ 3581.cg-roadmap { background: #fff; }
3582.cg-roadmap-grid { 3583 display: grid; grid-template-columns: repeat(4, 1fr); 3584 gap: 24px; max-width: 1400px; margin: 0 auto; 3585} 3586.cg-roadmap-item { 3587 background: #FAF8F2; 3588 border-radius: 16px; 3589 padding: 36px 28px; 3590 border: 1px solid rgba(0,0,0,0.04); 3591 transition: all 0.4s; 3592 position: relative; overflow: hidden; 3593} 3594.cg-roadmap-item::before { 3595 content: ''; position: absolute; top: 0; left: 0; 3596 width: 4px; height: 100%; 3597 background: linear-gradient(180deg, #8B7535, #8E4585); 3598 opacity: 0; transition: opacity 0.3s; 3599} 3600.cg-roadmap-item:hover { transform: translateY(-6px); box-shadow: 0 15px 30px rgba(0,0,0,0.06); } 3601.cg-roadmap-item:hover::before { opacity: 1; } 3602.cg-roadmap-num { 3603 font-family: Calibri, 'Segoe UI', sans-serif; 3604 font-size: 2.5rem; font-weight: 900; color: rgba(139,117,53,0.15); 3605 margin-bottom: 16px; line-height: 1; 3606} 3607.cg-roadmap-item h3 { 3608 font-family: Calibri, 'Segoe UI', sans-serif; 3609 font-size: 1rem; font-weight: 700; color: #1a1a2e; 3610 text-transform: uppercase; letter-spacing: 0.5px; 3611 margin-bottom: 12px; 3612} 3613.cg-roadmap-item p { font-size: 0.85rem; color: #888; line-height: 1.7; } 3614.cg-roadmap-steps { list-style: none; margin-top: 12px; } 3615.cg-roadmap-steps li { 3616 font-size: 0.8rem; color: #666; line-height: 1.6; 3617 padding: 4px 0 4px 16px; position: relative; 3618} 3619.cg-roadmap-steps li::before { 3620 content: ''; position: absolute; left: 0; top: 11px; 3621 width: 6px; height: 6px; background: #8B7535; 3622 border-radius: 50%; 3623} 3624 3625/* âââ CONTATTI âââ */ 3626.cg-contact { 3627 background: #fff; 3628 text-align: center; 3629} 3630.cg-contact-inner { max-width: 700px; margin: 0 auto; } 3631.cg-contact p { color: #666; font-size: 1.05rem; line-height: 1.8; margin-bottom: 20px; } 3632.cg-contact-uni { 3633 font-family: Calibri, 'Segoe UI', sans-serif; 3634 font-size: 1.15rem; font-weight: 700; color: #1a1a2e; 3635 margin-bottom: 4px; 3636} 3637.cg-contact-loc { font-size: 0.9rem; color: #999; margin-bottom: 24px; } 3638.cg-contact-email { 3639 display: inline-block; font-size: 1.3rem; font-weight: 700; 3640 color: #8B7535; text-decoration: none; margin-bottom: 32px; 3641 transition: opacity 0.3s; 3642} 3643.cg-contact-email:hover { opacity: 0.8; } 3644 3645/* âââ INSTITUTIONAL LOGOS âââ */ 3646.cg-institutional { 3647 display: flex; align-items: center; justify-content: center; 3648 gap: 32px; flex-wrap: wrap; margin-top: 40px; 3649 padding: 24px; 3650 background: rgba(0,0,0,0.02); 3651 border-radius: 12px; 3652} 3653.cg-institutional img { 3654 height: 50px; object-fit: contain; 3655} 3656.cg-institutional-text { 3657 font-size: 0.72rem; color: #999; 3658 text-align: center; margin-top: 12px; 3659 line-height: 1.6; 3660} 3661 3662/* âââ CONFERENCES / DISSEMINATION âââ */ 3663.cg-conferences { 3664 background: #FAF8F2; 3665} 3666.cg-conf-cta { 3667 text-align: center; margin-top: 40px; 3668} 3669.cg-conf-cta a { 3670 display: inline-block; padding: 14px 36px; 3671 background: linear-gradient(135deg, #8B7535, #D4A017); 3672 color: #fff; font-weight: 700; font-size: 0.9rem; 3673 text-decoration: none; border-radius: 50px; 3674 letter-spacing: 1px; text-transform: uppercase; 3675 transition: transform 0.3s, box-shadow 0.3s; 3676} 3677.cg-conf-cta a:hover { 3678 transform: translateY(-2px); box-shadow: 0 8px 24px rgba(139,117,53,0.3); 3679} 3680.cg-conf-list { max-width: 900px; margin: 0 auto; } 3681.cg-conf-item { 3682 padding: 28px 0; 3683 border-bottom: 1px solid rgba(139,117,53,0.12); 3684} 3685.cg-conf-item:last-child { border-bottom: none; } 3686.cg-conf-event { 3687 font-family: Calibri, 'Segoe UI', sans-serif; 3688 font-size: 1.05rem; font-weight: 700; color: #1a1a2e; 3689 margin-bottom: 4px; line-height: 1.4; 3690} 3691.cg-conf-details { 3692 font-size: 0.82rem; color: #8B7535; font-weight: 600; 3693 margin-bottom: 8px; 3694} 3695.cg-conf-type { 3696 display: inline-block; 3697 font-size: 0.7rem; font-weight: 700; text-transform: uppercase; 3698 letter-spacing: 1px; 3699 padding: 3px 10px; border-radius: 20px; 3700 margin-bottom: 8px; 3701} 3702.cg-conf-type-oral { background: rgba(142,69,133,0.12); color: #8E4585; } 3703.cg-conf-type-poster { background: rgba(139,117,53,0.12); color: #8B7535; } 3704.cg-conf-authors { 3705 font-size: 0.82rem; color: #777; line-height: 1.5; 3706} 3707.cg-conf-title-text { 3708 font-style: italic; color: #555; font-size: 0.88rem; 3709 margin-top: 4px; 3710} 3711 3712/* âââ WORKSHOPS âââ */ 3713.cg-workshops-placeholder { 3714 max-width: 900px; margin: 0 auto; 3715 padding: 40px; text-align: center; 3716 background: rgba(139,117,53,0.04); 3717 border: 1px dashed rgba(139,117,53,0.2); 3718 border-radius: 16px; 3719 color: #999; font-size: 0.95rem; 3720} 3721 3722/* âââ FOOTER âââ */ 3723.cg-footer { 3724 background: #2A65AF; 3725 text-align: center; padding: 40px 24px; 3726 font-size: 0.82rem; color: rgba(255,255,255,0.7); 3727} 3728.cg-footer a { color: #fff; text-decoration: none; font-weight: 600; } 3729.cg-footer-logos { 3730 display: flex; align-items: center; justify-content: center; 3731 gap: 24px; margin-bottom: 20px; flex-wrap: wrap; 3732} 3733.cg-footer-logos img { height: 56px; object-fit: contain; } 3734.cg-footer-funding { 3735 font-size: 0.72rem; color: rgba(255,255,255,0.6); 3736 margin-top: 12px; line-height: 1.6; 3737 max-width: 700px; margin-left: auto; margin-right: auto; 3738} 3739 3740/* âââ PROJECT DESCRIPTION TABS âââ */ 3741.cg-desc-section { background: #FAF8F2; } 3742.cg-desc-tabs { 3743 display: flex; gap: 0; border-bottom: 2px solid rgba(0,0,0,0.08); margin-bottom: 32px; 3744} 3745.cg-desc-tab-btn { 3746 padding: 14px 28px; border: none; background: none; cursor: pointer; 3747 font-family: Calibri, 'Segoe UI', sans-serif; 3748 font-size: 0.82rem; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; 3749 color: #888; position: relative; transition: color 0.3s; 3750} 3751.cg-desc-tab-btn::after {
3752 content: ''; position: absolute; bottom: -2px; left: 0; right: 0; 3753 height: 3px; background: #8B7535; transform: scaleX(0); transition: transform 0.3s; 3754} 3755.cg-desc-tab-btn:hover { color: #555; } 3756.cg-desc-tab-btn.active { color: #8B7535; } 3757.cg-desc-tab-btn.active::after { transform: scaleX(1); } 3758.cg-desc-tab-panel { display: none; } 3759.cg-desc-tab-panel p { font-size: 0.95rem; color: #555; line-height: 1.9; margin-bottom: 16px; } 3760.cg-desc-tab-panel strong { color: #1a1a2e; } 3761.cg-desc-ru-list { list-style: none; margin: 16px 0; } 3762.cg-desc-ru-list li { 3763 padding: 12px 0 12px 20px; position: relative; 3764 font-size: 0.92rem; color: #555; line-height: 1.6; 3765 border-bottom: 1px solid rgba(0,0,0,0.04); 3766} 3767.cg-desc-ru-list li::before { 3768 content: ''; position: absolute; left: 0; top: 18px; 3769 width: 8px; height: 8px; background: #8B7535; border-radius: 2px; transform: rotate(45deg); 3770} 3771.cg-desc-results-grid { 3772 display: grid; grid-template-columns: 1fr; gap: 16px; counter-reset: result; 3773} 3774.cg-desc-result { 3775 display: flex; gap: 16px; align-items: flex-start; 3776 padding: 16px 20px; background: #fff; border-radius: 12px; 3777 border: 1px solid rgba(0,0,0,0.06); 3778} 3779.cg-desc-result-num { 3780 flex-shrink: 0; width: 36px; height: 36px; 3781 background: rgba(139,117,53,0.1); border-radius: 10px; 3782 display: flex; align-items: center; justify-content: center; 3783 font-family: Calibri, 'Segoe UI', sans-serif; 3784 font-size: 0.85rem; font-weight: 800; color: #8B7535; 3785} 3786.cg-desc-result p { font-size: 0.88rem; color: #555; line-height: 1.7; margin: 0; } 3787 3788/* âââ RESPONSIVE âââ */ 3789@media (max-width: 1024px) { 3790 .cg-hide-mobile { display: none !important; } 3791 .cg-hero { grid-template-columns: 1fr; padding: 180px 40px 80px; } 3792 .cg-hero-visual { display: none; } 3793 .cg-services-bar { grid-template-columns: repeat(2, 1fr); padding: 0 40px; } 3794 .cg-about-inner, .cg-research-inner { grid-template-columns: 1fr; gap: 40px; } 3795 .cg-objectives-grid { grid-template-columns: 1fr; } 3796 .cg-objective-card:last-child { max-width: 100%; }
3797 .cg-roadmap-grid { grid-template-columns: repeat(2, 1fr); } 3798 .cg-stats-inner { grid-template-columns: repeat(2, 1fr); } 3799 .cg-units-grid { grid-template-columns: 1fr; padding: 0 40px; } 3800 .cg-nav { padding: 16px 24px; } 3801 .cg-nav-links { display: none; } 3802 .cg-burger { display: flex; } 3803 .cg-section, .cg-section-full { padding: 80px 40px; } 3804 .cg-institutional-bar { padding: 10px 20px; gap: 14px; } 3805 .cg-institutional-bar img { height: 44px; } 3806 .cg-institutional-bar .cg-inst-divider { height: 32px; } 3807 .cg-conf-list { padding: 0 20px; } 3808} 3809@media (max-width: 640px) { 3810 .cg-services-bar { grid-template-columns: 1fr; margin-top: -30px; } 3811 .cg-objectives-grid { grid-template-columns: 1fr; } 3812 .cg-roadmap-grid { grid-template-columns: 1fr; padding: 0 10px !important; } 3813 .cg-stats-inner { grid-template-columns: 1fr; gap: 24px; } 3814 .cg-hero { padding: 200px 10px 50px; text-align: center; } 3815 .cg-hero p { text-align: center; } 3816 .cg-hero-btns { justify-content: center; } 3817 .cg-btn, .cg-btn-outline { width: 100%; text-align: center; padding: 14px 20px; } 3818 .cg-section, .cg-section-full { padding: 50px 10px; text-align: center; } 3819 .cg-about-inner { padding: 0 10px !important; } 3820 .cg-section-full > div { padding-left: 10px !important; padding-right: 10px !important; }
3821 .cg-roadmap-grid { padding: 0 10px !important; } 3822 .cg-services-bar { padding: 0 10px; } 3823 .cg-units-grid { padding: 0 10px; } 3824 .cg-institutional-bar { padding: 8px 6px; gap: 8px; justify-content: space-between; flex-wrap: nowrap; } 3825 .cg-institutional-bar img { height: 32px !important; flex-shrink: 1; min-width: 0; object-fit: contain; } 3826 .cg-institutional-bar .cg-logo-italiadomani { height: 58px !important; } 3827 .cg-institutional-bar .cg-inst-divider { display: flex; height: 28px; background: rgba(255,255,255,0.3); width: 1px; flex-shrink: 0; } 3828 3829 .cg-hero-project-name { font-size: 2rem !important; } 3830 .cg-section-title { font-size: 1.6rem; text-align: center; } 3831 .cg-footer-logos img { height: 40px; } 3832 .cg-conf-event { font-size: 0.92rem; } 3833 .cg-objectives-layout { padding: 0 10px !important; } 3834 .cg-objective-card { padding: 16px !important; text-align: center; } 3835 .cg-objective-card:last-child { max-width: 100% !important; } 3836 .cg-roadmap-item { padding: 20px 16px; text-align: center; } 3837 .cg-conf-item { padding: 16px 0; text-align: center; } 3838 .cg-conf-list { padding: 0 4px !important; } 3839 .cg-research-inner { padding: 0 10px !important; text-align: center; } 3840 .cg-footer { padding: 30px 10px; } 3841 .cg-footer-logos { gap: 12px; } 3842 .cg-footer-logos img { height: 32px; } 3843 .cg-about-text { text-align: center; } 3844 .cg-about-inner p { text-align: center; } 3845} 3846</style> 3847 3848<div class="cg-root"> 3849 3850<!-- INSTITUTIONAL BAR (logo firma con logo ente beneficiario â secondo tipo MUR) --> 3851<div class="cg-institutional-bar"> 3852 <img src="/images/footer-eu-white.png" alt="Finanziato dall'Unione europea - NextGenerationEU" style="height:56px;" /> 3853 <div class="cg-inst-divider"></div> 3854 <img src="/images/footer-mur-white.png" alt="Ministero dell'Università e della Ricerca" style="height:42px;" /> 3855 <div class="cg-inst-divider"></div> 3856 <img src="/images/footer-italiadomani-white.png" alt="Italia Domani - Piano Nazionale di Ripresa e Resilienza" style="height:72px;" class="cg-logo-italiadomani" /> 3857 <div class="cg-inst-divider cg-hide-mobile"></div> 3858 <img src="/images/logo-uda.png" alt="UdA - Università G. d'Annunzio" style="height:80px;" class="cg-hide-mobile" /> 3859 <img src="/images/logo-unime-white.png" alt="UNIME" style="height:76px;" class="cg-hide-mobile" /> 3860 <img src="/images/logo-uniba.png" alt="UNIBA" style="height:80px;" class="cg-hide-mobile" /> 3861</div> 3862 3863<nav class="cg-nav"> 3864 <div class="cg-nav-logo"><img src="/images/logo-circulagris.png" alt="CIRCULAGRIS" /></div> 3865 <ul class="cg-nav-links"> 3866 <li><a onclick="cgScrollTo('progetto')">Progetto</a></li> 3867 <li><a onclick="cgScrollTo('obiettivi')">Obiettivi</a></li> 3868 <li><a onclick="cgScrollTo('roadmap')">Fasi</a></li> 3869 <li><a onclick="cgScrollTo('ricerca')">Risultati della ricerca</a></li> 3870 <li><a onclick="cgScrollTo('team')" style="cursor:pointer">Ricercatori</a></li> 3871 <li><a href="https://www.circulagris.com/workshops-ita/" target="_top" style="cursor:pointer">Workshop</a></li> 3872 <li><a href="https://www.circulagris.com/conferenze/" target="_top" style="cursor:pointer">Convegni</a></li> 3873 <li><a href="https://www.circulagris.com/pubblicazioni/" target="_top" style="cursor:pointer">Pubblicazioni</a></li> 3874 <li><a onclick="cgScrollTo('contatti')">Contatti</a></li> 3875 <li class="cg-lang-switch"><a href="https://www.circulagris.com/" target="_top" style="background:#8B7535;color:#fff !important;padding:6px 14px;border-radius:20px;font-weight:700;cursor:pointer;">EN</a></li> 3876 </ul> 3877 <div class="cg-burger" id="cgBurger" onclick="cgToggleMenu()"> 3878 <span></span><span></span><span></span> 3879 </div> 3880</nav> 3881 3882<!-- MOBILE MENU --> 3883<ul class="cg-mobile-menu" id="cgMobileMenu"> 3884 <button class="cg-mobile-close" onclick="cgToggleMenu()" aria-label="Chiudi menu"></button> 3885 <li><a onclick="cgScrollTo('progetto')">Progetto</a></li> 3886 <li><a onclick="cgScrollTo('obiettivi')">Obiettivi</a></li> 3887 3888 <li><a onclick="cgScrollTo('roadmap')">Fasi</a></li> 3889 <li><a onclick="cgScrollTo('ricerca')">Risultati della ricerca</a></li> 3890 <li><a onclick="cgScrollTo('team')" style="cursor:pointer">Ricercatori</a></li> 3891 <li>
3891<a href="https://www.circulagris.com/workshops-ita/" target="_top" style="cursor:pointer">Workshop</a></li> 3892 <li><a href="https://www.circulagris.com/conferenze/" target="_top" style="cursor:pointer">Convegni</a></li> 3893 <li><a href="https://www.circulagris.com/pubblicazioni/" target="_top" style="cursor:pointer">Pubblicazioni</a></li> 3894 <li><a onclick="cgScrollTo('contatti')">Contatti</a></li> 3895 <li class="cg-lang-switch"><a href="https://www.circulagris.com/" target="_top" style="background:#8B7535;color:#fff !important;padding:6px 14px;border-radius:20px;font-weight:700;cursor:pointer;">EN</a></li> 3896</ul> 3897 3898<!-- HERO --> 3899<section class="cg-hero"> 3900 <div class="cg-hero-deco1"></div> 3901 <div class="cg-hero-deco2"></div> 3902 <div class="cg-hero-deco3"></div> 3903 <div class="cg-hero-content"> 3904 <div class="cg-hero-badge">PRIN 2022</div> 3905 <h1>Towards Circular and Sustainable Agri-food Systems: Metrics for Assessment</h1> 3906 <div class="cg-hero-project-name" style="font-family: Calibri, 'Segoe UI', sans-serif; font-size: clamp(3rem, 5.5vw, 5rem); font-weight: 900; color: #8B7535; letter-spacing: 3px; text-transform: uppercase; line-height: 1.05; margin-bottom: 24px;">CIRCULAGRIS</div> 3907 <p>Circolarità e sostenibilità nei sistemi agroalimentari: valutazione integrata delle filiere del vino, dell'olio d'oliva e del pane/pasta attraverso metodologie basate sul ciclo di vita e indicatori di circolarità .</p> 3908 <div class="cg-hero-btns"> 3909 <a onclick="cgScrollTo('progetto')" class="cg-btn" style="cursor:pointer;">Scopri il progetto</a> 3910 <a onclick="cgScrollTo('contatti')" class="cg-btn-outline" style="cursor:pointer;">Contattaci</a> 3911 </div> 3912 </div> 3913 <div class="cg-hero-visual"> 3914 <div class="cg-hero-slider" id="heroSlider"> 3915 <div class="cg-hero-slider-track-wrapper"> 3916 <div class="cg-hero-slider-track" id="heroSliderTrack"> 3917 <div class="cg-hero-slide"> 3918 <img src="/images/research-vineyard.jpg" alt="Wine supply chain" /> 3919 <div class="cg-hero-slide-label">Filiera del vino</div> 3920 </div> 3921 <div class="cg-hero-slide"> 3922 <img src="/images/olive-grove.jpg" alt="Olive oil supply chain" /> 3923 <div class="cg-hero-slide-label">Filiera dell'olio d'oliva</div> 3924 </div> 3925 <div class="cg-hero-slide"> 3926 <img src="/images/hero-wheat.jpg" alt="Bread/Pasta supply chain" /> 3927 <div class="cg-hero-slide-label">Filiera pane/pasta</div> 3928 </div> 3929 </div> 3930 </div> 3931 <div class="cg-hero-slider-arrows"> 3932 <button class="cg-hero-slider-arrow" onclick="window.cgSliderPrev()">â¹</button> 3933 <button class="cg-hero-slider-arrow" onclick="window.cgSliderNext()">âº</button> 3934 </div> 3935 <div class="cg-hero-slider-dots" id="heroSliderDots"> 3936 <button class="cg-hero-slider-dot active" onclick="window.cgSliderGoTo(0)"></button> 3937 <button class="cg-hero-slider-dot" onclick="window.cgSliderGoTo(1)"></button> 3938 <button class="cg-hero-slider-dot" onclick="window.cgSliderGoTo(2)"></button> 3939 </div> 3940 <div class="cg-hero-float-box"> 3941 <h4>Filiere</h4> 3942 <ul> 3943 <li>Vino</li> 3944 <li>Olio d'oliva</li> 3945 <li>Pane/pasta</li> 3946 </ul> 3947 </div> 3948 </div> 3949 </div> 3950</section> 3951 3952<!-- SERVICES BAR (Metodologie) â Ordine: LCA, S-LCA, LCC, Circularity Metrics --> 3953<div class="cg-services-bar"> 3954 <div class="cg-service-card"> 3955 <img class="cg-service-img" src="/images/lca-environmental.jpg" alt="Life Cycle Assessment" /> 3956 <h3>Life Cycle Assessment</h3> 3957 <p>Valutazione dei potenziali impatti ambientali lungo l'intero ciclo di vita secondo gli standard ISO 14040/44.</p> 3958 </div> 3959 <div class="cg-service-card"> 3960 <img class="cg-service-img" src="/images/social-lca.jpg" alt="Social Life Cycle Assessment" /> 3961 <h3>Social Life Cycle Assessment</h3> 3962 <p>Valutazione dei potenziali impatti sociali sugli stakeholder.</p> 3963 </div> 3964 <div class="cg-service-card"> 3965 <img class="cg-service-img" src="/images/life-cycle-costing.jpg" alt="Life Cycle Costing" /> 3966 <h3>Life Cycle Costing</h3> 3967 <p>Analisi dei costi interni e delle esternalità .</p> 3968 </div> 3969 <div class="cg-service-card"> 3970 <img class="cg-service-img" src="/images/circularity-wheel.png" alt="Circularity Metrics" /> 3971 <h3>Metriche di circolarità </h3> 3972 <p>
3972Indicatori quantitativi per misurare il grado di circolarità delle filiere agroalimentari.</p> 3973 </div> 3974</div> 3975 3976<!-- ABOUT / PROGETTO --> 3977<section id="progetto" class="cg-section-full cg-about"> 3978 <div class="cg-about-inner" style="padding: 0 60px; max-width: 1400px; margin: 0 auto;"> 3979 <div> 3980 <div class="cg-section-header"> 3981 <div class="cg-section-label">Il Progetto</div> 3982 <h2 class="cg-section-title">Circolarità e Sostenibilità nel Settore Agroalimentare</h2> 3983 </div> 3984 <div class="cg-about-text"> 3985 <p>CIRCULAGRIS è un Progetto di Ricerca di Interesse Nazionale (PRIN) volto allo sviluppo di metriche di circolarità e sostenibilità per le filiere agroalimentari italiane, con particolare attenzione alle filiere del vino, dell'olio d'oliva e del pane/pasta.</p> 3986 <p>Il progetto integra le metodologie Life Cycle Assessment (LCA), Social Life Cycle Assessment (S-LCA) e Life Cycle Costing (LCC) e indicatori di circolarità al fine di fornire una valutazione olistica degli impatti ambientali, sociali ed economici dei sistemi circolari.</p> 3987 </div> 3988 <div class="cg-about-features"> 3989 <div class="cg-about-feature"> 3990 <div class="cg-about-feature-icon"> 3991 <img src="/images/about-lab.jpg" alt="Laboratory" /> 3992 </div> 3993 <div> 3994 <h4>Metodologie con approccio di ciclo di vita</h4> 3995 <p>Integrazione di LCA, S-LCA e LCC</p> 3996 </div> 3997 </div> 3998 <div class="cg-about-feature"> 3999 <div class="cg-about-feature-icon"> 4000 <img src="/images/circularity-indicators.jpg" alt="Circularity indicators" /> 4001 </div> 4002 <div> 4003 <h4>Indicatori di circolarità </h4> 4004 <p>Metriche e indicatori per la valutazione della circolarità nel settore agroalimentare</p> 4005 </div> 4006 </div> 4007 </div> 4008 </div> 4009 <div class="cg-about-image"> 4010 <div class="cg-about-image-main"> 4011 <img src="/images/agrifood-lab.png" alt="Agri-food products in research laboratory - olive oil, wine, pasta" /> 4012 </div> 4013 </div> 4014 </div> 4015</section> 4016 4017<!-- BRIEF DESCRIPTION OF THE PROJECT --> 4018<section class="cg-section-full cg-desc-section"> 4019 <div class="cg-section" style="padding-top: 60px; padding-bottom: 60px;"> 4020 <div class="cg-section-header"> 4021 <div class="cg-section-label">Breve descrizione</div> 4022 <h2 class="cg-section-title">Il progetto</h2> 4023 </div> 4024 4025 <!-- Description content --> 4026 <div style="max-width: 900px; margin: 0 auto;"> 4027 <p style="font-size: 0.92rem; color: #555; line-height: 1.8; margin-bottom: 16px;">La sostenibilità agricola è al centro di numerose iniziative dell'Unione Europea, tra cui la Politica Agricola Comune e la "Farm to Fork Strategy". Quest'ultima è fondamentale per l'attuazione del nuovo European Green Deal (EGD), nel quale il paradigma dell'Economia Circolare (CE) è stato saldamente integrato sia nelle politiche sia nelle pratiche aziendali. In Italia, l'agricoltura ricopre una posizione di rilievo.</p> 4028 <p style="font-size: 0.92rem; color: #555; line-height: 1.8; margin-bottom: 16px;">La letteratura sottolinea l'importanza di valutare gli impatti di sostenibilità sia a livello aziendale sia inter-aziendale. Una filiera circolare non sempre rappresenta la scelta più sostenibile e gli impatti devono essere valutati caso per caso. Per il settore agroalimentare, le metodologie basate sul ciclo di vita â Life Cycle Assessment, Social Life Cycle Assessment e Life Cycle Costing â sono considerate adeguate per la valutazione della sostenibilità . à tuttavia necessario un ulteriore sviluppo metodologico per valutare in modo efficace le pratiche di economia circolare.</p> 4029 <p style="font-size: 0.92rem; color: #555; line-height: 1.8; margin-bottom: 16px;"><strong>Il progetto mira a comprendere la relazione tra circolarità e sostenibilità in questo settore, individuando metriche adeguate ed esplorando l'impatto delle pratiche circolari sulla sostenibilità .</strong></p> 4030 <p style="font-size: 0.92rem; color: #555; line-height: 1.8; margin-bottom: 12px;">Il progetto prevede la partecipazione di tre Unità di Ricerca italiane:</p> 4031 <ul class="cg-desc-ru-list"> 4032 <li><strong>RU1</strong>
4032 â Università degli Studi "G. d'Annunzio" di Chieti-Pescara (Abruzzo) â <em>Coordinatore del progetto</em></li> 4033 <li><strong>RU2</strong> â Università degli Studi di Messina (Sicilia)</li> 4034 <li><strong>RU3</strong> â Università degli Studi di Bari "Aldo Moro" (Puglia)</li> 4035 </ul> 4036 </div> 4037 </div> 4038</section> 4039 4040<!-- STATS --> 4041<div class="cg-stats-section"> 4042 <div class="cg-stats-inner"> 4043 <div class="cg-stat"><div class="cg-stat-num">3</div><div class="cg-stat-label">Filiere analizzate</div></div> 4044 <div class="cg-stat"><div class="cg-stat-num">3</div><div class="cg-stat-label">Unità di ricerca</div></div> 4045 <div class="cg-stat"><div class="cg-stat-num" id="pubCount">0</div><div class="cg-stat-label">Prodotti della ricerca</div></div> 4046 <div class="cg-stat"><div class="cg-stat-num">28</div><div class="cg-stat-label">Mesi di ricerca</div></div> 4047 </div> 4048</div> 4049 4050<!-- OBIETTIVI --> 4051<section id="obiettivi" class="cg-section-full cg-objectives"> 4052 <div class="cg-section" style="padding-bottom: 40px;"> 4053 <div class="cg-section-header"> 4054 <div class="cg-section-label">Obiettivi</div> 4055 <h2 class="cg-section-title">Obiettivi</h2> 4056 </div> 4057 </div> 4058 <div class="cg-objectives-layout" style="padding: 0 60px;"> 4059 <div class="cg-objectives-center"> 4060 <img src="/images/circularity-wheel.png" alt="Circularity in agri-food" /> 4061 </div> 4062 <div class="cg-objectives-grid"> 4063 <div class="cg-objective-card"> 4064 <div class="cg-objective-icon"><svg viewBox="0 0 24 24"><path d="M3 3h18v18H3zM9 3v18M15 3v18M3 9h18M3 15h18"/></svg></div> 4065 <p>Sviluppo di un framework metodologico per valutare le implicazioni sulla sostenibilità delle tre filiere agroalimentari selezionate.</p> 4066 </div> 4067 <div class="cg-objective-card"> 4068 <div class="cg-objective-icon"><svg viewBox="0 0 24 24"><path d="M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z"/><path d="M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z"/></svg></div> 4069 <p>Approfondimento delle scelte metodologiche per l'applicazione di approcci basati sul ciclo di vita ai prodotti alimentari in filiere circolari.</p> 4070 </div> 4071 <div class="cg-objective-card"> 4072 <div class="cg-objective-icon"><svg viewBox="0 0 24 24"><circle cx="11" cy="11" r="8"/><path d="m21 21-4.3-4.3"/></svg></div> 4073 <p>Identificazione di indicatori per la valutazione della circolarità specifici per il settore agroalimentare.</p> 4074 </div> 4075 <div class="cg-objective-card"> 4076 <div class="cg-objective-icon"><svg viewBox="0 0 24 24"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/></svg></div> 4077 <p>Definizione di un approccio integrato alla valutazione di circolarità e sostenibilità , a supporto dei decisori nell'orientare le filiere verso modelli più circolari e, al contempo, più sostenibili.</p> 4078 </div> 4079 <div class="cg-objective-card"> 4080 <div class="cg-objective-icon"><svg viewBox="0 0 24 24"><path d="M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z"/></svg></div> 4081 <p>Individuazione di best practice sostenibili per la configurazione delle filiere del vino, dell'olio d'oliva e di pasta/pane.</p> 4082 </div> 4083 </div> 4084 </div> 4085</section> 4086 4087<!-- TEAM --> 4088<section id="team" class="cg-section-full cg-team"> 4089 <div class="cg-section" style="padding-bottom: 40px;"> 4090 <div class="cg-section-header"> 4091 <div class="cg-section-label">Gruppo di ricerca</div> 4092 <h2 class="cg-section-title">I nostri ricercatori</h2> 4093 <p class="cg-section-subtitle">Un gruppo di ricerca interdisciplinare con competenze in economia circolare, sostenibilità , Life Cycle Thinking e sistemi agroalimentari.</p> 4094 </div> 4095 </div> 4096 4097 <!-- Research Units --> 4098 <div style="padding: 0 60px; max-width: 1400px; margin: 0 auto;"> 4099 <div class="cg-section-label" style="margin-bottom: 24px;">Unità di ricerca</div> 4100 </div> 4101 <div class="cg-units-grid"> 4102 <div class="cg-unit-card"> 4103 <img class="cg-unit-logo" src="/images/logo-uda.png" alt="Logo Università degli Studi G. d'Annu
4103nzio Chieti-Pescara" /> 4104 <h3>Università degli Studi "G. d'Annunzio"<br/>Chieti-Pescara</h3> 4105 <p>Coordinatore del progetto CIRCULAGRIS, il gruppo di Chieti-Pescara vanta una consolidata esperienza nella ricerca multi- e interdisciplinare sulla sostenibilità . I membri dell'unità hanno maturato molti anni di esperienza scientifica nel campo della Life Cycle Assessment (LCA) applicata ai sistemi agroalimentari.</p> 4106 <div class="cg-unit-pi">Principal Investigator: Prof. Andrea Raggi</div> 4107 </div> 4108 <div class="cg-unit-card"> 4109 <img class="cg-unit-logo" src="/images/logo-unime-color.png" alt="Logo Università di Messina" /> 4110 <h3>Università degli Studi di Messina</h3> 4111 <p>L'unità di Messina ha esperienza in progetti di ricerca multi- e interdisciplinari, a livello nazionale e internazionale, in cui strumenti e metodi del Life Cycle Thinking (LCT) sono stati applicati al sistema agroalimentare, con particolare attenzione alla filiera del vino, alla mappatura dei sistemi circolari e all'adattamento delle metriche di circolarità .</p> 4112 <div class="cg-unit-pi">Responsabile di Unità : Prof.ssa Roberta Salomone</div> 4113 </div> 4114 <div class="cg-unit-card"> 4115 <img class="cg-unit-logo" src="/images/logo-uniba-color.png" alt="Logo Università di Bari Aldo Moro" /> 4116 <h3>Università degli Studi di Bari Aldo Moro</h3> 4117 <p>L'unità di Bari si concentra sull'Environmental Life Cycle Costing (LCC) nelle filiere del pane e della pasta e nel settore dell'olio d'oliva, con l'obiettivo di integrare LCA, LCC e S-LCA per la valutazione dei sistemi circolari e la definizione di indicatori economici, ambientali e sociali.</p> 4118 <div class="cg-unit-pi">Responsabile di Unità : Prof. Bruno Notarnicola</div> 4119 </div> 4120 </div> 4121 4122 <!-- View All Researchers Link --> 4123 <div style="text-align: center; margin: 40px 0 20px;"> 4124 <a href="https://www.circulagris.com/ricercatori/" target="_top" style="display: inline-flex; align-items: center; gap: 8px; padding: 14px 32px; background: linear-gradient(135deg, #8B7535, #D4A017); color: #fff; text-decoration: none; border-radius: 50px; font-weight: 700; font-size: 0.85rem; letter-spacing: 1px; text-transform: uppercase; transition: opacity 0.3s;">Vedi tutti i ricercatori â</a> 4125 </div> 4126 4127 <!-- Group Photo --> 4128 <div class="cg-team-group-photo"> 4129 <img src="/images/team-group.jpg" alt="CIRCULAGRIS research team at workshop" /> 4130 </div> 4131</section> 4132 4133<!-- ROADMAP --> 4134<section id="roadmap" class="cg-section-full cg-roadmap"> 4135 <div class="cg-section" style="padding-bottom: 40px;"> 4136 <div class="cg-section-header"> 4137 <div class="cg-section-label">Fasi del progetto</div> 4138 <h2 class="cg-section-title">Roadmap della ricerca</h2> 4139 </div> 4140 </div>
4141 <div class="cg-roadmap-grid" style="padding: 0 60px;"> 4142 <div class="cg-roadmap-item"> 4143 <div class="cg-roadmap-num">01</div> 4144 <h3>Fase 1 â Stato dell'arte e rassegna della letteratura</h3> 4145 <ul class="cg-roadmap-steps"> 4146 <li>Step 1.1 â Individuazione degli indicatori per la misurazione della circolarità nel settore agroalimentare</li> 4147 <li>Step 1.2 â Definizione di sistemi circolari nelle filiere agroalimentari selezionate</li> 4148 <li>Step 1.3 â Identificazione dei metodi e degli indicatori di circolarità più idonei per le filiere selezionate</li> 4149 </ul> 4150 </div> 4151 <div class="cg-roadmap-item"> 4152 <div class="cg-roadmap-num">02</div> 4153 <h3>Fase 2 â Sviluppo metodologico</h3> 4154 <ul class="cg-roadmap-steps"> 4155 <li>Step 2.1 â Adattamento delle metodologie Life Cycle Thinking (LCT) ai settori agroalimentari</li> 4156 <li>Step 2.2 â Integrazione delle diverse dimensioni della sostenibilità e delle metriche di circolarità </li> 4157 </ul> 4158 </div> 4159 <div class="cg-roadmap-item"> 4160 <div class="cg-roadmap-num">03</div> 4161 <h3>Fase 3 â Ricerca applicativa</h3> 4162 <ul class="cg-roadmap-steps"> 4163 <li>Step 3.1 â Valutazione della circolarità e della sostenibilità delle filiere selezionate</li> 4164 <li>Step 3.2 â Confronto tra circolarità e sostenibilità dei sistemi mediante analisi di scenario</li> 4165 </ul> 4166 </div> 4167 <div class="cg-roadmap-item"> 4168 <div class="cg-roadmap-num">04</div> 4169 <h3>Fase 4 â Disseminazione e comunicazione</h3> 4170 <p>Diffusione dei risultati attraverso pubblicazioni scientifiche, partecipazione a convegni e attività di coinvolgimento degli stakeholder.</p> 4171 </div> 4172 </div> 4173</section> 4174 4175<!-- RISULTATI DELLA RICERCA --> 4176<section id="ricerca" class="cg-section-full cg-research"> 4177 <div style="padding: 0 60px; max-width: 1400px; margin: 0 auto;"> 4178 <div class="cg-section-header" style="text-align:center;"> 4179 <div class="cg-section-label" style="justify-content:center;">Attività di ricerca</div> 4180 <h2 class="cg-section-title">Risultati della ricerca</h2> 4181 <p class="cg-section-subtitle">Esplora i risultati scientifici del progetto CIRCULAGRIS.</p> 4182 <div style="display:flex; flex-wrap:wrap; justify-content:center; gap:18px; margin-top:32px;"> 4183 <a href="https://www.circulagris.com/pubblicazioni/" target="_top" style="display:inline-flex; align-items:center; padding:14px 36px; background:linear-gradient(135deg,#8B7535,#D4A017); color:#fff; font-weight:700; font-size:0.9rem; letter-spacing:1.5px; text-transform:uppercase; text-decoration:none; border-radius:50px; transition:all 0.3s; box-shadow:0 4px 15px rgba(139,117,53,0.3);">Pubblicazioni</a> 4184 <a href="https://www.circulagris.com/conferenze/" target="_top" style="display:inline-flex; align-items:center; padding:14px 36px; background:linear-gradient(135deg,#8B7535,#D4A017); color:#fff; font-weight:700; font-size:0.9rem; letter-spacing:1.5px; text-transform:uppercase; text-decoration:none; border-radius:50px; transition:all 0.3s; box-shadow:0 4px 15px rgba(139,117,53,0.3);">Convegni</a> 4185 <a href="https://www.circulagris.com/workshops-ita/" target="_top" style="display:inline-flex; align-items:center; padding:14px 36px; background:linear-gradient(135deg,#8B7535,#D4A017); color:#fff; font-weight:700; font-size:0.9rem; letter-spacing:1.5px; text-transform:uppercase; text-decoration:none; border-radius:50px; transition:all 0.3s; box-shadow:0 4px 15px rgba(139,117,53,0.3);">Workshop</a> 4186 </div> 4187 </div> 4188 </div> 4189</section> 4190 4191<!-- CONTATTI --> 4192<section id="contatti" class="cg-section-full cg-contact"> 4193 <div class="cg-contact-inner"> 4194 <div class="cg-section-header" style="text-align: center;"> 4195 <div class="cg-section-label" style="justify-content: center;">Contatti</div> 4196 <h2 class="cg-section-title">Contattaci</h2> 4197 </div> 4198 <p>Interessato al progetto CIRCULAGRIS o vuoi saperne di più sulle nostre attività di ricerca? Contattaci.</p> 4199 <div class="cg-contact-uni">
4199Università degli Studi "G. d'Annunzio" Chieti-Pescara</div> 4200 <div class="cg-contact-loc">Viale Pindaro 42, 65127 Pescara, Italia</div> 4201 <a href="mailto:[email protected]" class="cg-contact-email">[email protected]</a> 4202 <div style="margin-top: 8px;"> 4203 <a href="https://www.linkedin.com/company/circulagris-project-prin-2022" target="_blank" rel="noopener noreferrer" style="display: inline-flex; align-items: center; gap: 8px; color: #0077B5; text-decoration: none; font-size: 0.95rem; font-weight: 600; transition: opacity 0.3s;"> 4204 <svg xmlns="http://www.w3.org/2000/svg" width="22" height="22" viewBox="0 0 24 24" fill="#0077B5"><path d="M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433a2.062 2.062 0 01-2.063-2.065 2.064 2.064 0 112.063 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z"/></svg> 4205 CIRCULAGRIS su LinkedIn 4206 </a> 4207 </div> 4208 </div> 4209</section> 4210 4211<!-- FOOTER --> 4212<footer class="cg-footer"> 4213 <div class="cg-footer-logos"> 4214 <img src="/images/logo-circulagris.png" alt="CIRCULAGRIS" style="height: 50px; filter: brightness(0) invert(1);" /> 4215 </div> 4216 <div class="cg-footer-logos" style="margin-top: 16px;"> 4217 <img src="/images/footer-eu-white.png" alt="Finanziato dall'Unione europea - NextGenerationEU" style="height:56px;" /> 4218 <img src="/images/footer-mur-white.png" alt="Ministero dell'Università e della Ricerca" style="height:42px;" /> 4219 <img src="/images/footer-italiadomani-white.png" alt="Italia Domani - PNRR" style="height:72px;" /> 4220 <img src="/images/logo-uda.png" alt="UdA" style="height:80px;" /> 4221 <img src="/images/logo-unime-white.png" alt="UNIME" style="height:76px;" /> 4222 <img src="/images/logo-uniba.png" alt="UNIBA" style="height:80px;" /> 4223 </div> 4224 <p style="margin-top: 20px;">© 2024 CIRCULAGRIS â PRIN 2022 | <a href="https://www.unich.it" target="_blank">Università degli Studi "G. d'Annunzio" Chieti-Pescara</a></p> 4225 <div class="cg-footer-funding"> 4226 Progetto di ricerca "Towards circular and sustainable agri-food systems: metrics for assessment (CIRCULAGRIS)" PRIN2022 (Progetti di Ricerca di Interesse Nazionale) finanziato dall'Unione Europea - Next Generation EU, Missione 4, Componente 2, CUP D53D23011220006. 4227 </div> 4228 <div style="margin-top: 16px; font-size: 0.72rem; color: rgba(255,255,255,0.5);"> 4229 <a href="https://www.sitiwebshop.it/?utm_source=sito-cliente&utm_medium=circulagris-universita-ch" target="_blank" rel="noopener noreferrer" style="color: rgba(255,255,255,0.8); text-decoration: underline;">Powered by Webshop Human AI Automation</a> 4230 </div> 4231</footer> 4232 4233</div> 4234 4235`}})),C2=()=>(as(),x.useEffect(()=>{function e(){const t=document.querySelector(".cg-res-inst-bar"),i=document.querySelector(".cg-res-nav");t&&i&&(i.style.top=t.offsetHeight+"px")}return requestAnimationFrame(e),setTimeout(e,100),setTimeout(e,500),window.addEventListener("resize",e),window.addEventListener("load",e),()=>{window.removeEventListener("resize",e),window.removeEventListener("load",e)}},[]),I.jsx("div",{dangerouslySetInnerHTML:{__html:` 4236<style> 4237.cg-res-root *, .cg-res-root *::before, .cg-res-root *::after { margin: 0; padding: 0; box-sizing: border-box; } 4238.cg-res-root { 4239 font-family: Calibri, 'Segoe UI', sans-serif; 4240 color: #3a3a4a; line-height: 1.6; background: #FAF8F2; 4241 min-height: 100vh; 4242} 4243.cg-res-root img { max-width: 100%; } 4244 4245/* âââ INSTITUTIONAL BAR âââ */ 4246.cg-res-inst-bar { 4247 position: fixed; top: 0; left: 0; right: 0; z-index: 101; 4248 background: #2A65AF; 4249 display: flex; align-items: center; justify-content: center; 4250 gap: 28px; padding: 14px 40px; 4251 border-bottom: 1px solid rgba(0,0,0,0.08); 4252 flex-wrap: wrap; 4253} 4254.cg-res-inst-bar img { height: 64px; object-fit: contain; flex-shrink: 0; } 4255.cg-res-inst-bar .cg-inst-divider { 4256 width: 1px; height: 48px; background: rgba(255,255,255,0.3); flex-shrink: 0; 4257} 4258 4259/* âââ NAV âââ */ 4260.cg-res-nav { 4261 position: fixed; top: 92px; left: 0; right: 0; z-index: 100; 4262 background: rgba(255,255,255,0.92); 4263 backdrop-filter: blur(16px); 4264 padding: 18px 60px; 4265 display: flex; align-items: center; justify-content: space-between; 4266 border-bottom: 1px solid rgba(0,0,0,0.06); 4267 box-shadow: 0 2px 20px rgba(0,0,0,0.04); 4268} 4269.cg-res-nav-logo { display: flex; align-items: center; } 4270.cg-res-nav-logo img { height: 56px; object-fit: contain; margin-right: 16px; } 4271.cg-res-nav-links { display: flex; gap: 32px; list-style: none; } 4272.cg-res-nav-links a { 4273 color: #555; text-decoration: none; font-size: 0.82rem; 4274 font-weight: 600; letter-spacing: 1.5px; text-transform: uppercase; 4275 transition: color 0.3s; position: relative; cursor: pointer; 4276} 4277.cg-res-nav-links a:hover { color: #8B7535; } 4278.cg-res-nav-links a::after {
4279 content:''; position: absolute; bottom: -6px; left: 0; width: 0; height: 2px; 4280 background: #8B7535; transition: width 0.3s; 4281} 4282.cg-res-nav-links a:hover::after { width: 100%; } 4283.cg-res-nav-links a.active { color: #8B7535; } 4284.cg-res-nav-links a.active::after { width: 100%; } 4285 4286/* âââ BURGER âââ */ 4287.cg-res-burger { 4288 display: none; flex-direction: column; gap: 5px; cursor: pointer; 4289 padding: 8px; z-index: 200; 4290} 4291.cg-res-burger span { 4292 display: block; width: 24px; height: 2px; background: #3a3a4a; 4293 transition: all 0.3s; border-radius: 2px; 4294} 4295/* âââ MOBILE MENU âââ */ 4296.cg-res-mobile-menu { 4297 display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; 4298 background: #FAF8F2; z-index: 190; 4299 flex-direction: column; align-items: center; justify-content: center; 4300 gap: 24px; list-style: none; overflow: hidden; 4301} 4302.cg-res-mobile-menu.open { display: flex; } 4303.cg-res-mobile-menu a { 4304 color: #3a3a4a; text-decoration: none; font-size: 1.1rem; 4305 font-weight: 700; letter-spacing: 2px; text-transform: uppercase; 4306 font-family: Calibri, 'Segoe UI', sans-serif; cursor: pointer; 4307 transition: color 0.3s; 4308} 4309.cg-res-mobile-menu a:hover { color: #8B7535; } 4310.cg-res-mobile-close { 4311 position: absolute; top: 20px; right: 20px; 4312 width: 40px; height: 40px; cursor: pointer; 4313 display: flex; align-items: center; justify-content: center; 4314 background: none; border: none; z-index: 200; 4315} 4316.cg-res-mobile-close::before, .cg-res-mobile-close::after { 4317 content: ''; position: absolute; 4318 width: 24px; height: 2px; background: #3a3a4a; border-radius: 2px; 4319} 4320.cg-res-mobile-close::before { transform: rotate(45deg); } 4321.cg-res-mobile-close::after { transform: rotate(-45deg); } 4322 4323.cg-res-header { 4324 background: #2A65AF; 4325 padding: 200px 60px 60px; text-align: center; 4326} 4327.cg-res-header h1 { 4328 font-family: Calibri, 'Segoe UI', sans-serif; 4329 font-size: clamp(1.8rem, 3vw, 2.8rem); font-weight: 800; 4330 color: #fff; text-transform: uppercase; letter-spacing: 2px; margin-bottom: 12px; 4331} 4332.cg-res-header p { 4333 font-size: 1rem; color: rgba(255,255,255,0.7); max-width: 600px; margin: 0 auto; 4334} 4335 4336.cg-res-section { 4337 max-width: 1200px; margin: 0 auto; padding: 60px 40px; 4338} 4339.cg-res-unit-title { 4340 font-family: Calibri, 'Segoe UI', sans-serif; 4341 font-size: 1.3rem; font-weight: 800; color: #1a1a2e; 4342 text-transform: uppercase; letter-spacing: 1px; 4343 margin-bottom: 8px; display: flex; align-items: center; gap: 16px; 4344} 4345.cg-res-unit-title img { height: 50px; border-radius: 50%; } 4346.cg-res-unit-subtitle { 4347 font-size: 0.82rem; color: #8B7535; font-weight: 600; 4348 letter-spacing: 1px; margin-bottom: 32px; 4349} 4350.cg-res-grid { 4351 display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); 4352 gap: 28px; margin-bottom: 60px; 4353} 4354.cg-res-card { 4355 background: #fff; border-radius: 16px; overflow: visible; 4356 border: 1px solid rgba(0,0,0,0.06); transition: all 0.3s; 4357 display: flex; flex-direction: column; align-items: center; 4358 text-align: center; padding: 60px 20px 24px; position: relative; 4359 margin-top: 50px; 4360 border-top: 3px solid #8B7535; 4361} 4362.cg-res-card:hover { transform: translateY(-4px); box-shadow: 0 12px 30px rgba(0,0,0,0.08); } 4363.cg-res-card-img-wrap { 4364 position: absolute; top: -50px; left: 50%; transform: translateX(-50%); 4365 width: 100px; height: 100px; border-radius: 50%; overflow: hidden; 4366 border: 4px solid #fff; box-shadow: 0 4px 16px rgba(0,0,0,0.12); 4367 background: #eee; 4368} 4369.cg-res-card-img { 4370 width: 100%; height: 100%; object-fit: cover; 4371} 4372.cg-res-card-info { flex: 1; } 4373.cg-res-card-info h3 { 4374 font-family: Calibri, 'Segoe UI', sans-serif; 4375 font-size: 1rem; font-weight: 700; color: #1a1a2e; margin-bottom: 4px; 4376} 4377.cg-res-card-role { 4378 font-size: 0.72rem; color: #8B7535; font-weight: 700; 4379 letter-spacing: 1px; text-transform: uppercase; margin-bottom: 10px; 4380} 4381.cg-res-card-info p { font-size: 0.78rem; color: #777; line-height: 1.5; } 4382 4383.cg-res-divider { 4384 width: 60px; height: 3px; background: linear-gradient(90deg, #8B7535, #8E4585); 4385 margin-bottom: 24px; border-radius: 2px; 4386} 4387.cg-res-unit-desc { 4388 font-size: 0.85rem; color: #555; line-height: 1.7; margin-bottom: 36px; 4389 text-align: justify; 4390} 4391 4392@media (max-width: 900px) { 4393 .cg-res-hide-mobile { display: none !important; } 4394 .cg-res-nav-links { display: none; } 4395 .cg-res-burger { display: flex; } 4396 .cg-res-inst-bar { padding: 10px 20px; gap: 14px; flex-wrap: wrap; } 4397 .cg-res-inst-bar img { height: 44px; } 4398 .cg-res-inst-bar .cg-inst-divider { height: 32px; } 4399} 4400@media (max-width: 640px) { 4401 .cg-res-header { padding: 220px 10px 40px; } 4402 .cg-res-section { padding: 40px 10px; text-align: center; } 4403 .cg-res-grid { grid-template-columns: 1fr; } 4404 .cg-res-inst-bar { padding: 8px 6px; gap: 8px; justify-content: space-between; flex-wrap: nowrap; } 4405 .cg-res-inst-bar img { height: 32px !important; flex-shrink: 1; min-width: 0; object-fit: contain; } 4406 .cg-res-inst-bar .cg-logo-italiadomani { height: 58px !important; } 4407 .cg-res-inst-bar .cg-inst-divider { display: flex; height: 28px; background: rgba(255,255,255,0.3); width: 1px; flex-shrink: 0; } 4408 .cg-res-nav { top: auto; padding: 12px 10px; } 4409 .cg-res-card-info p { font-size: 0.75rem; text-align: center; } 4410 .cg-res-unit-title { justify-content: center; text-align: center; } 4411 .cg-res-unit-subtitle { text-align: center; } 4412 .cg-res-unit-desc { font-size: 0.8rem; text-align: center; } 4413 .cg-res-divider { margin-left: auto; margin-right: auto; } 4414 .cg-res-footer { padding: 30px 10px; } 4415 .cg-res-footer-logos { gap: 12px; } 4416 .cg-res-footer-logos img { height: 32px; } 4417} 4418/* âââ FOOTER âââ */ 4419.cg-res-footer { 4420 background: #2A65AF; color: rgba(255,255,255,0.6); 4421 padding: 40px 60px; text-align: center; font-size: 0.8rem; 4422} 4423.cg-res-footer-logos { 4424 display: flex; align-items: center; justify-content: center; 4425 gap: 24px; margin-bottom: 20px; flex-wrap: wrap; 4426} 4427.cg-res-footer-logos img { height: 40px; object-fit: contain; } 4428</style> 4429 4430<div class="cg-res-root"> 4431 4432 <!-- INSTITUTIONAL BAR --> 4433 <div class="cg-res-inst-bar"> 4434 <img src="/images/footer-eu-white.png" alt="Finanziato dall'Unione europea - NextGenerationEU" style="height:56px;" /> 4435 <div class="cg-inst-divider"></div> 4436 <img src="/images/footer-mur-white.png" alt="MUR" style="height:42px;" /> 4437 <div class="cg-inst-divider"></div>
4438 <img src="/images/footer-italiadomani-white.png" alt="Italia Domani" style="height:72px;" class="cg-logo-italiadomani" /> 4439 <div class="cg-inst-divider cg-res-hide-mobile"></div> 4440 <img src="/images/logo-uda.png" alt="UdA" style="height:80px;" class="cg-res-hide-mobile" /> 4441 <img src="/images/logo-unime-white.png" alt="UNIME" style="height:76px;" class="cg-res-hide-mobile" /> 4442 <img src="/images/logo-uniba.png" alt="UNIBA" style="height:80px;" class="cg-res-hide-mobile" /> 4443 </div> 4444 4445 <!-- NAV --> 4446 <nav class="cg-res-nav"> 4447 <a class="cg-res-nav-logo" href="https://www.circulagris.com/home-ita/" target="_top"><img src="/images/logo-circulagris.png" alt="CIRCULAGRIS" /></a> 4448 <ul class="cg-res-nav-links"> 4449 <li><a href="https://www.circulagris.com/home-ita/" target="_top">Home</a></li> 4450 <li><a href="https://www.circulagris.com/ricercatori/" target="_top" class="active">Ricercatori</a></li> 4451 <li><a href="https://www.circulagris.com/conferenze/" target="_top">Convegni</a></li> 4452 <li><a href="https://www.circulagris.com/workshops-ita/" target="_top">Workshop</a></li> 4453 <li><a href="https://www.circulagris.com/pubblicazioni/" target="_top">Pubblicazioni</a></li> 4454 <li class="cg-lang-switch"><a href="https://www.circulagris.com/researchers/" target="_top" style="background:#8B7535;color:#fff !important;padding:6px 14px;border-radius:20px;font-weight:700;cursor:pointer;">EN</a></li> 4455 </ul> 4456 <div class="cg-res-burger" onclick="(function(){var m=document.getElementById('cgResMobileMenu');m.classList.toggle('open')})()"> 4457 <span></span><span></span><span></span> 4458 </div> 4459 </nav> 4460 4461 <!-- MOBILE MENU --> 4462 <ul class="cg-res-mobile-menu" id="cgResMobileMenu"> 4463 <button class="cg-res-mobile-close" onclick="document.getElementById('cgResMobileMenu').classList.remove('open')" aria-label="Chiudi"></button> 4464 <li><a href="https://www.circulagris.com/home-ita/" target="_top">Home</a></li> 4465 <li><a href="https://www.circulagris.com/ricercatori/" target="_top">Ricercatori</a></li> 4466 <li><a href="https://www.circulagris.com/conferenze/" target="_top">Convegni</a></li> 4467 <li><a href="https://www.circulagris.com/workshops-ita/" target="_top">Workshop</a></li> 4468 <li><a href="https://www.circulagris.com/pubblicazioni/" target="_top">Pubblicazioni</a></li> 4469 <li class="cg-lang-switch"><a href="https://www.circulagris.com/researchers/" target="_top" style="background:#8B7535;color:#fff !important;padding:6px 14px;border-radius:20px;font-weight:700;cursor:pointer;">EN</a></li> 4470 </ul> 4471 4472 <div class="cg-res-header"> 4473 <h1>I nostri ricercatori</h1> 4474 <p>Un team multidisciplinare con competenze in economia circolare, sostenibilità , Life Cycle Thinking e sistemi agroalimentari.</p> 4475 </div> 4476 4477 <div class="cg-res-section"> 4478 4479 <!-- UNIT 1: UNICH --> 4480 <div class="cg-res-unit-title"> 4481 <img src="/images/logo-uda.png" alt="UNICH" /> 4482 Università degli Studi "G. d'Annunzio" di Chieti-Pescara 4483 </div> 4484 <div class="cg-res-unit-subtitle">Principal Investigator: Prof. Andrea Raggi</div> 4485 <div class="cg-res-divider"></div> 4486 <div class="cg-res-unit-desc">L'unità di Chieti-Pescara, in qualità di Principal Investigator, coordina l'intero Progetto, supervisionando l'implementazione delle diverse fasi e attività svolte dalle singole unità di ricerca. Il team ha partecipato a numerosi progetti di ricerca multi- e interdisciplinari a livello nazionale e internazionale, anche con il coinvolgimento di stakeholder (principalmente imprese), e ha recentemente coordinato il WP5 sulle metriche di sostenibilità di sistemi circolari nell'ambito del progetto CRESTING. L'unità contribuirà inoltre alla definizione degli approcci metodologici e alla realizzazione delle attività congiunte previste nelle diverse fasi del progetto. Grazie alla propria riconosciuta competenza a livello internazionale nell'ambito Social Life Cycle Assessment (S-LCA), il gruppo contribuirà in particolare allo sviluppo di un framework S-LCA finalizzato ad una comprensione approfondita delle pratiche sociali nel settore agroalimentare.<br/><br/>In continuità con il progetto PRIN 2017 ILCIDAF, l'unità si concentrerà sulla filiera vitivinicola. I membri del gruppo vantano infatti una lunga esperienza di ricerca nel settore vitivinicolo, con particolare riferimento allo sviluppo teorico e all'applicazione dei metodi e degli strumenti del Life Cycle Thinking, oltre a una consolidata rete di contatti con imprese del settore.<br/><br/>Saranno mappati sistemi e pratiche circolari nella filiera del vino. Successivamente, le metriche di circolarità e i metodi di valutazione individuati per il settore agroalimentare saranno adattati ai sistemi selezionati, al fine di verificare l'eventuale relazione tra pratiche circolari e performance di sostenibilità . Tale relazione sarà ulteriormente approfondita per identificare quali pratiche circolari garantiscono migliori risultati in termini di sostenibilità .</div> 4487 <div class="cg-res-grid"> 4488 <div class="cg-res-card"> 4489 <div class="cg-res-card-img-wrap"> 4490 <img class="cg-res-card-img" src="/images/team-arzoumanidis.jpg" alt="Ioannis Arzoumanidis" /> 4491 </div> 4492 <div class="cg-res-card-info"> 4493 <h3>Ioannis Arzoumanidis</h3> 4494 <p>Ioannis Arzoumanidis è Professore Associato di Scienze Merceologiche presso il Dipartimento di Economia dell'Università "G. d'Annu
4494nzio" di Pescara. Ha conseguito il dottorato in "Innovation, Accounting, Environment and Finance". Insegna Life Cycle Assessment for Business, Energy Management and Sustainability e Sustainability and Responsible Tourism. Da oltre 17 anni svolge attività di ricerca accademica nei settori della life cycle sustainability assessment, dell'ecologia industriale e dell'economia circolare, anche dal punto di vista metodologico. à autore o coautore di oltre 65 pubblicazioni scientifiche.</p> 4495 </div> 4496 </div> 4497 <div class="cg-res-card"> 4498 <div class="cg-res-card-img-wrap"> 4499 <img class="cg-res-card-img" src="/images/team-petti.jpg" alt="Luigia Petti" /> 4500 </div> 4501 <div class="cg-res-card-info"> 4502 <h3>Luigia Petti</h3> 4503 <p>Luigia Petti è Professore Ordinario di Scienze Merceologiche (SECS-P/13) presso il Dipartimento di Economia dell'Università "G. d'Annunzio" di Chieti-Pescara, dove ricopre tale ruolo da febbraio 2019. Da oltre tre decenni svolge attività di ricerca e didattica accademica. I suoi interessi di ricerca riguardano i sistemi di gestione qualità e ambiente, il Life Cycle Sustainability Assessment, con particolare attenzione alla Social Life Cycle Assessment. La sua ricerca è di natura prevalentemente interdisciplinare e coinvolge stakeholder (principalmente imprese); ha partecipato a numerosi progetti di ricerca con collaborazioni multi- e interdisciplinari, sia a livello nazionale sia internazionale.</p> 4504 </div> 4505 </div> 4506 <div class="cg-res-card"> 4507 <div class="cg-res-card-img-wrap"> 4508 <img class="cg-res-card-img" src="/images/team-raggi.jpg" alt="Andrea Raggi" /> 4509 </div> 4510 <div class="cg-res-card-info"> 4511 <h3>Andrea Raggi</h3> 4512 <div class="cg-res-card-role">Principal Investigator</div> 4513 <p>Andrea Raggi è Professore Ordinario di Ecologia Industriale e materie affini presso il Dipartimento di Economia dell'Università "G. d'Annunzio" di Pescara. Da oltre 35 anni svolge attività di ricerca e didattica. I suoi interessi di ricerca riguardano i sistemi di gestione ambientale, il Life Cycle Sustainability Assessment, l'ecologia industriale e l'economia circolare. La sua attività di ricerca è di natura prevalentemente interdisciplinare e prevede il coinvolgimento di stakeholder (principalmente imprese); ha partecipato a numerosi progetti di ricerca con collaborazioni multi- e interdisciplinari, sia a livello nazionale sia internazionale. à autore o coautore di oltre 270 pubblicazioni scientifiche.</p> 4514 </div> 4515 </div> 4516 <div class="cg-res-card"> 4517 <div class="cg-res-card-img-wrap"> 4518 <img class="cg-res-card-img" src="/images/team-simboli.png" alt="Alberto Simboli" /> 4519 </div> 4520 <div class="cg-res-card-info"> 4521 <h3>Alberto Simboli</h3> 4522 <p>Alberto Simboli è Professore Associato di Scienze Merceologiche presso il Dipartimento di Economia dell'Università "G. d'Annunzio" di Pescara. Ha conseguito il dottorato di ricerca in Scienze con una tesi su "Valore e sprechi nei sistemi produttivi: applicazione dei principi lean al settore dei servizi". I suoi interessi di ricerca riguardano i sistemi produttivi, con particolare attenzione agli aspetti tecnologici, organizzativi/gestionali e ambientali. à attualmente coinvolto in attività e progetti di ricerca nazionali e internazionali ed è autore di oltre 80 pubblicazioni scientifiche. Insegna a Pescara: Production Systems Innovation and Logistics, Closed Loop Production Systems.</p> 4523 </div> 4524 </div> 4525 <div class="cg-res-card"> 4526 <div class="cg-res-card-img-wrap"> 4527 <img class="cg-res-card-img" src="/images/team-tragnone.jpg" alt="Bianca Maria Tragnone" /> 4528 </div> 4529 <div class="cg-res-card-info"> 4530 <h3>Bianca Maria Tragnone</h3> 4531 <p>Bianca Maria Tragnone è titolare di un contratto di ricerca presso il Dipartimento di Economia dell'Università "G. d'Annunzio". Ha conseguito il dottorato di ricerca in "Business, Institutions, Markets" con una tesi sul ruolo della Social Life Cycle Assessment come strumento di supporto a una gestione socialmente sostenibile delle filiere produttive. La sua ricerca riguarda il Life Cycle Sustainability Assessment, con particolare attenzione alla Social Life Cycle Assessment e alla Social Organisational Life Cycle Assessment, nonché l'economia circolare anche in termini di sviluppo metodologico.</p> 4532 </div> 4533 </div> 4534 </div> 4535 4536 <!-- UNIT 2: UNIME --> 4537 <div class="cg-res-unit-title"> 4538 <img src="/images/logo-unime-color.png" alt="UNIME" /> 4539 Università degli Studi di Messina 4540 </div> 4541 <div class="cg-res-unit-subtitle">Responsabile di Unità : Prof.ssa Roberta Salomone</div> 4542 <div class="cg-res-divider"></div> 4543 <div class="cg-res-unit-desc">L'unità di Messina collaborerà con le altre unità di ricerca nelle Fasi 1 (stato dell'arte e revisione della letteratura), 2 (sviluppo metodologico) e 4 (disseminazione e comunicazione), grazie alla riconosciuta competenza internazionale del team su LCA, sostenibilità e valutazione dell'economia circolare. In particolare, il gruppo di Messina vanta esperienza in progetti di ricerca multi- e interdisciplinari, sia a livello nazionale che internazionale, con applicazioni di strumenti e metodi LCT al sistema agroalimentare (è stato Principal Investigator del progetto EMAF PRIN 2008 ed è coinvolto nel progetto ILCIDAF PRIN 2017) e in altri settori (progetto CRESTING sulle metriche di sostenibilità per sistemi circolari, progetto PON THALASSA, progetto PO FESR Sicilia ELETTRORIGENERA), evidenziando spesso le criticità legate all'integrazione tra valutazioni di sostenibilità e circolarità .<br/><br/>In piena continuità con il progetto PRIN 2017 ILCIDAF, l'unità di Messina si concentrerà specificamente sulla filiera dell'olio d'oliva. I membri del gruppo vantano una lunga esperienza nell'applicazione del Life Cycle Assessment e di altri metodi e strumenti LCT nel settore oleario, sia dal punto di vista metodologico che operativo. Nella Fase 3 (ricerca applicativa) verranno condotte valutazioni di sostenibilità e circolarità nella filiera dell'olio d'oliva: i metodi e gli indicatori di valutazione della circolarità individuati saranno applicati ai sistemi circolari selezionati e confrontati con quelli lineari tradizionali, al fine di verificarne le prestazioni di sostenibilità lungo il ciclo di vita.</div> 4544 <div class="cg-res-grid"> 4545 <div class="cg-res-card"> 4546 <div class="cg-res-card-img-wrap"> 4547 <img class="cg-res-card-img" src="/images/researchers/gulotta.jpg" alt="Teresa Maria Gulotta" /> 4548 </div> 4549 <div class="cg-res-card-info"> 4550 <h3>Teresa Maria Gulotta</h3> 4551 <p>Teresa Maria Gulotta ha conseguito il dottorato in Tecnologie Energetiche e dell'Informazione presso l'Università di Palermo. à attualmente Ricercatrice a tempo determinato (tipo B) di Scienze Merceologiche (s.s.d. ECON-10/A) presso il Dipartimento di Economia dell'Università di Messina. La sua attività di ricerca si concentra su sostenibilità , economia circolare, efficienza energetica e relative metodologie di valutazione, con particolare attenzione agli approcci di Life Cycle Thinking.</p> 4552 </div> 4553 </div> 4554 <div class="cg-res-card"> 4555 <div class="cg-res-card-img-wrap"> 4556 <img class="cg-res-card-img" src="/images/researchers/lanuzza.jpg" alt="Francesco Lanuzza" /> 4557 </div> 4558 <div class="cg-res-card-info"> 4559 <h3>Francesco Lanuzza</h3> 4560 <p>Francesco Lanuzza è Professore Ordinario presso il Dipartimento di Economia dell'Università di Messina (s.s.d. ECON-10/A â Scienze Merceologiche). La sua ricerca si concentra sulla caratterizzazione e valutazione qualitativa dei prodotti agroalimentari mediante metodologie strumentali avanzate, che consentono l'identificazione di composti bioattivi, contaminanti e indicatori di qualità . Altre attività di ricerca riguardano la valorizzazione delle risorse naturali e dei sottoprodotti agroindustriali in un'ottica di sostenibilità ed economia circolare.</p> 4561 </div> 4562 </div> 4563 <div class="cg-res-card"> 4564 <div class="cg-res-card-img-wrap"> 4565 <img class="cg-res-card-img" src="/images/researchers/mondello.jpg" alt="Giovanni Mondello" /> 4566 </div> 4567 <div class="cg-res-card-info"> 4568 <h3>Giovanni Mondello</h3> 4569 <p>Giovanni Mondello ha conseguito il dottorato (Doctoratus Europaeus) in Markets, Business and Consumers â curriculum Quality, Innovation and Sustainability presso l'Università di Roma Tre. à Ricercatore a tempo determinato (tipo B), s.s.d. ECON-10/A (Scienze Merceologiche), presso il Dipartimento di Economia dell'Università di Messina. I principali ambiti di ricerca riguardano: sostenibilità ambientale, LCA e relativi metodi di valutazione, economia circolare, ec
4569ologia industriale e simbiosi industriale.</p> 4570 </div> 4571 </div> 4572 <div class="cg-res-card"> 4573 <div class="cg-res-card-img-wrap"> 4574 <img class="cg-res-card-img" src="/images/researchers/saija.jpg" alt="Giuseppe Saija" /> 4575 </div> 4576 <div class="cg-res-card-info"> 4577 <h3>Giuseppe Saija</h3> 4578 <p>Giuseppe Saija è Professore Ordinario, s.s.d. ECON-10/A (Scienze Merceologiche), presso il Dipartimento di Economia dell'Università di Messina. I principali ambiti di ricerca sono: strumenti e gestione della qualità e dell'ambiente; sistemi di gestione integrati (qualità , ambiente, sicurezza, etica, ecc.), con particolare riferimento al settore agroalimentare; certificazione di sistema e di prodotto; caratterizzazione e qualità degli alimenti.</p> 4579 </div> 4580 </div> 4581 <div class="cg-res-card"> 4582 <div class="cg-res-card-img-wrap"> 4583 <img class="cg-res-card-img" src="/images/researchers/salomone.jpg" alt="Roberta Salomone" /> 4584 </div> 4585 <div class="cg-res-card-info"> 4586 <h3>Roberta Salomone</h3> 4587 <div class="cg-res-card-role">Responsabile di Unità </div> 4588 <p>Roberta Salomone ha conseguito il dottorato in Tecnologie ed Economia dei Processi e dei Prodotti per la Salvaguardia dell'Ambiente presso l'Università di Catania. à Professore Ordinario di Scienze Merceologiche e Delegata del Rettore alla Sostenibilità presso l'Università di Messina. à Vicepresidente dell'Associazione Rete Italiana LCA. Partecipa e ha partecipato a diversi gruppi di ricerca, anche come coordinatrice nazionale. I suoi principali temi di ricerca sono sostenibilità , economia circolare, simbiosi industriale e metodi di Life Cycle Thinking.</p> 4589 </div> 4590 </div> 4591 <div class="cg-res-card"> 4592 <div class="cg-res-card-img-wrap"> 4593 <img class="cg-res-card-img" src="/images/researchers/scandurra.jpg" alt="Federica Scandurra" /> 4594 </div> 4595 <div class="cg-res-card-info"> 4596 <h3>Federica Scandurra</h3> 4597 <p>In precedenza Research Fellow del progetto CIRCULAGRIS, attualmente è Teaching Fellow in Economics of Climate Change presso la School of Economics dell'University College Dublin (UCD). Ha conseguito il dottorato in Economia, Management e Statistica presso l'Università di Messina. I suoi principali interessi di ricerca riguardano l'adozione e la valutazione dell'economia circolare e della sostenibilità , con particolare attenzione al settore agroalimentare e all'engagement sociale.</p> 4598 </div> 4599 </div> 4600 </div> 4601 4602 <!-- UNIT 3: UNIBA --> 4603 <div class="cg-res-unit-title"> 4604 <img src="/images/logo-uniba-color.png" alt="UNIBA" /> 4605 Università degli Studi di Bari Aldo Moro 4606 </div> 4607 <div class="cg-res-unit-subtitle">Responsabile di Unità : Prof. Bruno Notarnicola</div> 4608 <div class="cg-res-divider"></div> 4609 <div class="cg-res-unit-desc">L'unità di Bari collaborerà con le altre unità di ricerca nelle attività congiunte previste nelle Fasi 1, 2 e 4 del progetto. L'unità farà leva sulla propria esperienza nell'applicazione del paradigma "Life Cycle" ai sistemi di prodotto, inclusi quelli agroalimentari (è Principal Investigator del progetto ILCIDAF â PRIN 2017).<br/><br/>L'unità si concentrerà specificamente sulla filiera della pasta e del pane. I membri del gruppo conducono da diversi decenni attività di ricerca sull'applicazione dei metodi del Life Cycle Thinking ai sistemi agroalimentari, sia dal punto di vista metodologico sia operativo; tale esperienza sarà utilizzata per mappare le valutazioni di sostenibilità e circolarità nelle filiere della pasta e del pane. Una volta identificati i metodi e gli indicatori di valutazione della circolarità , questi saranno adattati ai sistemi circolari selezionati e confrontati con i sistemi lineari tradizionali, al fine di analizzarne le prestazioni di sostenibilità e verificare l'eventuale superiorità delle pratiche circolari. In particolare, l'unità di Bari si concentrerà sulle metodologie basate sul Life Cycle Assessment (LCA) per la valutazione quantitativa e integrata, come l'Environmental Life Cycle Costing (LCC) applicato alla filiera del pane e della pasta. L'integrazione tra LCA e LCC, unitamente all'inclusione nell'analisi di ulteriori costi sociali esterni (Societal Life Cycle Costing), consentirà la definizione di indicatori economici, ambientali e sociali. Si tratta di un risultato significativo per i sistemi agroalimentari, nei quali tali dimensioni sono spesso valutate separatamente e non in modo integrato.</div> 4610 <div class="cg-res-grid"> 4611 <div class="cg-res-card"> 4612 <div class="cg-res-card-img-wrap"> 4613 <img class="cg-res-card-img" src="/images/team-dicapua-2.png" alt="Rosa Di Capua" /> 4614 </div> 4615 <div class="cg-res-card-info"> 4616 <h3>Rosa Di Capua</h3> 4617 <p>Professore Associato di Scienze Merceologiche presso il Dipartimento Jonico dell'Università di Bari Aldo Moro. Dottorato in Economia e Management. Le sue principali linee di ricerca riguardano l'applicazione dell'ecologia industriale e dei suoi strumenti a supp
4617orto dell'efficienza delle risorse e dell'economia circolare, in particolare la simbiosi industriale in diversi contesti territoriali e il Life Cycle Assessment (LCA) applicato a vari sistemi di prodotto/servizio. Autrice di numerosi contributi in riviste internazionali e atti di convegno.</p> 4618 </div> 4619 </div> 4620 <div class="cg-res-card"> 4621 <div class="cg-res-card-img-wrap"> 4622 <img class="cg-res-card-img" src="/images/team-esposito-2.png" alt="Benedetta Esposito" /> 4623 </div> 4624 <div class="cg-res-card-info"> 4625 <h3>Benedetta Esposito</h3> 4626 <p>Ricercatrice a Tempo Determinato (RTT) in Scienze Merceologiche presso l'Università San Raffaele Roma. In precedenza assegnista di ricerca presso il Dipartimento Jonico dell'Università di Bari Aldo Moro. Dottorato in Big Data Management (Università di Salerno, 2024). Visiting researcher presso l'Universidad de Cádiz (2026) e la Cardiff Business School (2023). Associate Editor della rivista Business Strategy & Development. Membro di AISME, AIDEA, IAQUIS, Rete Italiana LCA e ISIE.</p> 4627 </div> 4628 </div> 4629 <div class="cg-res-card"> 4630 <div class="cg-res-card-img-wrap"> 4631 <img class="cg-res-card-img" src="/images/team-notarnicola-2.jpg" alt="Bruno Notarnicola" /> 4632 </div> 4633 <div class="cg-res-card-info"> 4634 <h3>Bruno Notarnicola</h3> 4635 <div class="cg-res-card-role">Responsabile di Unità </div> 4636 <p>Professore Ordinario di Scienze Merceologiche presso l'Università di Bari Aldo Moro, già Direttore del Dipartimento Jonico e Preside della Seconda Facoltà di Economia. Autore di oltre 250 pubblicazioni scientifiche. La sua ricerca si concentra sul Life Cycle Assessment (LCA) applicato al settore agroalimentare, sulla simbiosi industriale e sul monitoraggio ambientale. Consulente scientifico del Ministro italiano per la Transizione Ecologica sui temi LCA. Presidente di Symbiotica srl e Direttore Scientifico del Laboratorio Talsef dell'Università di Bari.</p> 4637 </div> 4638 </div> 4639 <div class="cg-res-card"> 4640 <div class="cg-res-card-img-wrap"> 4641 <img class="cg-res-card-img" src="/images/team-renzulli-2.png" alt="Pietro Alexander Renzulli" /> 4642 </div> 4643 <div class="cg-res-card-info"> 4644 <h3>Pietro Alexander Renzulli</h3> 4645 <p>Ingegnere e Professore Ordinario di Scienze Merceologiche presso il Dipartimento Jonico dell'Università di Bari Aldo Moro. MSc in Ingegneria Meccanica presso l'Imperial College di Londra, dottorato presso il Politecnico di Bari. Riconosciuto come esperto LCA dal Joint Research Centre dell'Unione Europea. Coordinatore del Young Researchers Award della Rete Italiana LCA. Autore di oltre 100 pubblicazioni scientifiche.</p> 4646 </div> 4647 </div> 4648 <div class="cg-res-card"> 4649 <div class="cg-res-card-img-wrap"> 4650 <img class="cg-res-card-img" src="/images/team-spizzirri.png" alt="Umile Gianfranco Spizzirri" /> 4651 </div> 4652 <div class="cg-res-card-info"> 4653 <h3>Umile Gianfranco Spizzirri</h3> 4654 <p>Chimico Senior e Ricercatore a tempo determinato (RTDB) in Scienze Merceologiche presso l'Università di Bari Aldo Moro. Oltre vent'anni di esperienza in Chimica Analitica, Chimica dei Polimeri e tecnologie sostenibili. Dottorato in "Metodologie per lo Sviluppo di Molecole di Interesse Farmacologico". Visiting Scientist presso la University of Texas at Austin. Co-fondatore dello spin-off Symbiotica Srl. H-index 43 (Scopus), quasi 300 pubblicazioni scientifiche.</p> 4655 </div> 4656 </div> 4657 </div> 4658 4659 </div> 4660 4661 <!-- FOOTER --> 4662 <footer class="cg-res-footer"> 4663 <div class="cg-res-footer-logos"> 4664 <img src="/images/logo-circulagris.png" alt="CIRCULAGRIS" style="height: 50px; filter: brightness(0) invert(1);" /> 4665 </div> 4666 <div class="cg-res-footer-logos" style="margin-top: 16px;"> 4667 <img src="/images/footer-eu-white.png" alt="Finanziato dall'Unione europea - NextGenerationEU" style="height:56px;" /> 4668 <img src="/images/footer-mur-white.png" alt="Ministero dell'Università e della Ricerca" style="height:42px;" />
4669 <img src="/images/footer-italiadomani-white.png" alt="Italia Domani - PNRR" style="height:72px;" /> 4670 <img src="/images/logo-uda.png" alt="UdA" style="height:80px;" /> 4671 <img src="/images/logo-unime-white.png" alt="UNIME" style="height:76px;" /> 4672 <img src="/images/logo-uniba.png" alt="UNIBA" style="height:80px;" /> 4673 </div> 4674 <p style="margin-top: 20px;">© 2024 CIRCULAGRIS — PRIN 2022 | <a href="https://www.unich.it" target="_blank" style="color:rgba(255,255,255,0.7);text-decoration:none;">Università degli Studi "G. d'Annunzio" Chieti-Pescara</a></p> 4675 <div style="max-width:800px;margin:16px auto 0;font-size:0.72rem;color:rgba(255,255,255,0.35);line-height:1.6;"> 4676 Progetto di ricerca "Towards circular and sustainable agri-food systems: metrics for assessment (CIRCULAGRIS)" PRIN2022 (Progetti di Ricerca di Interesse Nazionale) finanziato dall'Unione Europea - Next Generation EU, Missione 4, Componente 2, CUP D53D23011220006. 4677 </div> 4678 <div style="margin-top: 16px; font-size: 0.72rem; color: rgba(255,255,255,0.5);"> 4679 <a href="https://www.sitiwebshop.it/?utm_source=sito-cliente&utm_medium=circulagris-universita-ch" target="_blank" rel="noopener noreferrer" style="color: rgba(255,255,255,0.8); text-decoration: underline;">Powered by Webshop Human AI Automation</a> 4680 </div> 4681 </footer> 4682 4683</div> 4684`}})),A2=()=>(x.useEffect(()=>{let e=0;const t=document.querySelectorAll(".cg-conv-slide"),i=t.length;if(!i)return;function n(a){t.forEach((l,c)=>{l.style.opacity=c===a?"1":"0",l.style.transform=c===a?"scale(1)":"scale(1.05)"}),document.querySelectorAll(".cg-conv-slider-dot").forEach((l,c)=>l.classList.toggle("active",c===a)),e=a}n(0);const r=setInterval(()=>{n((e+1)%i)},4e3);window.cgConvSliderPrev=()=>n((e-1+i)%i),window.cgConvSliderNext=()=>n((e+1)%i),window.cgConvSliderGoTo=a=>n(a);function o(){const a=document.querySelector(".cg-conv-inst-bar"),s=document.querySelector(".cg-conv-nav");a&&s&&(s.style.top=a.offsetHeight+"px")}return requestAnimationFrame(o),setTimeout(o,100),setTimeout(o,500),window.addEventListener("resize",o),window.addEventListener("load",o),()=>{clearInterval(r),window.removeEventListener("resize",o),window.removeEventListener("load",o)}},[]),I.jsx("div",{dangerouslySetInnerHTML:{__html:` 4685<style> 4686.cg-conv-root *, .cg-conv-root *::before, .cg-conv-root *::after { margin: 0; padding: 0; box-sizing: border-box; } 4687.cg-conv-root { 4688 font-family: Calibri, 'Segoe UI', sans-serif; 4689 color: #3a3a4a; line-height: 1.6; background: #FAF8F2; 4690 min-height: 100vh; 4691} 4692.cg-conv-root img { max-width: 100%; } 4693 4694/* âââ INSTITUTIONAL BAR âââ */ 4695.cg-conv-inst-bar { 4696 position: fixed; top: 0; left: 0; right: 0; z-index: 101; 4697 background: #2A65AF; 4698 display: flex; align-items: center; justify-content: center; 4699 gap: 28px; padding: 14px 40px; 4700 border-bottom: 1px solid rgba(0,0,0,0.08); 4701 flex-wrap: wrap; 4702} 4703.cg-conv-inst-bar img { height: 64px; object-fit: contain; flex-shrink: 0; } 4704.cg-conv-inst-bar .cg-conv-divider { 4705 width: 1px; height: 48px; background: rgba(255,255,255,0.3); flex-shrink: 0; 4706} 4707 4708/* âââ NAV âââ */ 4709.cg-conv-nav { 4710 position: fixed; top: 92px; left: 0; right: 0; z-index: 100; 4711 background: rgba(255,255,255,0.92); 4712 backdrop-filter: blur(16px); 4713 padding: 18px 60px; 4714 display: flex; align-items: center; justify-content: space-between; 4715 border-bottom: 1px solid rgba(0,0,0,0.06); 4716 box-shadow: 0 2px 20px rgba(0,0,0,0.04); 4717} 4718.cg-conv-nav-logo { display: flex; align-items: center; } 4719.cg-conv-nav-logo img { height: 56px; object-fit: contain; margin-right: 16px; } 4720.cg-conv-nav-links { display: flex; gap: 32px; list-style: none; } 4721.cg-conv-nav-links a { 4722 color: #555; text-decoration: none; font-size: 0.82rem; 4723 font-weight: 600; letter-spacing: 1.5px; text-transform: uppercase; 4724 transition: color 0.3s; position: relative; cursor: pointer; 4725} 4726.cg-conv-nav-links a:hover { color: #8B7535; } 4727.cg-conv-nav-links a::after { 4728 content:''; position: absolute; bottom: -6px; left: 0; width: 0; height: 2px; 4729 background: #8B7535; transition: width 0.3s; 4730} 4731.cg-conv-nav-links a:hover::after { width: 100%; } 4732.cg-conv-nav-links a.active { color: #8B7535; } 4733.cg-conv-nav-links a.active::after { width: 100%; } 4734 4735/* âââ BURGER âââ */ 4736.cg-conv-burger { 4737 display: none; flex-direction: column; gap: 5px; cursor: pointer; 4738 padding: 8px; z-index: 200; 4739} 4740.cg-conv-burger span { 4741 display: block; width: 24px; height: 2px; background: #3a3a4a; 4742 transition: all 0.3s; border-radius: 2px; 4743} 4744.cg-conv-mobile-menu { 4745 display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; 4746 background: #FAF8F2; z-index: 190; 4747 flex-direction: column; align-items: center; justify-content: center; 4748 gap: 24px; list-style: none; overflow: hidden; 4749} 4750.cg-conv-mobile-menu.open { display: flex; } 4751.cg-conv-mobile-menu a { 4752 color: #3a3a4a; text-decoration: none; font-size: 1.1rem; 4753 font-weight: 700; letter-spacing: 2px; text-transform: uppercase; 4754 font-family: Calibri, 'Segoe UI', sans-serif; cursor: pointer; 4755 transition: color 0.3s; 4756} 4757.cg-conv-mobile-menu a:hover { color: #8B7535; } 4758.cg-conv-mobile-close { 4759 position: absolute; top: 20px; right: 20px; 4760 width: 40px; height: 40px; cursor: pointer; 4761 display: flex; align-items: center; justify-content: center; 4762 background: none; border: none; z-index: 200; 4763} 4764.cg-conv-mobile-close::before, .cg-conv-mobile-close::after {
4765 content: ''; position: absolute; 4766 width: 24px; height: 2px; background: #3a3a4a; border-radius: 2px; 4767} 4768.cg-conv-mobile-close::before { transform: rotate(45deg); } 4769.cg-conv-mobile-close::after { transform: rotate(-45deg); } 4770 4771/* âââ HEADER âââ */ 4772.cg-conv-header { 4773 background: #2A65AF; 4774 padding: 200px 60px 60px; text-align: center; 4775} 4776.cg-conv-header h1 { 4777 font-size: clamp(1.8rem, 3vw, 2.8rem); font-weight: 800; 4778 color: #fff; text-transform: uppercase; letter-spacing: 2px; margin-bottom: 12px; 4779} 4780.cg-conv-header p { 4781 font-size: 1rem; color: rgba(255,255,255,0.7); max-width: 650px; margin: 0 auto; 4782} 4783 4784/* âââ SLIDESHOW âââ */ 4785.cg-conv-slideshow-section { 4786 max-width: 1100px; margin: 0 auto; padding: 40px 40px 60px; 4787} 4788.cg-conv-slideshow-title { 4789 font-size: 1.4rem; font-weight: 800; color: #1a1a2e; 4790 text-transform: uppercase; letter-spacing: 1px; margin-bottom: 8px; 4791} 4792.cg-conv-slideshow-sub { 4793 font-size: 0.95rem; color: #777; margin-bottom: 24px; 4794} 4795.cg-conv-slider-wrap { 4796 position: relative; width: 100%; max-width: 600px; margin: 0 auto; 4797 aspect-ratio: 16/10; border-radius: 16px; overflow: hidden; 4798 background: #eee; 4799} 4800.cg-conv-slide.cg-fit-contain { object-fit: contain; background: #f4f1e8; } 4801.cg-conv-slide { 4802 position: absolute; top: 0; left: 0; width: 100%; height: 100%; 4803 object-fit: cover; opacity: 0; 4804 transition: opacity 0.8s ease, transform 0.8s ease; 4805} 4806.cg-conv-slider-arrow { 4807 position: absolute; top: 50%; transform: translateY(-50%); 4808 width: 44px; height: 44px; border-radius: 50%; 4809 background: rgba(255,255,255,0.85); border: none; 4810 cursor: pointer; font-size: 1.2rem; color: #1a1a2e; 4811 display: flex; align-items: center; justify-content: center; 4812 box-shadow: 0 4px 12px rgba(0,0,0,0.15); 4813 transition: background 0.3s; z-index: 5; 4814} 4815.cg-conv-slider-arrow:hover { background: #fff; } 4816.cg-conv-slider-arrow.left { left: 16px; } 4817.cg-conv-slider-arrow.right { right: 16px; } 4818.cg-conv-slider-dots { 4819 display: flex; justify-content: center; gap: 8px; margin-top: 16px; 4820} 4821.cg-conv-slider-dot { 4822 width: 10px; height: 10px; border-radius: 50%; 4823 background: rgba(139,117,53,0.25); border: none; cursor: pointer; 4824 transition: background 0.3s, transform 0.3s; 4825} 4826.cg-conv-slider-dot.active { 4827 background: #8B7535; transform: scale(1.3); 4828} 4829 4830/* âââ CONTENT âââ */ 4831.cg-conv-section { 4832 max-width: 1100px; margin: 0 auto; padding: 40px 40px 60px; 4833} 4834 4835/* âââ UNI BLOCK âââ */ 4836.cg-conv-uni-block { margin-bottom: 64px; } 4837.cg-conv-uni-header { 4838 display: flex; align-items: center; gap: 16px; 4839 margin-bottom: 8px; 4840} 4841.cg-conv-uni-header img { height: 50px; border-radius: 50%; } 4842.cg-conv-uni-header h2 { 4843 font-size: 1.3rem; font-weight: 800; color: #1a1a2e; 4844 text-transform: uppercase; letter-spacing: 1px; 4845} 4846.cg-conv-uni-subtitle { 4847 font-size: 0.82rem; color: #8B7535; font-weight: 600; 4848 letter-spacing: 1px; margin-bottom: 24px; 4849} 4850.cg-conv-uni-divider { 4851 width: 60px; height: 3px; background: linear-gradient(90deg, #8B7535, #8E4585); 4852 margin-bottom: 28px; border-radius: 2px; 4853} 4854 4855/* âââ CONF ITEMS âââ */ 4856.cg-conv-item { 4857 padding: 24px 0; 4858 border-bottom: 1px solid rgba(139,117,53,0.12); 4859} 4860.cg-conv-item:last-child { border-bottom: none; } 4861.cg-conv-event { 4862 font-size: 1.05rem; font-weight: 700; color: #1a1a2e; 4863 margin-bottom: 4px; line-height: 1.4; 4864} 4865.cg-conv-details { 4866 font-size: 0.82rem; color: #8B7535; font-weight: 600; 4867 margin-bottom: 8px; 4868} 4869.cg-conv-type { 4870 display: inline-block; 4871 font-size: 0.7rem; font-weight: 700; text-transform: uppercase; 4872 padding: 3px 10px; border-radius: 20px; letter-spacing: 0.5px; 4873 margin-bottom: 8px; 4874} 4875.cg-conv-type-oral { background: rgba(142,69,133,0.12); color: #8E4585; } 4876.cg-conv-type-poster { background: rgba(139,117,53,0.12); color: #8B7535; } 4877.cg-conv-authors { 4878 font-size: 0.82rem; color: #777; line-height: 1.5; 4879} 4880.cg-conv-title-text { 4881 font-style: italic; color: #555; font-size: 0.88rem; 4882 margin-top: 4px; 4883} 4884 4885/* âââ FOOTER âââ */ 4886.cg-conv-footer { 4887 background: #2A65AF; padding: 40px 60px; text-align: center; 4888 color: rgba(255,255,255,0.5); font-size: 0.78rem; line-height: 1.8; 4889} 4890.cg-conv-footer-logos { 4891 display: flex; justify-content: center; gap: 24px; flex-wrap: wrap; 4892 align-items: center; 4893} 4894.cg-conv-footer-logos img { height: 44px; } 4895.cg-conv-footer a { color: rgba(255,255,255,0.7); text-decoration: none; } 4896.cg-conv-footer-funding { 4897 max-width: 800px; margin: 16px auto 0; font-size: 0.72rem; 4898 color: rgba(255,255,255,0.35); line-height: 1.6; 4899} 4900 4901@media (max-width: 900px) { 4902 .cg-conv-hide-mobile { display: none !important; } 4903 .cg-conv-nav-links { display: none; } 4904 .cg-conv-burger { display: flex; } 4905 .cg-conv-inst-bar { padding: 10px 20px; gap: 14px; flex-wrap: wrap; } 4906 .cg-conv-inst-bar img { height: 44px; } 4907 .cg-conv-inst-bar .cg-conv-divider { height: 32px; } 4908} 4909@media (max-width: 640px) { 4910 .cg-conv-header { padding: 220px 10px 40px; } 4911 .cg-conv-section, .cg-conv-slideshow-section { padding: 30px 10px; text-align: center; } 4912 .cg-conv-inst-bar { padding: 8px 6px; gap: 8px; justify-content: space-between; flex-wrap: nowrap; } 4913 .cg-conv-inst-bar img { height: 32px !important; flex-shrink: 1; min-width: 0; object-fit: contain; } 4914 .cg-conv-inst-bar .cg-logo-italiadomani { height: 58px !important; } 4915 .cg-conv-inst-bar .cg-conv-divider { display: flex; height: 28px; background: rgba(255,255,255,0.3); width: 1px; flex-shrink: 0; } 4916 .cg-conv-nav { top: auto; padding: 12px 10px; } 4917 .cg-conv-event { font-size: 0.92rem; text-align: center; } 4918 .cg-conv-item { padding: 16px 0; text-align: center; }
4919 .cg-conv-uni-header { justify-content: center; text-align: center; } 4920 .cg-conv-uni-subtitle { text-align: center; } 4921 .cg-conv-uni-divider { margin-left: auto; margin-right: auto; } 4922 .cg-conv-slideshow-title { text-align: center; } 4923 .cg-conv-slideshow-sub { text-align: center; } 4924 .cg-conv-footer { padding: 30px 10px; } 4925 .cg-conv-footer-logos { gap: 12px; } 4926 .cg-conv-footer-logos img { height: 32px; } 4927} 4928</style> 4929 4930<div class="cg-conv-root"> 4931 4932 <!-- INSTITUTIONAL BAR --> 4933 <div class="cg-conv-inst-bar"> 4934 <img src="/images/footer-eu-white.png" alt="Finanziato dall'Unione europea - NextGenerationEU" style="height:56px;" /> 4935 <div class="cg-conv-divider"></div> 4936 <img src="/images/footer-mur-white.png" alt="MUR" style="height:42px;" /> 4937 <div class="cg-conv-divider"></div> 4938 <img src="/images/footer-italiadomani-white.png" alt="Italia Domani" style="height:72px;" class="cg-logo-italiadomani" /> 4939 <div class="cg-conv-divider cg-conv-hide-mobile"></div> 4940 <img src="/images/logo-uda.png" alt="UdA" style="height:80px;" class="cg-conv-hide-mobile" /> 4941 <img src="/images/logo-unime-white.png" alt="UNIME" style="height:76px;" class="cg-conv-hide-mobile" /> 4942 <img src="/images/logo-uniba.png" alt="UNIBA" style="height:80px;" class="cg-conv-hide-mobile" /> 4943 </div> 4944 4945 <!-- NAV --> 4946 <nav class="cg-conv-nav"> 4947 <a class="cg-conv-nav-logo" href="https://www.circulagris.com/home-ita/" target="_top"><img src="/images/logo-circulagris.png" alt="CIRCULAGRIS" /></a> 4948 <ul class="cg-conv-nav-links"> 4949 <li><a href="https://www.circulagris.com/home-ita/" target="_top">Home</a></li> 4950 <li><a href="https://www.circulagris.com/ricercatori/" target="_top">Ricercatori</a></li> 4951 <li><a href="https://www.circulagris.com/conferenze/" target="_top" class="active">Convegni</a></li> 4952 <li><a href="https://www.circulagris.com/workshops-ita/" target="_top">Workshop</a></li> 4953 <li><a href="https://www.circulagris.com/pubblicazioni/" target="_top">Pubblicazioni</a></li> 4954 <li class="cg-lang-switch"><a href="https://www.circulagris.com/conferences/" target="_top" style="background:#8B7535;color:#fff !important;padding:6px 14px;border-radius:20px;font-weight:700;cursor:pointer;">EN</a></li> 4955 </ul> 4956 <div class="cg-conv-burger" onclick="(function(){var m=document.getElementById('cgConvMobileMenu');m.classList.toggle('open')})()"> 4957 <span></span><span></span><span></span> 4958 </div> 4959 </nav> 4960 4961 <!-- MOBILE MENU --> 4962 <ul class="cg-conv-mobile-menu" id="cgConvMobileMenu"> 4963 <button class="cg-conv-mobile-close" onclick="document.getElementById('cgConvMobileMenu').classList.remove('open')" aria-label="Chiudi"></button> 4964 <li><a href="https://www.circulagris.com/home-ita/" target="_top">Home</a></li> 4965 <li><a href="https://www.circulagris.com/ricercatori/" target="_top">Ricercatori</a></li> 4966 <li><a href="https://www.circulagris.com/conferenze/" target="_top">Convegni</a></li> 4967 <li><a href="https://www.circulagris.com/workshops-ita/" target="_top">Workshop</a></li> 4968 <li><a href="https://www.circulagris.com/pubblicazioni/" target="_top">Pubblicazioni</a></li> 4969 <li class="cg-lang-switch"><a href="https://www.circulagris.com/conferences/" target="_top" style="background:#8B7535;color:#fff !important;padding:6px 14px;border-radius:20px;font-weight:700;cursor:pointer;">EN</a></li> 4970 </ul> 4971 4972 <!-- HEADER --> 4973 <div class="cg-conv-header"> 4974 <h1>Convegni</h1> 4975 <p>Contributi scientifici a convegni nazionali e internazionali.</p> 4976 </div> 4977 4978 4979 <!-- CONFERENCES LIST --> 4980 <div class="cg-conv-section"> 4981 4982 <div class="cg-conv-item"> 4983 <div class="cg-conv-event">30th Annual Conference of the International Sustainable Development Research Society (ISDRS)</div> 4984 <div class="cg-conv-details">10â14 giugno 2024 · Kathmandu, Nepal</div> 4985 <span class="cg-conv-type cg-conv-type-oral">Presentazione orale</span> 4986 <div class="cg-conv-authors">Raggi A., Arzoumanidis I., Petti L., Simboli A., Di Capua R., Renzulli P.A., Spizzirri G.U., Notarnicola B., Lanuzza F., Mondello G., Saija G., Salomone R.</div> 4987 <div class="cg-conv-title-text">"The CIRCULAGRIS project for developing metrics for circularity and sustainability in Italian agri-food systems"</div>
4988 </div> 4989 4990 <div class="cg-conv-item"> 4991 <div class="cg-conv-event">30th Annual Conference of the International Sustainable Development Research Society (ISDRS)</div> 4992 <div class="cg-conv-details">10â14 giugno 2024 · Kathmandu, Nepal</div> 4993 <span class="cg-conv-type cg-conv-type-poster">Presentazione poster</span> 4994 <div class="cg-conv-authors">Salomone R., Scandurra F., Mondello G., Saija G., Lanuzza F.</div> 4995 <div class="cg-conv-title-text">"Circularity and sustainability indicators for the agrifood sector: the case of olive oil supply chain"</div> 4996 </div> 4997 4998 <div class="cg-conv-item"> 4999 <div class="cg-conv-event">14th International Conference LCA Food 2024</div> 5000 <div class="cg-conv-details">8â12 settembre 2024 · Barcellona, Spagna</div> 5001 <span class="cg-conv-type cg-conv-type-poster">Presentazione poster</span> 5002 <div class="cg-conv-authors">Raggi A., Arzoumanidis I., Petti L., Simboli A., Di Capua R., Renzulli P.A., Notarnicola B., Lanuzza F., Mondello G., Salomone R.</div> 5003 <div class="cg-conv-title-text">"Circularity and sustainability metrics for Italian agri-food systems: the CIRCULAGRIS project"</div> 5004 </div> 5005 5006 <div class="cg-conv-item"> 5007 <div class="cg-conv-event">XVIII Convegno dell'Associazione Rete Italiana LCA 2024</div> 5008 <div class="cg-conv-details">3â5 luglio 2024 · Pescara, Italia</div> 5009 <span class="cg-conv-type cg-conv-type-poster">Presentazione poster</span> 5010 <div class="cg-conv-authors">Salomone R., Scandurra F., Mondello G., Saija G., Lanuzza F.</div> 5011 <div class="cg-conv-title-text">"Circularity metrics in the agri-food sector and olive oil industry: a scoping literature review"</div> 5012 </div> 5013 5014 <div class="cg-conv-item"> 5015 <div class="cg-conv-event">1st International Conference of the Hellenic Society for Circular Economy (HSCE)</div> 5016 <div class="cg-conv-details">12â13 settembre 2024 · La Canea, Grecia</div> 5017 <span class="cg-conv-type cg-conv-type-poster">Presentazione poster</span> 5018 <div class="cg-conv-authors">Raggi A., Arzoumanidis I., Petti L., Simboli A., Di Capua R., Renzulli P.A., Spizzirri G.U., Notarnicola B., Lanuzza F., Mondello G., Saija G., Salomone R.</div> 5019 <div class="cg-conv-title-text">"Measuring circularity and sustainability in Italian agri-food systems: the CIRCULAGRIS project"</div> 5020 </div> 5021 5022 <div class="cg-conv-item"> 5023 <div class="cg-conv-event">1st International Conference of the International Association for Quality, Innovation, and Sustainability (IAQUIS)</div> 5024 <div class="cg-conv-details">11-14 settembre 2024 · Viterbo, Italia</div> 5025 <span class="cg-conv-type cg-conv-type-oral">Presentazione orale</span> 5026 <div class="cg-conv-authors">Esposito B., Notarnicola B., Di Capua R., Renzulli P.A.</div> 5027 <div class="cg-conv-title-text">"Unravelling circular best practices in the pasta and bread supply chains: insights from Italy"</div> 5028 </div> 5029 5030 <div class="cg-conv-item"> 5031 <div class="cg-conv-event">1st International Conference of the International Association for Quality, Innovation And Sustainability (IAQUIS)</div> 5032 <div class="cg-conv-details">11â14 settembre 2024 · Viterbo, Italia</div> 5033 <span class="cg-conv-type cg-conv-type-oral">Presentazione orale</span> 5034 <div class="cg-conv-authors">Salomone R., Scandurra F., Mondello G., Saija G., Lanuzza F.</div> 5035 <div class="cg-conv-title-text">"Circular economy metrics in the agri-food sector: an applicative study in the olive oil industry"</div> 5036 </div> 5037 5038 <div class="cg-conv-item"> 5039 <div class="cg-conv-event">XXXII Congresso Nazionale dell'Accademia Italiana di Scienze Merceologiche (AISME)</div> 5040 <div class="cg-conv-details">19â20 settembre 2024 · Lecce, Italia</div> 5041 <span class="cg-conv-type cg-conv-type-oral">Presentazione orale</span> 5042 <div class="cg-conv-authors">Salomone R., Scandurra F., Mondello G., Saija G., Lanuzza F.</div> 5043 <div class="cg-conv-title-text">"Measuring circularity and sustainability in the olive oil supply chain: an overview of available metrics"</
5043div> 5044 </div> 5045 5046 <div class="cg-conv-item"> 5047 <div class="cg-conv-event">XIX Convegno dell'Associazione Rete Italiana LCA, 2025</div> 5048 <div class="cg-conv-details">19â21 marzo 2025 · Cortina d'Ampezzo, Italia</div> 5049 <span class="cg-conv-type cg-conv-type-oral">Presentazione orale</span> 5050 <div class="cg-conv-authors">Raggi A., Salomone R., Notarnicola B., Arzoumanidis I., Astuto F., Di Capua R., Esposito B., Lanuzza F., Mondello G., Petti L., Renzulli P.A., Saija G., Scandurra F., Simboli A., Tragnone B.M.</div> 5051 <div class="cg-conv-title-text">"Measuring circularity in agri-food: a methodological proposal for the selection and classification of indicators"</div> 5052 </div> 5053 5054 <div class="cg-conv-item"> 5055 <div class="cg-conv-event">XIX Convegno dell'Associazione Rete Italiana LCA, 2025</div> 5056 <div class="cg-conv-details">19â21 marzo 2025 · Cortina d'Ampezzo, Italia</div> 5057 <span class="cg-conv-type cg-conv-type-poster">Presentazione poster</span> 5058 <div class="cg-conv-authors">Arzoumanidis I., Petti L., Simboli A., Tragnone B.M., Raggi A.</div> 5059 <div class="cg-conv-title-text">"Circularity indicators for the agri-food sector and the wine industry"</div> 5060 </div> 5061 5062 <div class="cg-conv-item"> 5063 <div class="cg-conv-event">XIX Convegno dell'Associazione Rete Italiana LCA, 2025</div> 5064 <div class="cg-conv-details">19â21 marzo 2025 · Cortina d'Ampezzo, Italia</div> 5065 <span class="cg-conv-type cg-conv-type-poster">Presentazione poster</span> 5066 <div class="cg-conv-authors">Salomone R., Scandurra F., Mondello G., Saija G., Lanuzza F.</div> 5067 <div class="cg-conv-title-text">"Circular economy in the olive oil industry: evaluating best practices through life cycle assessment"</div> 5068 </div> 5069 5070 <div class="cg-conv-item"> 5071 <div class="cg-conv-event">ECOMED 2025 â Seminario "Guidare la Transizione Circolare: Innovazione, Sostenibilità e Metodi di Valutazione"</div> 5072 <div class="cg-conv-details">15 aprile 2025 · Catania, Italia</div> 5073 <span class="cg-conv-type cg-conv-type-oral">Presentazione orale</span> 5074 <div class="cg-conv-authors">Salomone R.</div> 5075 <div class="cg-conv-title-text">"Valutazione della sostenibilità e circolarità nelle filiere agro-alimentari: il progetto CIRCULAGRIS"</div> 5076 </div> 5077 5078 <div class="cg-conv-item"> 5079 <div class="cg-conv-event">Second openLCA.conf</div> 5080 <div class="cg-conv-details">9â11 aprile 2025 · Berlino, Germania</div> 5081 <span class="cg-conv-type cg-conv-type-poster">Presentazione poster</span> 5082 <div class="cg-conv-authors">Tragnone B.M., Arzoumanidis I., Petti L., Simboli A., Raggi A.</div> 5083 <div class="cg-conv-title-text">"Toward circular and sustainable wine supply chains: a social insight"</div> 5084 </div> 5085 5086 <div class="cg-conv-item"> 5087 <div class="cg-conv-event">31st Annual Conference of the International Sustainable Development Research Society (ISDRS)</div> 5088 <div class="cg-conv-details">8â12 luglio 2025 · Budapest, Ungheria</div> 5089 <span class="cg-conv-type cg-conv-type-oral">Presentazione orale</span> 5090 <div class="cg-conv-authors">Raggi A., Salomone R., Notarnicola B., Arzoumanidis I., Astuto F., Di Capua R., Esposito B., Lanuzza F., Mondello G., Petti L., Renzulli P.A., Saija G., Scandurra F., Simboli A., Tragnone B.M.</div> 5091 <div class="cg-conv-title-text">"Measuring circularity in agri-food: a methodological proposal for the selection and classification of indicators"</div> 5092 </div> 5093 5094 <div class="cg-conv-item"> 5095 <div class="cg-conv-event">2nd International Conference of the Hellenic Society for Circular Economy (HSCE)</div> 5096 <div class="cg-conv-details">17â19 settembre 2025 · La Canea, Grecia</div> 5097 <span class="cg-conv-type cg-conv-type-poster">Presentazione poster</span> 5098 <div class="cg-conv-authors">Tragnone B.M., Arzoumanidis I., Petti L., Simboli A., Raggi A.</div> 5099 <div class="cg-conv-title-text">"Identification of agri-food Social Life Cycle Assessment material themes"</div>
5100 </div> 5101 5102 <div class="cg-conv-item"> 5103 <div class="cg-conv-event">Workshop "Application of Life Cycle Thinking to the agri-food sector", Associazione Rete Italiana LCA</div> 5104 <div class="cg-conv-details">24â25 settembre 2025 · Reggio Calabria, Italia</div> 5105 <span class="cg-conv-type cg-conv-type-oral">Presentazione orale</span> 5106 <div class="cg-conv-authors">Arzoumanidis I., Tragnone B.M., Petti L., Chiusano L., Raggi A.</div> 5107 <div class="cg-conv-title-text">"Environmental sustainability of circular practices in the wine supply chain: insights from a case study"</div> 5108 </div> 5109 5110 <div class="cg-conv-item"> 5111 <div class="cg-conv-event">XLI Convegno Nazionale dell'Accademia Italiana di Economia Aziendale (AIDEA)</div> 5112 <div class="cg-conv-details">22â23 gennaio 2026 · Milano, Italia</div> 5113 <span class="cg-conv-type cg-conv-type-oral">Presentazione orale</span> 5114 <div class="cg-conv-authors">Tragnone B.M., Arzoumanidis I., Petti L., Chiusano L., Raggi A.</div> 5115 <div class="cg-conv-title-text">"Circular and sustainable solutions in the wine sector: a case study"</
5115div> 5116 </div> 5117 5118 <div class="cg-conv-item"> 5119 <div class="cg-conv-event">Re-Think â Circular Economy Forum 2024</div> 5120 <div class="cg-conv-details">2â4 ottobre 2024 · Taranto, Italia</div> 5121 <span class="cg-conv-type cg-conv-type-oral">Presentazione orale</span> 5122 <div class="cg-conv-authors">Notarnicola B., Renzulli P.A., Di Capua R., Esposito B.</div> 5123 <div class="cg-conv-title-text">"Necessità di una metrica per quantificare la sostenibilità derivante dalla valorizzazione di materiali e residui: il ruolo della LCA"</div> 5124 </div> 5125 5126 <div class="cg-conv-item"> 5127 <div class="cg-conv-event">XIX Convegno dell'Associazione Rete Italiana LCA, 2025</div> 5128 <div class="cg-conv-details">19â21 marzo 2025 · Cortina d'Ampezzo, Italia</div> 5129 <span class="cg-conv-type cg-conv-type-poster">Presentazione poster</span> 5130 <div class="cg-conv-authors">Esposito B., Notarnicola B., Di Capua R., Renzulli P.A.</div> 5131 <div class="cg-conv-title-text">"Il Life Cycle Costing come Strumento per l'Economia Circolare nel Settore Agroalimentare: Una Revisione Sistematica della Letteratura" â In corso di stampa</div> 5132 </div> 5133 5134 <div class="cg-conv-item"> 5135 <div class="cg-conv-event">AFLUM 2026 International Conference â "The New Sustainability Agenda: Addressing Environmental and Social Challenges â Climate, Circularity, Biodiversity and Equity in Uncertain Times"</div> 5136 <div class="cg-conv-details">4â5 giugno 2026 · Bari, Italia</div> 5137 <span class="cg-conv-type cg-conv-type-oral">Presentazione orale</span> 5138 <div class="cg-conv-authors">Notarnicola B., Astuto F., De Gennaro S., Di Capua R., Esposito B., Renzulli P.A., Spizzirri U.G., Stasi G.</div> 5139 <div class="cg-conv-title-text">"Integrating Environmental and Circularity Metrics in the Pasta Supply Chain: a Comparative Assessment of Circular and Linear Alternatives"</div> 5140 </div> 5141 5142 </div> 5143 5144 5145 <!-- PHOTO SLIDESHOW --> 5146 <div class="cg-conv-slideshow-section"> 5147 <h3 class="cg-conv-slideshow-title">Galleria fotografica</h3> 5148 <p class="cg-conv-slideshow-sub">Momenti dalle nostre partecipazioni a convegni.</p> 5149 <div class="cg-conv-slider-wrap"> 5150 <img class="cg-conv-slide" src="/images/conf-milano-1.jpg" alt="AIDEA 2026 - Milano" /> 5151 <img class="cg-conv-slide" src="/images/conf-cortina-new-1.jpg" alt="XIX Convegno Rete Italiana LCA - Cortina d'Ampezzo" /> 5152 <img class="cg-conv-slide" src="/images/conf-cortina-new-2.jpg" alt="XIX Convegno Rete Italiana LCA - Cortina d'Ampezzo" /> 5153 <img class="cg-conv-slide" src="/images/conf-barcellona-new.jpg" alt="LCA Food 2024 - Barcellona" /> 5154 <img class="cg-conv-slide" src="/images/conf-messina-welcome.jpg" alt="Saluti istituzionali - Università di Messina" /> 5155 <img class="cg-conv-slide" src="/images/conf-messina-opening.jpg" alt="Sessione di apertura - Università di Messina" /> 5156 <img class="cg-conv-slide" src="/images/conf-messina-platea.jpg" alt="Platea - Università di Messina" /> 5157 <img class="cg-conv-slide cg-fit-contain" src="/images/conf-messina-registration.jpg" alt="Registrazione - Università di Messina" /> 5158 <img class="cg-conv-slide cg-fit-contain" src="/images/conf-rilca-2025.jpg" alt="RILCA 2025" /> 5159 <img class="cg-conv-slide" src="/images/conf-rethink-tondo.jpg" alt="ReThink - Università degli Studi di Bari Aldo Moro" /> 5160 <img class="cg-conv-slide cg-fit-contain" src="/images/conf-unich.jpg" alt="Workshop - Università G. d'Annunzio di Chiet
5160i-Pescara" /> 5161 <img class="cg-conv-slide" src="/images/conf-uniba.jpg" alt="Workshop - Università degli Studi di Bari Aldo Moro" /> 5162 <button class="cg-conv-slider-arrow left" onclick="cgConvSliderPrev()">â</button> 5163 <button class="cg-conv-slider-arrow right" onclick="cgConvSliderNext()">â</button> 5164 </div> 5165 <div class="cg-conv-slider-dots"> 5166 <button class="cg-conv-slider-dot" onclick="cgConvSliderGoTo(0)"></button> 5167 <button class="cg-conv-slider-dot" onclick="cgConvSliderGoTo(1)"></button> 5168 <button class="cg-conv-slider-dot" onclick="cgConvSliderGoTo(2)"></button> 5169 <button class="cg-conv-slider-dot" onclick="cgConvSliderGoTo(3)"></button> 5170 <button class="cg-conv-slider-dot" onclick="cgConvSliderGoTo(4)"></button> 5171 <button class="cg-conv-slider-dot" onclick="cgConvSliderGoTo(5)"></button> 5172 <button class="cg-conv-slider-dot" onclick="cgConvSliderGoTo(6)"></button> 5173 <button class="cg-conv-slider-dot" onclick="cgConvSliderGoTo(7)"></button> 5174 <button class="cg-conv-slider-dot" onclick="cgConvSliderGoTo(8)"></button> 5175 <button class="cg-conv-slider-dot" onclick="cgConvSliderGoTo(9)"></button> 5176 <button class="cg-conv-slider-dot" onclick="cgConvSliderGoTo(10)"></button> 5177 <button class="cg-conv-slider-dot" onclick="cgConvSliderGoTo(11)"></button> 5178 </div> 5179 </div> 5180 5181 <!-- FOOTER --> 5182 <footer class="cg-conv-footer"> 5183 <div class="cg-conv-footer-logos"> 5184 <img src="/images/logo-circulagris.png" alt="CIRCULAGRIS" style="height: 50px; filter: brightness(0) invert(1);" /> 5185 </div> 5186 <div class="cg-conv-footer-logos" style="margin-top: 16px;"> 5187 <img src="/images/footer-eu-white.png" alt="Finanziato dall'Unione europea - NextGenerationEU" style="height:56px;" /> 5188 <img src="/images/footer-mur-white.png" alt="Ministero dell'Università e della Ricerca" style="height:42px;" /> 5189 <img src="/images/footer-italiadomani-white.png" alt="Italia Domani - PNRR" style="height:72px;" /> 5190 <img src="/images/logo-uda.png" alt="UdA" style="height:80px;" /> 5191 <img src="/images/logo-unime-white.png" alt="UNIME" style="height:76px;" /> 5192 <img src="/images/logo-uniba.png" alt="UNIBA" style="height:80px;" /> 5193 </div> 5194 <p style="margin-top: 20px;">© 2024 CIRCULAGRIS â PRIN 2022 | <a href="https://www.unich.it" target="_blank">Università degli Studi "G. d'Annunzio" Chieti-Pescara</a></p> 5195 <div class="cg-conv-footer-funding"> 5196 Progetto di ricerca "Towards circular and sustainable agri-food systems: metrics for assessment (CIRCULAGRIS)" PRIN2022 (Progetti di Ricerca di Interesse Nazionale) finanziato dall'Unione Europea - Next Generation EU, Missione 4, Componente 2, CUP D53D23011220006. 5197 </div> 5198 <div style="margin-top: 16px; font-size: 0.72rem; color: rgba(255,255,255,0.5);"> 5199 <a href="https://www.sitiwebshop.it/?utm_source=sito-cliente&utm_medium=circulagris-universita-ch" target="_blank" rel="noopener noreferrer" style="color: rgba(255,255,255,0.8); text-decoration: underline;">Powered by Webshop Human AI Automation</a> 5200 </div> 5201 </footer> 5202 5203</div> 5204`}})),I2=()=>(x.useEffect(()=>{function e(){const t=document.querySelector(".cg-pub-inst-bar"),i=document.querySelector(".cg-pub-nav");t&&i&&(i.style.top=t.offsetHeight+"px")}return requestAnimationFrame(e),setTimeout(e,100),setTimeout(e,500),window.addEventListener("resize",e),window.addEventListener("load",e),()=>{window.removeEventListener("resize",e),window.removeEventListener("load",e)}},[]),I.jsx("div",{dangerouslySetInnerHTML:{__html:` 5205<style> 5206.cg-pub-root *, .cg-pub-root *::before, .cg-pub-root *::after { margin: 0; padding: 0; box-sizing: border-box; } 5207.cg-pub-root { 5208 font-family: Calibri, 'Segoe UI', sans-serif; 5209 color: #3a3a4a; line-height: 1.6; background: #FAF8F2; 5210 min-height: 100vh; 5211} 5212.cg-pub-root img { max-width: 100%; } 5213 5214/* âââ INSTITUTIONAL BAR âââ */ 5215.cg-pub-inst-bar { 5216 position: fixed; top: 0; left: 0; right: 0; z-index: 101; 5217 background: #2A65AF; 5218 display: flex; align-items: center; justify-content: center; 5219 gap: 28px; padding: 14px 40px; 5220 border-bottom: 1px solid rgba(0,0,0,0.08); 5221 flex-wrap: wrap; 5222} 5223.cg-pub-inst-bar img { height: 64px; object-fit: contain; flex-shrink: 0; } 5224.cg-pub-inst-bar .cg-inst-divider { 5225 width: 1px; height: 48px; background: rgba(255,255,255,0.3); flex-shrink: 0; 5226} 5227 5228/* âââ NAV âââ */ 5229.cg-pub-nav { 5230 position: fixed; top: 92px; left: 0; right: 0; z-index: 100; 5231 background: rgba(255,255,255,0.92); 5232 backdrop-filter: blur(16px); 5233 padding: 18px 60px; 5234 display: flex; align-items: center; justify-content: space-between; 5235 border-bottom: 1px solid rgba(0,0,0,0.06); 5236 box-shadow: 0 2px 20px rgba(0,0,0,0.04); 5237} 5238.cg-pub-nav-logo { display: flex; align-items: center; } 5239.cg-pub-nav-logo img { height: 56px; object-fit: contain; margin-right: 16px; } 5240.cg-pub-nav-links { display: flex; gap: 32px; list-style: none; } 5241.cg-pub-nav-links a { 5242 color: #555; text-decoration: none; font-size: 0.82rem; 5243 font-weight: 600; letter-spacing: 1.5px; text-transform: uppercase; 5244 transition: color 0.3s; position: relative; cursor: pointer; 5245} 5246.cg-pub-nav-links a:hover { color: #8B7535; } 5247.cg-pub-nav-links a::after {
5248 content:''; position: absolute; bottom: -6px; left: 0; width: 0; height: 2px; 5249 background: #8B7535; transition: width 0.3s; 5250} 5251.cg-pub-nav-links a:hover::after { width: 100%; } 5252.cg-pub-nav-links a.active { color: #8B7535; } 5253.cg-pub-nav-links a.active::after { width: 100%; } 5254 5255/* âââ BURGER âââ */ 5256.cg-pub-burger { 5257 display: none; flex-direction: column; gap: 5px; cursor: pointer; 5258 padding: 8px; z-index: 200; 5259} 5260.cg-pub-burger span { 5261 display: block; width: 24px; height: 2px; background: #3a3a4a; 5262 transition: all 0.3s; border-radius: 2px; 5263} 5264.cg-pub-mobile-menu { 5265 display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; 5266 background: #FAF8F2; z-index: 190; 5267 flex-direction: column; align-items: center; justify-content: center; 5268 gap: 24px; list-style: none; overflow: hidden; 5269} 5270.cg-pub-mobile-menu.open { display: flex; } 5271.cg-pub-mobile-menu a { 5272 color: #3a3a4a; text-decoration: none; font-size: 1.1rem; 5273 font-weight: 700; letter-spacing: 2px; text-transform: uppercase; 5274 font-family: Calibri, 'Segoe UI', sans-serif; cursor: pointer; 5275 transition: color 0.3s; 5276} 5277.cg-pub-mobile-menu a:hover { color: #8B7535; } 5278.cg-pub-mobile-close { 5279 position: absolute; top: 20px; right: 20px; 5280 width: 40px; height: 40px; cursor: pointer; 5281 display: flex; align-items: center; justify-content: center; 5282 background: none; border: none; z-index: 200; 5283} 5284.cg-pub-mobile-close::before, .cg-pub-mobile-close::after { 5285 content: ''; position: absolute; 5286 width: 24px; height: 2px; background: #3a3a4a; border-radius: 2px; 5287} 5288.cg-pub-mobile-close::before { transform: rotate(45deg); } 5289.cg-pub-mobile-close::after { transform: rotate(-45deg); } 5290 5291/* âââ HEADER âââ */ 5292.cg-pub-header { 5293 background: #2A65AF; 5294 padding: 200px 60px 60px; text-align: center; 5295} 5296.cg-pub-header h1 { 5297 font-family: Calibri, 'Segoe UI', sans-serif; 5298 font-size: clamp(1.8rem, 3vw, 2.8rem); font-weight: 800; 5299 color: #fff; text-transform: uppercase; letter-spacing: 2px; margin-bottom: 12px; 5300} 5301.cg-pub-header p { 5302 font-size: 1rem; color: rgba(255,255,255,0.7); max-width: 600px; margin: 0 auto; 5303} 5304 5305/* âââ CONTENT âââ */ 5306.cg-pub-section { 5307 max-width: 1000px; margin: 0 auto; padding: 60px 40px; 5308} 5309.cg-pub-divider { 5310 width: 60px; height: 3px; background: linear-gradient(90deg, #8B7535, #8E4585); 5311 margin-bottom: 32px; border-radius: 2px; 5312} 5313.cg-pub-list { 5314 list-style: none; display: flex; flex-direction: column; gap: 20px; 5315 margin-bottom: 60px; 5316} 5317.cg-pub-item { 5318 background: #fff; border-radius: 12px; padding: 24px 28px; 5319 border: 1px solid rgba(0,0,0,0.06); 5320 border-left: 4px solid #8B7535; 5321 transition: all 0.3s; 5322} 5323.cg-pub-item:hover { 5324 transform: translateX(4px); 5325 box-shadow: 0 4px 20px rgba(0,0,0,0.06); 5326} 5327.cg-pub-item p { 5328 font-size: 0.85rem; color: #555; line-height: 1.7; 5329} 5330.cg-pub-item .cg-pub-authors { 5331 font-weight: 700; color: #3a3a4a; 5332} 5333.cg-pub-item .cg-pub-year { 5334 display: inline-block; background: #8B7535; color: #fff; 5335 font-size: 0.7rem; font-weight: 700; padding: 2px 10px; 5336 border-radius: 20px; margin-bottom: 8px; letter-spacing: 0.5px; 5337} 5338.cg-pub-item .cg-pub-venue { 5339 font-style: italic; color: #777; 5340} 5341/* âââ FOOTER âââ */ 5342.cg-pub-footer { 5343 background: #2A65AF; padding: 40px 60px; text-align: center; 5344 color: rgba(255,255,255,0.5); font-size: 0.78rem; line-height: 1.8; 5345} 5346.cg-pub-footer-logos { 5347 display: flex; align-items: center; justify-content: center; 5348 gap: 24px; margin-bottom: 16px; flex-wrap: wrap; 5349} 5350.cg-pub-footer-logos img { height: 44px; object-fit: contain; } 5351.cg-pub-footer a { color: rgba(255,255,255,0.7); text-decoration: none; } 5352.cg-pub-footer-funding { 5353 max-width: 800px; margin: 16px auto 0; font-size: 0.72rem; 5354 color: rgba(255,255,255,0.35); line-height: 1.6; 5355} 5356.cg-pub-footer p { color: rgba(255,255,255,0.5); } 5357 5358@media (max-width: 900px) { 5359 .cg-pub-hide-mobile { display: none !important; } 5360 .cg-pub-nav-links { display: none; } 5361 .cg-pub-burger { display: flex; } 5362 .cg-pub-inst-bar { padding: 10px 20px; gap: 14px; flex-wrap: wrap; } 5363 .cg-pub-inst-bar img { height: 44px; } 5364 .cg-pub-inst-bar .cg-inst-divider { height: 32px; } 5365} 5366@media (max-width: 640px) { 5367 .cg-pub-header { padding: 220px 10px 40px; } 5368 .cg-pub-section { padding: 40px 10px; text-align: center; } 5369 .cg-pub-inst-bar { padding: 8px 6px; gap: 8px; justify-content: space-between; flex-wrap: nowrap; } 5370 .cg-pub-inst-bar img { height: 32px !important; flex-shrink: 1; min-width: 0; object-fit: contain; } 5371 .cg-pub-inst-bar .cg-logo-italiadomani { height: 58px !important; } 5372 .cg-pub-inst-bar .cg-inst-divider { display: flex; height: 28px; background: rgba(255,255,255,0.3); width: 1px; flex-shrink: 0; } 5373 .cg-pub-nav { top: auto; padding: 12px 10px; } 5374 .cg-pub-item { padding: 16px 14px; text-align: center; } 5375 .cg-pub-item p { text-align: center; } 5376 .cg-pub-divider { margin-left: auto; margin-right: auto; } 5377 .cg-pub-footer { padding: 30px 10px; } 5378 .cg-pub-footer-logos { gap: 12px; } 5379 .cg-pub-footer-logos img { height: 32px; } 5380} 5381</style> 5382 5383<div class="cg-pub-root"> 5384 5385 <!-- INSTITUTIONAL BAR --> 5386 <div class="cg-pub-inst-bar"> 5387 <img src="/images/footer-eu-white.png" alt="Finanziato dall'Unione europea - NextGenerationEU" style="height:56px;" /> 5388 <div class="cg-inst-divider"></div> 5389 <img src="/images/footer-mur-white.png" alt="MUR" style="height:42px;" /> 5390 <div class="cg-inst-divider"></div>
5391 <img src="/images/footer-italiadomani-white.png" alt="Italia Domani" style="height:72px;" class="cg-logo-italiadomani" /> 5392 <div class="cg-inst-divider cg-pub-hide-mobile"></div> 5393 <img src="/images/logo-uda.png" alt="UdA" style="height:80px;" class="cg-pub-hide-mobile" /> 5394 <img src="/images/logo-unime-white.png" alt="UNIME" style="height:76px;" class="cg-pub-hide-mobile" /> 5395 <img src="/images/logo-uniba.png" alt="UNIBA" style="height:80px;" class="cg-pub-hide-mobile" /> 5396 </div> 5397 5398 <!-- NAV --> 5399 <nav class="cg-pub-nav"> 5400 <a class="cg-pub-nav-logo" href="https://www.circulagris.com/home-ita/" target="_top"><img src="/images/logo-circulagris.png" alt="CIRCULAGRIS" /></a> 5401 <ul class="cg-pub-nav-links"> 5402 <li><a href="https://www.circulagris.com/home-ita/" target="_top">Home</a></li> 5403 <li><a href="https://www.circulagris.com/ricercatori/" target="_top">Ricercatori</a></li> 5404 <li><a href="https://www.circulagris.com/conferenze/" target="_top">Convegni</a></li> 5405 <li><a href="https://www.circulagris.com/workshops-ita/" target="_top">Workshop</a></li> 5406 <li><a href="https://www.circulagris.com/pubblicazioni/" target="_top" class="active">Pubblicazioni</a></li> 5407 <li class="cg-lang-switch"><a href="https://www.circulagris.com/publications/" target="_top" style="background:#8B7535;color:#fff !important;padding:6px 14px;border-radius:20px;font-weight:700;cursor:pointer;">EN</a></li> 5408 </ul> 5409 <div class="cg-pub-burger" onclick="(function(){var m=document.getElementById('cgPubMobileMenu');m.classList.toggle('open')})()"> 5410 <span></span><span></span><span></span> 5411 </div> 5412 </nav> 5413 5414 <!-- MOBILE MENU --> 5415 <ul class="cg-pub-mobile-menu" id="cgPubMobileMenu"> 5416 <button class="cg-pub-mobile-close" onclick="document.getElementById('cgPubMobileMenu').classList.remove('open')" aria-label="Chiudi"></button> 5417 <li><a href="https://www.circulagris.com/home-ita/" target="_top">Home</a></li> 5418 <li><a href="https://www.circulagris.com/ricercatori/" target="_top">Ricercatori</a></li> 5419 <li><a href="https://www.circulagris.com/conferenze/" target="_top">Convegni</a></li> 5420 <li><a href="https://www.circulagris.com/workshops-ita/" target="_top">Workshop</a></li> 5421 <li><a href="https://www.circulagris.com/pubblicazioni/" target="_top">Pubblicazioni</a></li> 5422 <li class="cg-lang-switch"><a href="https://www.circulagris.com/publications/" target="_top" style="background:#8B7535;color:#fff !important;padding:6px 14px;border-radius:20px;font-weight:700;cursor:pointer;">EN</a></li> 5423 </ul> 5424 5425 <div class="cg-pub-header"> 5426 <h1>Pubblicazioni</h1> 5427 <p>Contributi scientifici realizzati nell'ambito del progetto CIRCULAGRIS.</p> 5428 </div> 5429 5430 <div class="cg-pub-section"> 5431 5432 <div class="cg-pub-divider"></div> 5433 <ul class="cg-pub-list"> 5434 5435 <li class="cg-pub-item"> 5436 <span class="cg-pub-year">2024</span> 5437 <p><span class="cg-pub-authors">ESPOSITO, B., NOTARNICOLA, B., DI CAPUA, R., RENZULLI, P.A.</span> 2024. “Unravelling circular best practices in the pasta and bread supply chains: insights from Italy”. <span class="cg-pub-venue">In: Suarez Barraza, M.F., Edvardsson, B., Jaca, C., Psomas, E., Renzi, M.F., Marimon, F., Gianni, M., Sebahtu, S., Ruggieri, A. (a cura di). Proceedings of the 1st International Conference of the International Association for Quality, Innovation and Sustainability (IAQUIS) “Fostering organisational transformation for a sustainable future: Enhancing synergies between quality, innovation and sustainability”, pp. 19–36. ISBN: 979-12-210-9378-0</span></p> 5438 </li> 5439 5440 <li class="cg-pub-item"> 5441 <span class="cg-pub-year">2024</span> 5442 <p><span class="cg-pub-authors">RAGGI A., ARZOUMANIDIS I., PETTI L., SIMBOLI A., DI CAPUA R., RENZULLI P.A., SPIZZIRRI G.U., NOTARNICOLA B., LANUZZA F., MONDELLO G., SAIJA G., SALOMONE R.</span> 2024. “The CIRCULAGRIS project for developing metrics for circularity and sustainability in Italian agri-food systems”. <span class="cg-pub-venue">Book of abstracts of the 30th Annual Conference of the International Sustainable Development Research Society (ISDRS), “Linking Futures of Mountain and Ocean: Rescuing the SDGs 2030 for Sustainable Livelihood”, 10–14 giugno 2024, Kathmandu, Nepal, pp. 174–175</span></p> 5443 </li> 5444 5445 <li class="cg-pub-item">
5446 <span class="cg-pub-year">2024</span> 5447 <p><span class="cg-pub-authors">RAGGI A., ARZOUMANIDIS I., PETTI L., SIMBOLI A., DI CAPUA R., RENZULLI P.A., NOTARNICOLA B., LANUZZA F., MONDELLO G., SALOMONE R.</span> 2024. “Circularity and sustainability metrics for Italian agri-food systems: the CIRCULAGRIS project”. <span class="cg-pub-venue">In: Núñez M. (a cura di). Book of abstracts of the 14th International Conference on Life Cycle Assessment of Food (LCA Food 2024), 8–12 settembre 2024, Barcellona, Spagna, pp. 911–912</span></p> 5448 </li> 5449 5450 <li class="cg-pub-item"> 5451 <span class="cg-pub-year">2024</span> 5452 <p><span class="cg-pub-authors">RAGGI A., ARZOUMANIDIS I., PETTI L., SIMBOLI A., DI CAPUA R., RENZULLI P.A., SPIZZIRRI G.U., NOTARNICOLA B., LANUZZA F., MONDELLO G., SAIJA G., SALOMONE R.</span> 2024. “Measuring circularity and sustainability in Italian agri-food systems: the CIRCULAGRIS project”. <span class="cg-pub-venue">Book of abstracts of the 1st International Conference of the Hellenic Society for Circular Economy “Circular Economy: the pathway towards a sustainable development”, 12–13 settembre 2024, Chania, Grecia, pp. 292–293</span></p> 5453 </li> 5454 5455 <li class="cg-pub-item"> 5456 <span class="cg-pub-year">2024</span> 5457 <p><span class="cg-pub-authors">SALOMONE, R., SCANDURRA, F., MONDELLO, G., SAIJA, G., LANUZZA, F.</span> 2024. “Circular economy metrics in the agri-food sector: an applicative study in the olive oil industry”. <span class="cg-pub-venue">In: Suarez Barraza, M.F. et al. (a cura di). Proceedings of the 1st International Conference of the International Association for Quality, Innovation and Sustainability (IAQUIS) “Fostering organisational transformation for a sustainable future: Enhancing synergies between quality, innovation and sustainability”, 11–14 settembre 2024, Viterbo, Italia, pp. 236–246, ISBN: 9791221093780</span></p> 5458 </li> 5459 5460 <li class="cg-pub-item"> 5461 <span class="cg-pub-year">2024</span> 5462 <p><span class="cg-pub-authors">SALOMONE, R., SCANDURRA, F., MONDELLO, G., SAIJA, G., LANUZZA, F.</span> 2024. “Measuring circularity and sustainability in the olive oil supply chain: an overview of available metrics”. <span class="cg-pub-venue">In: Agnusdei, L. et al. (a cura di). XXXII XXIII Congresso Nazionale delle Scienze Merceologiche, “Resilienza e sostenibilità nel cambiamento globale”, 19–20 settembre 2024, Lecce, Italia, pp. 482–489, ISBN: 979-12-985593-1-8</span></p> 5463 </li> 5464 5465 <li class="cg-pub-item"> 5466 <span class="cg-pub-year">2024</span> 5467 <p><span class="cg-pub-authors">SCANDURRA, F., SALOMONE, R., MONDELLO, G., SAIJA, G., LANUZZA, F.</span> 2024. “Circularity and sustainability indicators for the agrifood sector: The case of olive oil supply chain”. <span class="cg-pub-venue">Proceedings of the 30th Annual Conference of the International Sustainable Development Research Society (ISDRS), “Linking Futures of Mountain and Ocean: Rescuing the SDGs 2030 for Sustainable Livelihood”, 10–14 giugno 2024, Kathmandu, Nepal, pp. 460–470. ISBN: 978-9937-1-8614-8</span></p> 5468 </li> 5469 5470 <li class="cg-pub-item"> 5471 <span class="cg-pub-year">2025</span> 5472 <p><span class="cg-pub-authors">ESPOSITO, B., NOTARNICOLA, B., RENZULLI, P.A., DI CAPUA, R.</span> 2025. “Circularity in the pasta supply chain: Developing a multi-indicator framework for circular economy assessment”. <span class="cg-pub-venue">Cleaner Environmental Systems, 100327</span></p> 5473 </li> 5474 5475 <li class="cg-pub-item"> 5476 <span class="cg-pub-year">2025</span> 5477 <p><span class="cg-pub-authors">SALOMONE, R., SCANDURRA, F., MONDELLO, G., SAIJA, G., LANUZZA, F.</span> 2025. “Circularity metrics in the agri-food sector and olive oil industry: a scoping literature review”. <span class="cg-pub-venue">In: Raggi, A. et al. (a cura di). Atti del XVIII Convegno dell’Associazione Rete Italiana LCA 2024, “Life Cycle Thinking a supporto di modelli di produzione e di consumo sostenibili”, 3–5 luglio 2024, Pescara, Italia, pp. 135–142, ISBN: 9791221004571</span></p> 5478 </li> 5479 5480 <li class="cg-pub-item">
5481 <span class="cg-pub-year">2025</span> 5482 <p><span class="cg-pub-authors">TRAGNONE, B.M., ARZOUMANIDIS, I., PETTI, L., SIMBOLI, A., RAGGI, A.</span> 2025. “Toward circular and sustainable wine supply chains: a social insight”. <span class="cg-pub-venue">In: Mittal, M. et al. (a cura di). Proceedings of the Second openLCA.conf, 10–11 aprile 2025, Berlino, Germania, p. 64</span></p> 5483 </li> 5484 5485 <li class="cg-pub-item"> 5486 <span class="cg-pub-year">2025</span> 5487 <p><span class="cg-pub-authors">TRAGNONE, B.M., ARZOUMANIDIS, I., PETTI, L., SIMBOLI, A., RAGGI, A.</span> 2025. “Identification of agri-food Social Life Cycle Assessment material themes”. <span class="cg-pub-venue">In: Stefanakis, A., Nikolaou, I. (a cura di). e-Book of abstracts of the International Conference of the Hellenic Society for Circular Economy (HSCE), “Circular Economy: the pathway towards a sustainable development”, 17–19 settembre 2025, Chania, Grecia, pp. 284–285</span></p> 5488 </li> 5489 5490 <li class="cg-pub-item"> 5491 <span class="cg-pub-year">2025</span> 5492 <p><span class="cg-pub-authors">ARZOUMANIDIS, I., PETTI, L., SIMBOLI, A., TRAGNONE, B.M., RAGGI, A.</span> 2025. Indicatori di circolarità per il settore agroalimentare e il comparto vitivinicolo. <span class="cg-pub-venue">Atti del XIX Convegno dell’Associazione Rete Italiana LCA, 2025, “Transizione sostenibile, competitività e innovazione: il ruolo della Life Cycle Assessment”, 19–21 marzo 2025, Cortina d’Ampezzo, Italia. In corso di stampa</span></p> 5493 </li> 5494 5495 <li class="cg-pub-item"> 5496 <span class="cg-pub-year">2025</span> 5497 <p><span class="cg-pub-authors">ESPOSITO, B., NOTARNICOLA, B., DI CAPUA, R., RENZULLI, P.A.</span> 2025. Il Life Cycle Costing come strumento per l’economia circolare nel settore agroalimentare: una revisione sistematica della letteratura. <span class="cg-pub-venue">Atti del XIX Convegno dell’Associazione Rete Italiana LCA, 2025, “Transizione sostenibile, competitività e innovazione: il ruolo della Life Cycle Assessment”, 19–21 marzo 2025, Cortina d’Ampezzo, Italia. In corso di stampa</span></p> 5498 </li> 5499 5500 <li class="cg-pub-item"> 5501 <span class="cg-pub-year">2025</span> 5502 <p><span class="cg-pub-authors">RAGGI, A., SALOMONE, R., NOTARNICOLA, B., ARZOUMANIDIS, I., ASTUTO, F., DI CAPUA, R., ESPOSITO, B., LANUZZA, F., MONDELLO, G., PETTI, L., RENZULLI, P.A., SAIJA, G., SCANDURRA, F., SIMBOLI, A., TRAGNONE, B.M.</span> 2025. Misurazione della circolarità nell’agri-food: una proposta metodologica per la selezione e la classificazione di indicatori. <span class="cg-pub-venue">Atti del XIX Convegno dell’Associazione Rete Italiana LCA, 2025, “Transizione sostenibile, competitività e innovazione: il ruolo della Life Cycle Assessment”, 19–21 marzo 2025, Cortina d’Ampezzo, Italia. In corso di stampa</span></p> 5503 </li> 5504 5505 <li class="cg-pub-item"> 5506 <span class="cg-pub-year">2025</span> 5507 <p><span class="cg-pub-authors">SALOMONE, R., SCANDURRA, F., MONDELLO, G., SAIJA, G., LANUZZA, F.</span> “Circular economy in the olive oil industry: evaluating best practices through life cycle assessment”. <span class="cg-pub-venue">Atti del XIX Convegno dell’Associazione Rete Italiana LCA, 2025, “Transizione sostenibile, competitività e innovazione: il ruolo della Life Cycle Assessment”, 19–21 marzo 2025, Cortina d’Ampezzo, Italia. In corso di stampa</span></p> 5508 </li> 5509 5510 <li class="cg-pub-item"> 5511 <span class="cg-pub-year">2025</span> 5512 <p><span class="cg-pub-authors">RAGGI A., SALOMONE R., NOTARNICOLA B., ARZOUMANIDIS I., ASTUTO F., DI CAPUA R., ESPOSITO B., LANUZZA F., MONDELLO G., PETTI L., RENZULLI P.A., SAIJA G., SCANDURRA F., SIMBOLI A., TRAGNONE B.M.</span> “Measuring circularity in agri-food: a methodological proposal for the selection and classification of indicators”. <span class="cg-pub-venue">Book of abstracts of the 31st Annual Conference of the International Sustainable Development Research Society (ISDRS), “Sustainability and beyond”, 8–12 luglio 2025, Budapest, Ungheria. In corso di stampa</span></p> 5513 </li> 5514 5515 <li class="cg-pub-item">
5516 <span class="cg-pub-year">2025</span> 5517 <p><span class="cg-pub-authors">RAGGI A., SALOMONE R., NOTARNICOLA B., ARZOUMANIDIS I., ASTUTO F., DI CAPUA R., ESPOSITO B., LANUZZA F., MONDELLO G., PETTI L., RENZULLI P.A., SAIJA G., SCANDURRA F., SIMBOLI A., TRAGNONE B.M.</span> “Measuring circularity in agri-food: a methodological proposal for the selection and classification of indicators”. <span class="cg-pub-venue">Proceedings of the 31st Annual Conference of the International Sustainable Development Research Society (ISDRS), “Sustainability and beyond”, 8–12 luglio 2025, Budapest, Ungheria. In corso di stampa</span></p> 5518 </li> 5519 5520 <li class="cg-pub-item"> 5521 <span class="cg-pub-year">2026</span> 5522 <p><span class="cg-pub-authors">TRAGNONE, B.M., ARZOUMANIDIS, I., PETTI, L., CHIUSANO, L., RAGGI, A.</span> Soluzioni circolari e sostenibili nel settore vitivinicolo: un caso studio. <span class="cg-pub-venue">XLI Convegno Nazionale dell’Accademia Italiana di Economia Aziendale (AIDEA), “Intelligenze Aziendali per la competitività sostenibile e il bene comune”, 22–23 gennaio 2026, Milano, Italia. In corso di stampa</span></p> 5523 </li> 5524 5525 <li class="cg-pub-item"> 5526 <span class="cg-pub-year">2026</span> 5527 <p><span class="cg-pub-authors">TRAGNONE, B.M., ARZOUMANIDIS, I., PETTI, L., SIMBOLI, A., RAGGI, A.</span> “Aspetti sociali nella transizione verso filiere vitivinicole circolari”. <span class="cg-pub-venue">Capitolo di libro, Bologna University Press. In corso di stampa</span></p> 5528 </li> 5529 5530 <li class="cg-pub-item"> 5531 <span class="cg-pub-year">2026</span> 5532 <p><span class="cg-pub-authors">ARZOUMANIDIS, I., TRAGNONE, B.M., PETTI, L., RAGGI A.</span> “The environmental profile of a biosymbiotic wine in Italy: towards more circular solutions”. <span class="cg-pub-venue">2nd LUM Conference on Accounting, Banking, and Finance Research “The New Sustainability Agenda: Addressing Environmental and Social Challenges – Climate, Circularity, Biodiversity and Equity in Uncertain Times”, 4–5 giugno 2026, Bari, Italia. Accettato</span></p> 5533 </li> 5534 5535 <li class="cg-pub-item"> 5536 <span class="cg-pub-year">2026</span> 5537 <p><span class="cg-pub-authors">TRAGNONE, B.M., ARZOUMANIDIS, I., PETTI, L., RAGGI, A.</span> “Towards Circular Agri-food Chains: Challenges in the Application of Social Life Cycle Assessment”. <span class="cg-pub-venue">Social Life Cycle Assessment (S-LCA) Conference 2026, “Unity in diversity”, 17–19 giugno 2026, Jakarta, Indonesia. Accettato</span></p> 5538 </li> 5539 5540 <li class="cg-pub-item"> 5541 <span class="cg-pub-year">2026</span> 5542 <p><span class="cg-pub-authors">NOTARNICOLA, B., ASTUTO, F., DE GENNARO, S., DI CAPUA, R., ESPOSITO, B., RENZULLI, P.A., SPIZZIRRI, U.G., STASI, G.</span> “Integrating Environmental and Circularity Metrics in the Pasta Supply Chain: a Comparative Assessment of Circular and Linear Alternatives”. <span class="cg-pub-venue">2nd LUM Conference on Accounting, Banking, and Finance Research “The New Sustainability Agenda: Addressing Environmental and Social Challenges – Climate, Circularity, Biodiversity and Equity in Uncertain Times”, 4–5 giugno 2026, Bari, Italia. Accettato</span></p> 5543 </li> 5544 5545 <li class="cg-pub-item"> 5546 <span class="cg-pub-year">2026</span> 5547 <p><span class="cg-pub-authors">TRAGNONE, B.M., ARZOUMANIDIS, I., PETTI, L., SIMBOLI, A., RAGGI, A.</span> Verso transizioni circolari nella filiera vitivinicola: una sintesi sistematica delle soluzioni proposte in letteratura. <span class="cg-pub-venue">XXIII Congresso Nazionale delle Scienze Merceologiche, “Rigenerare il valore: qualità, innovazione e sostenibilità per il futuro delle organizzazioni e della società”, 14–16 settembre 2026, Catania, Italia. Inviato</span></p> 5548 </li> 5549 5550 <li class="cg-pub-item">
5551 <span class="cg-pub-year">2026</span> 5552 <p><span class="cg-pub-authors">TRAGNONE, B.M., ARZOUMANIDIS, I., PETTI, L., SIMBOLI, A., RAGGI, A.</span> Circolarità nella filiera vitivinicola: una ricognizione delle soluzioni implementate in vigneto e cantina. <span class="cg-pub-venue">XX Convegno dell’Associazione Rete Italiana LCA “LCA e metodi life cycle-based per la misurazione della sostenibilità di prodotti, servizi, organizzazioni e soluzioni circolari”, 23–25 settembre 2026, Taranto, Italia. Inviato</span></p> 5553 </li> 5554 5555 <li class="cg-pub-item"> 5556 <span class="cg-pub-year">2026</span> 5557 <p><span class="cg-pub-authors">ARZOUMANIDIS, I., TRAGNONE, B.M., PETTI, L., CHIUSANO, L., RAGGI A.</span> “Circular and sustainable solutions in the wine sector: a case study”. <span class="cg-pub-venue">32nd Annual Conference of the International Sustainable Development Research Society (ISDRS), “Transforming Global Challenges into Sustainable Opportunities: Collaborations and Partnerships across the globe”, 7–11 luglio, Victoria, Brasile. Inviato</span></p> 5558 </li> 5559 5560 </ul> 5561 5562 </div> 5563 5564 <!-- FOOTER --> 5565 <footer class="cg-pub-footer"> 5566 <div class="cg-pub-footer-logos"> 5567 <img src="/images/logo-circulagris.png" alt="CIRCULAGRIS" style="height: 50px; filter: brightness(0) invert(1);" /> 5568 </div> 5569 <div class="cg-pub-footer-logos" style="margin-top: 16px;"> 5570 <img src="/images/footer-eu-white.png" alt="Finanziato dall'Unione europea - NextGenerationEU" style="height:56px;" /> 5571 <img src="/images/footer-mur-white.png" alt="Ministero dell'Università e della Ricerca" style="height:42px;" /> 5572 <img src="/images/footer-italiadomani-white.png" alt="Italia Domani - PNRR" style="height:72px;" /> 5573 <img src="/images/logo-uda.png" alt="UdA" style="height:80px;" /> 5574 <img src="/images/logo-unime-white.png" alt="UNIME" style="height:76px;" /> 5575 <img src="/images/logo-uniba.png" alt="UNIBA" style="height:80px;" /> 5576 </div> 5577 <p style="margin-top: 20px;">© 2024 CIRCULAGRIS — PRIN 2022 | <a href="https://www.unich.it" target="_blank" style="color:rgba(255,255,255,0.7);text-decoration:none;">Università degli Studi "G. d'Annunzio" Chieti-Pescara</a></p> 5578 <div style="max-width:800px;margin:16px auto 0;font-size:0.72rem;color:rgba(255,255,255,0.35);line-height:1.6;"> 5579 Progetto di ricerca "Towards circular and sustainable agri-food systems: metrics for assessment (CIRCULAGRIS)" PRIN2022 (Progetti di Ricerca di Interesse Nazionale) finanziato dall'Unione Europea - Next Generation EU, Missione 4, Componente 2, CUP D53D23011220006. 5580 </div> 5581 <div style="margin-top: 16px; font-size: 0.72rem; color: rgba(255,255,255,0.5);"> 5582 <a href="https://www.sitiwebshop.it/?utm_source=sito-cliente&utm_medium=circulagris-universita-ch" target="_blank" rel="noopener noreferrer" style="color: rgba(255,255,255,0.8); text-decoration: underline;">Powered by Webshop Human AI Automation</a> 5583 </div> 5584 </footer> 5585 5586</div> 5587`}})),k2=()=>(x.useEffect(()=>{function e(){const t=document.querySelector(".cg-ws-inst-bar"),i=document.querySelector(".cg-ws-nav");t&&i&&(i.style.top=t.offsetHeight+"px")}return requestAnimationFrame(e),setTimeout(e,100),setTimeout(e,500),window.addEventListener("resize",e),window.addEventListener("load",e),()=>{window.removeEventListener("resize",e),window.removeEventListener("load",e)}},[]),I.jsx("div",{dangerouslySetInnerHTML:{__html:` 5588<style> 5589.cg-ws-root *, .cg-ws-root *::before, .cg-ws-root *::after { margin: 0; padding: 0; box-sizing: border-box; } 5590.cg-ws-root { 5591 font-family: Calibri, 'Segoe UI', sans-serif; 5592 color: #3a3a4a; line-height: 1.6; background: #FAF8F2; 5593 min-height: 100vh; 5594} 5595.cg-ws-root img { max-width: 100%; } 5596 5597/* âââ INSTITUTIONAL BAR âââ */ 5598.cg-ws-inst-bar { 5599 position: fixed; top: 0; left: 0; right: 0; z-index: 101; 5600 background: #2A65AF; 5601 display: flex; align-items: center; justify-content: center; 5602 gap: 28px; padding: 14px 40px; 5603 border-bottom: 1px solid rgba(0,0,0,0.08); 5604 flex-wrap: wrap; 5605} 5606.cg-ws-inst-bar img { height: 64px; object-fit: contain; flex-shrink: 0; } 5607.cg-ws-inst-bar .cg-inst-divider { 5608 width: 1px; height: 48px; background: rgba(255,255,255,0.3); flex-shrink: 0; 5609} 5610 5611/* âââ NAV âââ */ 5612.cg-ws-nav { 5613 position: fixed; top: 92px; left: 0; right: 0; z-index: 100; 5614 background: rgba(255,255,255,0.92); 5615 backdrop-filter: blur(16px); 5616 padding: 18px 60px; 5617 display: flex; align-items: center; justify-content: space-between; 5618 border-bottom: 1px solid rgba(0,0,0,0.06); 5619 box-shadow: 0 2px 20px rgba(0,0,0,0.04); 5620} 5621.cg-ws-nav-logo { display: flex; align-items: center; } 5622.cg-ws-nav-logo img { height: 56px; object-fit: contain; margin-right: 16px; } 5623.cg-ws-nav-links { display: flex; gap: 32px; list-style: none; } 5624.cg-ws-nav-links a { 5625 color: #555; text-decoration: none; font-size: 0.82rem; 5626 font-weight: 600; letter-spacing: 1.5px; text-transform: uppercase; 5627 transition: color 0.3s; position: relative; cursor: pointer; 5628} 5629.cg-ws-nav-links a:hover { color: #8B7535; } 5630.cg-ws-nav-links a::after {
5631 content:''; position: absolute; bottom: -6px; left: 0; width: 0; height: 2px; 5632 background: #8B7535; transition: width 0.3s; 5633} 5634.cg-ws-nav-links a:hover::after { width: 100%; } 5635.cg-ws-nav-links a.active { color: #8B7535; } 5636.cg-ws-nav-links a.active::after { width: 100%; } 5637 5638/* âââ BURGER âââ */ 5639.cg-ws-burger { 5640 display: none; flex-direction: column; gap: 5px; cursor: pointer; 5641 padding: 8px; z-index: 200; 5642} 5643.cg-ws-burger span { 5644 display: block; width: 24px; height: 2px; background: #3a3a4a; 5645 transition: all 0.3s; border-radius: 2px; 5646} 5647.cg-ws-mobile-menu { 5648 display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; 5649 background: #FAF8F2; z-index: 190; 5650 flex-direction: column; align-items: center; justify-content: center; 5651 gap: 24px; list-style: none; overflow: hidden; 5652} 5653.cg-ws-mobile-menu.open { display: flex; } 5654.cg-ws-mobile-menu a { 5655 color: #3a3a4a; text-decoration: none; font-size: 1.1rem; 5656 font-weight: 700; letter-spacing: 2px; text-transform: uppercase; 5657 font-family: Calibri, 'Segoe UI', sans-serif; cursor: pointer; 5658 transition: color 0.3s; 5659} 5660.cg-ws-mobile-menu a:hover { color: #8B7535; } 5661.cg-ws-mobile-close { 5662 position: absolute; top: 20px; right: 20px; 5663 width: 40px; height: 40px; cursor: pointer; 5664 display: flex; align-items: center; justify-content: center; 5665 background: none; border: none; z-index: 200; 5666} 5667.cg-ws-mobile-close::before, .cg-ws-mobile-close::after { 5668 content: ''; position: absolute; 5669 width: 24px; height: 2px; background: #3a3a4a; border-radius: 2px; 5670} 5671.cg-ws-mobile-close::before { transform: rotate(45deg); } 5672.cg-ws-mobile-close::after { transform: rotate(-45deg); } 5673 5674/* âââ HEADER âââ */ 5675.cg-ws-header { 5676 background: #2A65AF; 5677 padding: 200px 60px 60px; text-align: center; 5678} 5679.cg-ws-header h1 { 5680 font-family: Calibri, 'Segoe UI', sans-serif; 5681 font-size: clamp(1.8rem, 3vw, 2.8rem); font-weight: 800; 5682 color: #fff; text-transform: uppercase; letter-spacing: 2px; margin-bottom: 12px; 5683} 5684.cg-ws-header p { 5685 font-size: 1rem; color: rgba(255,255,255,0.7); max-width: 650px; margin: 0 auto; 5686} 5687 5688/* âââ CONTENT âââ */ 5689.cg-ws-section { 5690 max-width: 1100px; margin: 0 auto; padding: 60px 40px; 5691} 5692 5693/* âââ WORKSHOP CARD âââ */ 5694.cg-ws-card { 5695 background: #fff; border-radius: 16px; overflow: hidden; 5696 border: 1px solid rgba(0,0,0,0.06); 5697 margin-bottom: 48px; 5698 box-shadow: 0 4px 24px rgba(0,0,0,0.05); 5699 transition: all 0.3s; 5700} 5701.cg-ws-card:hover { box-shadow: 0 8px 32px rgba(0,0,0,0.08); } 5702.cg-ws-card-top { 5703 display: flex; gap: 0; 5704} 5705.cg-ws-card-poster { 5706 flex: 0 0 380px; max-width: 380px; 5707 background: #f5f3ed; display: flex; flex-direction: column; gap: 0; 5708 align-self: stretch; 5709} 5710.cg-ws-card-poster img { 5711 width: 100%; height: 100%; object-fit: cover; display: block; 5712} 5713.cg-ws-card-body { 5714 flex: 1; padding: 32px 36px; 5715} 5716.cg-ws-card-uni { 5717 display: flex; align-items: center; gap: 12px; margin-bottom: 16px; 5718} 5719.cg-ws-card-uni img { height: 40px; border-radius: 50%; } 5720.cg-ws-card-uni span { 5721 font-size: 0.78rem; color: #8B7535; font-weight: 700; 5722 letter-spacing: 1px; text-transform: uppercase; 5723} 5724.cg-ws-card-title { 5725 font-size: 1.2rem; font-weight: 800; color: #1a1a2e; 5726 line-height: 1.4; margin-bottom: 12px; 5727} 5728.cg-ws-card-meta { 5729 display: flex; flex-wrap: wrap; gap: 16px; margin-bottom: 16px; 5730} 5731.cg-ws-card-meta-item { 5732 display: flex; align-items: center; gap: 6px; 5733 font-size: 0.82rem; color: #777; font-weight: 600; 5734} 5735.cg-ws-card-meta-item svg { width: 16px; height: 16px; color: #8B7535; } 5736.cg-ws-card-desc { 5737 font-size: 0.88rem; color: #555; line-height: 1.7; 5738} 5739.cg-ws-card-divider { 5740 width: 40px; height: 3px; background: linear-gradient(90deg, #8B7535, #8E4585); 5741 margin: 16px 0; border-radius: 2px; 5742} 5743.cg-ws-card-badge { 5744 display: inline-block; background: #8B7535; color: #fff; 5745 font-size: 0.7rem; font-weight: 700; padding: 3px 12px; 5746 border-radius: 20px; letter-spacing: 0.5px; text-transform: uppercase; 5747 margin-bottom: 12px; 5748} 5749 5750/* âââ DOWNLOAD BTN âââ */ 5751.cg-ws-download-btn { 5752 display: inline-flex; align-items: center; gap: 8px; 5753 margin-top: 20px; padding: 12px 24px; 5754 background: #8B7535; color: #fff; 5755 font-weight: 700; font-size: 0.82rem; 5756 border-radius: 6px; text-decoration: none; 5757 letter-spacing: 1px; text-transform: uppercase; 5758 transition: all 0.3s; border: none; cursor: pointer; 5759} 5760.cg-ws-download-btn:hover { background: #756228; transform: translateY(-2px); box-shadow: 0 8px 20px rgba(139,117,53,0.25); } 5761.cg-ws-download-btn svg { width: 18px; height: 18px; } 5762 5763/* âââ PROGRAM âââ */ 5764.cg-ws-program { margin-top: 20px; } 5765.cg-ws-program-title { 5766 font-size: 0.82rem; font-weight: 700; color: #8B7535; 5767 letter-spacing: 1.5px; text-transform: uppercase; margin-bottom: 16px; 5768} 5769.cg-ws-program-item { 5770 display: flex; gap: 16px; padding: 10px 0; 5771 border-bottom: 1px solid rgba(0,0,0,0.04); 5772} 5773.cg-ws-program-time { 5774 flex-shrink: 0; width: 60px; 5775 font-size: 0.82rem; font-weight: 700; color: #8B7535; 5776} 5777.cg-ws-program-content { flex: 1; } 5778.cg-ws-program-content strong { 5779 display: block; font-size: 0.85rem; color: #1a1a2e; margin-bottom: 2px; 5780} 5781.cg-ws-program-content span { 5782 font-size: 0.8rem; color: #777; line-height: 1.5; 5783} 5784 5785/* âââ FOOTER âââ */ 5786.cg-ws-footer { 5787 background: #2A65AF; color: rgba(255,255,255,0.6); 5788 padding: 40px 60px; text-align: center; font-size: 0.8rem; 5789} 5790.cg-ws-footer-logos { 5791 display: flex; align-items: center; justify-content: center; 5792 gap: 24px; margin-bottom: 20px; flex-wrap: wrap; 5793} 5794.cg-ws-footer-logos img { height: 40px; object-fit: contain; } 5795 5796@media (max-width: 900px) { 5797 .cg-ws-hide-mobile { display: none !important; } 5798 .cg-ws-nav-links { display: none; } 5799 .cg-ws-burger { display: flex; } 5800 .cg-ws-inst-bar { padding: 10px 20px; gap: 14px; flex-wrap: wrap; } 5801 .cg-ws-inst-bar img { height: 44px; } 5802 .cg-ws-inst-bar .cg-inst-divider { height: 32px; } 5803 .cg-ws-card-top { flex-direction: column; } 5804 .cg-ws-card-poster { flex: none; max-width: 100%; max-height: 400px; } 5805} 5806@media (max-width: 640px) { 5807 .cg-ws-header { padding: 220px 10px 40px; } 5808 .cg-ws-section { padding: 40px 10px; } 5809 .cg-ws-inst-bar { padding: 8px 6px; gap: 8px; justify-content: space-between; flex-wrap: nowrap; } 5810 .cg-ws-inst-bar img { height: 32px !important; flex-shrink: 1; min-width: 0; object-fit: contain; } 5811 .cg-ws-inst-bar .cg-logo-italiadomani { height: 58px !important; } 5812 .cg-ws-inst-bar .cg-inst-divider { display: flex; height: 28px; background: rgba(255,255,255,0.3); width: 1px; flex-shrink: 0; } 5813 .cg-ws-nav { top: auto; padding: 12px 10px; } 5814 .cg-ws-card-body { padding: 20px 10px; text-align: center; } 5815 .cg-ws-card-title { font-size: 1rem; text-align: center; } 5816 .cg-ws-card-desc { font-size: 0.82rem; text-align: center; } 5817 .cg-ws-card-meta { justify-content: center; } 5818 .cg-ws-card-uni { justify-content: center; text-align: center; }
5819 .cg-ws-card-divider { margin-left: auto; margin-right: auto; } 5820 .cg-ws-download-btn { width: 100%; justify-content: center; } 5821 .cg-ws-footer { padding: 30px 10px; } 5822 .cg-ws-footer-logos { gap: 12px; } 5823 .cg-ws-footer-logos img { height: 32px; } 5824} 5825</style> 5826 5827<div class="cg-ws-root"> 5828 5829 <!-- INSTITUTIONAL BAR --> 5830 <div class="cg-ws-inst-bar"> 5831 <img src="/images/footer-eu-white.png" alt="Finanziato dall'Unione europea - NextGenerationEU" style="height:56px;" /> 5832 <div class="cg-inst-divider"></div> 5833 <img src="/images/footer-mur-white.png" alt="MUR" style="height:42px;" /> 5834 <div class="cg-inst-divider"></div> 5835 <img src="/images/footer-italiadomani-white.png" alt="Italia Domani" style="height:72px;" class="cg-logo-italiadomani" /> 5836 <div class="cg-inst-divider cg-ws-hide-mobile"></div> 5837 <img src="/images/logo-uda.png" alt="UdA" style="height:80px;" class="cg-ws-hide-mobile" /> 5838 <img src="/images/logo-unime-white.png" alt="UNIME" style="height:76px;" class="cg-ws-hide-mobile" /> 5839 <img src="/images/logo-uniba.png" alt="UNIBA" style="height:80px;" class="cg-ws-hide-mobile" /> 5840 </div> 5841 5842 <!-- NAV --> 5843 <nav class="cg-ws-nav"> 5844 <a class="cg-ws-nav-logo" href="https://www.circulagris.com/home-ita/" target="_top"><img src="/images/logo-circulagris.png" alt="CIRCULAGRIS" /></a> 5845 <ul class="cg-ws-nav-links"> 5846 <li><a href="https://www.circulagris.com/home-ita/" target="_top">Home</a></li> 5847 <li><a href="https://www.circulagris.com/ricercatori/" target="_top">Ricercatori</a></li> 5848 <li><a href="https://www.circulagris.com/conferenze/" target="_top">Convegni</a></li> 5849 <li><a href="https://www.circulagris.com/workshops-ita/" target="_top" class="active">Workshop</a></li> 5850 <li><a href="https://www.circulagris.com/pubblicazioni/" target="_top">Pubblicazioni</a></li> 5851 <li class="cg-lang-switch"><a href="https://www.circulagris.com/workshops/" target="_top" style="background:#8B7535;color:#fff !important;padding:6px 14px;border-radius:20px;font-weight:700;cursor:pointer;">EN</a></li> 5852 </ul> 5853 <div class="cg-ws-burger" onclick="(function(){var m=document.getElementById('cgWsMobileMenu');m.classList.toggle('open')})()"> 5854 <span></span><span></span><span></span> 5855 </div> 5856 </nav> 5857 5858 <!-- MOBILE MENU --> 5859 <ul class="cg-ws-mobile-menu" id="cgWsMobileMenu"> 5860 <button class="cg-ws-mobile-close" onclick="document.getElementById('cgWsMobileMenu').classList.remove('open')" aria-label="Chiudi"></button> 5861 <li><a href="https://www.circulagris.com/home-ita/" target="_top">Home</a></li> 5862 <li><a href="https://www.circulagris.com/ricercatori/" target="_top">Ricercatori</a></li> 5863 <li><a href="https://www.circulagris.com/conferenze/" target="_top">Convegni</a></li> 5864 <li><a href="https://www.circulagris.com/workshops-ita/" target="_top">Workshop</a></li> 5865 <li><a href="https://www.circulagris.com/pubblicazioni/" target="_top">Pubblicazioni</a></li> 5866 <li class="cg-lang-switch"><a href="https://www.circulagris.com/workshops/" target="_top" style="background:#8B7535;color:#fff !important;padding:6px 14px;border-radius:20px;font-weight:700;cursor:pointer;">EN</a></li> 5867 </ul> 5868 5869 <div class="cg-ws-header"> 5870 <h1>Workshop</h1> 5871 <p>Workshop organizzati nell'ambito del progetto CIRCULAGRIS per promuovere i risultati della ricerca e il coinvolgimento degli stakeholder.</p> 5872 </div> 5873 5874 <div class="cg-ws-section"> 5875 5876 <!-- WORKSHOP: PESCARA (Conclusivo) --> 5877 <div class="cg-ws-card"> 5878 <div class="cg-ws-card-top"> 5879 <div class="cg-ws-card-poster"> 5880 <img src="/images/workshop-pe-poster.jpg" alt="Locandina Workshop Conclusivo Pescara" /> 5881 </div> 5882 <div class="cg-ws-card-body"> 5883 <div class="cg-ws-card-uni"> 5884 <img src="/images/logo-uda.png" alt="UdA" /> 5885 <span>Università degli Studi "G. d'Annunzio" Chieti-Pescara</span> 5886 </div> 5887 <span class="cg-ws-card-badge">Workshop Conclusivo</span> 5888 <div class="cg-ws-card-title">Sistemi Agro-Alimentari Circolari e Sostenibili â Workshop Conclusivo Progetto CIRCULAGRIS</div> 5889 <div style="font-size: 0.95rem; color: #666; font-style: italic; margin-bottom: 12px;">Con evidenze e riflessioni su vitivinicolo</div> 5890 <div class="cg-ws-card-meta"> 5891 <div class="cg-ws-card-meta-item"> 5892 <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M6.75 3v2.25M17.25 3v2.25M3 18.75V7.5a2.25 2.25 0 012.25-2.25h13.5A2.25 2.25 0 0121 7.5v11.25m-18 0A2.25 2.25 0 005.25 21h13.5A2.25 2.25 0 0021 18.75m-18 0v-7.5A2.25 2.25 0 015.25 9h13.5A2.25 2.25 0 0121 11.25v7.5" /></svg> 5893 12 febbraio 2026 5894 </div> 5895 <div class="cg-ws-card-meta-item"> 5896 <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M12 6v6h4.5m4.5 0a9 9 0 11-18 0 9 9 0 0118 0z" /></svg> 5897 9:00 â 13:00 5898 </div> 5899 <div class="cg-ws-card-meta-item"> 5900 <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M15 10.5a3 3 0 11-6 0 3 3 0 016 0z" /><path stroke-linecap="round" stroke-linejoin="round" d="M19.5 10.5c0 7.142-7.5 11.25-7.5 11.25S4.5 17.642 4.5 10.5a7.5 7.5 0 1115 0z" /></svg> 5901 Aula De Tommaso, Viale Pindaro 42, Pescara 5902 </div> 5903 </div>
5904 <div class="cg-ws-card-divider"></div> 5905 <p class="cg-ws-card-desc"> 5906 L'evento si è svolto in modalità ibrida, consentendo la partecipazione sia in presenza sia da remoto. Il workshop ha coinvolto imprese, associazioni di categoria e stakeholder del settore vitivinicolo, registrando una significativa partecipazione di studenti iscritti ai corsi di studio dell'Ateneo. Sono stati presentati anche i risultati finali del progetto. 5907 </p> 5908 </div> 5909 </div> 5910 </div> 5911 5912 <!-- WORKSHOP: UNIBA Taranto --> 5913 <div class="cg-ws-card"> 5914 <div class="cg-ws-card-top"> 5915 <div class="cg-ws-card-poster"> 5916 <img src="/images/workshop-uniba-taranto.jpg" alt="Locandina Workshop UNIBA Taranto" /> 5917 </div> 5918 <div class="cg-ws-card-body"> 5919 <div class="cg-ws-card-uni"> 5920 <img src="/images/logo-uniba-color.png" alt="UNIBA" /> 5921 <span>Università degli Studi di Bari Aldo Moro</span> 5922 </div> 5923 <span class="cg-ws-card-badge">Workshop</span> 5924 <div class="cg-ws-card-title">Economia circolare nel settore agroalimentare: migliori pratiche e metriche di sostenibilità </div> 5925 <div class="cg-ws-card-meta"> 5926 <div class="cg-ws-card-meta-item"> 5927 <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M6.75 3v2.25M17.25 3v2.25M3 18.75V7.5a2.25 2.25 0 012.25-2.25h13.5A2.25 2.25 0 0121 7.5v11.25m-18 0A2.25 2.25 0 005.25 21h13.5A2.25 2.25 0 0021 18.75m-18 0v-7.5A2.25 2.25 0 015.25 9h13.5A2.25 2.25 0 0121 11.25v7.5" /></svg> 5928 30 gennaio 2026 5929 </div> 5930 <div class="cg-ws-card-meta-item"> 5931 <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M15 10.5a3 3 0 11-6 0 3 3 0 016 0z" /><path stroke-linecap="round" stroke-linejoin="round" d="M19.5 10.5c0 7.142-7.5 11.25-7.5 11.25S4.5 17.642 4.5 10.5a7.5 7.5 0 1115 0z" /></svg> 5932 Dipartimento Jonico, Taranto 5933 </div> 5934 </div> 5935 <div class="cg-ws-card-divider"></div> 5936 <p class="cg-ws-card-desc"> 5937 Il workshop ha affrontato i principali temi dell'economia circolare nel settore agroalimentare, con particolare attenzione alle metriche, agli indicatori e agli strumenti per la valutazione della sostenibilità e della circolarità . Nella sessione di apertura sono stati presentati i risultati del progetto CIRCULAGRIS, incentrato sull'analisi e sulla promozione di modelli circolari nelle filiere della pasta e del pane, del vino e dell'olio d'oliva. 5938 </p> 5939 <br/> 5940 <p class="cg-ws-card-desc"> 5941 Un contributo specifico è stato offerto dal Ministero dell'Ambiente e della Sicurezza Energetica (MASE), che ha presentato il "Made Green in Italy" finalizzato alla certificazione e alla valutazione delle prestazioni ambientali dei prodotti. Il workshop si è concluso con una tavola rotonda che ha coinvolto rappresentanti del mondo imprenditoriale, favorendo il dialogo tra università e imprese sulle buone pratiche in materia di circolarità e sostenibilità . 5942 </p> 5943 </div> 5944 </div> 5945 </div> 5946 5947 <!-- WORKSHOP: UNIME Messina --> 5948 <div class="cg-ws-card"> 5949 <div class="cg-ws-card-top"> 5950 <div class="cg-ws-card-poster"> 5951 <img src="/images/workshops/locandina-messina.jpg" alt="Locandina Workshop UNIME Messina" /> 5952 </div> 5953 <div class="cg-ws-card-body"> 5954 <div class="cg-ws-card-uni"> 5955 <img src="/images/logo-unime-white.png" alt="UNIME" style="filter: none; background: #fff; border-radius: 50%; padding: 4px; height: 40px;" /> 5956 <span>Università degli Studi di Messina</span> 5957 </div> 5958 <span class="cg-ws-card-badge">Workshop</span> 5959 <div class="cg-ws-card-title">Circular Economy in the Agri-food Sector: Best Practices and Sustainability Metrics</div> 5960 <div class="cg-ws-card-meta"> 5961 <div class="cg-ws-card-meta-item"> 5962 <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M6.75 3v2.25M17.25 3v2.25M3 18.75V7.5a2.25 2.25 0 012.25-2.25h13.5A2.25 2.25 0 0121 7.5v11.25m-18 0A2.25 2.25 0 005.25 21h13.5A2.25 2.25 0 0021 18.75m-18 0v-7.5A2.25 2.25 0 015.25 9h13.5A2.25 2.25 0 0121 11.25v7.5" /></svg> 5963 10 dicembre 2025 5964 </div> 5965 <div class="cg-ws-card-meta-item"> 5966 <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M12 6v6h4.5m4.5 0a9 9 0 11-18 0 9 9 0 0118 0z" /></svg> 5967 9:00 â 13:00 5968 </div> 5969 <div class="cg-ws-card-meta-item"> 5970 <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M15 10.5a3 3 0 11-6 0 3 3 0 016 0z" /><path stroke-linecap="round" stroke-linejoin="round" d="M19.5 10.5c0 7.142-7.5 11.25-7.5 11.25S4.5 17.642 4.5 10.5a7.5 7.5 0 1115 0z" /></svg> 5971 Aula Magna, Dipartimento di Economia, Università di Messina 5972 </div> 5973 </div>
5974 <div class="cg-ws-card-divider"></div> 5975 <p class="cg-ws-card-desc"> 5976 L'Aula Magna del Dipartimento di Economia dell'Università degli Studi di Messina ha ospitato il workshop "Circular Economy in the Agri-food Sector: Best Practices and Sustainability Metrics", organizzato nell'ambito del progetto PRIN CIRCULAGRIS. 5977 </p> 5978 <br/> 5979 <p class="cg-ws-card-desc"> 5980 Dopo i saluti istituzionali della Rettrice, Prof.ssa Giovanna Spatari, del Prof. Carlo Vermiglio (in rappresentanza del Direttore del Dipartimento di Economia, Prof. Gustavo Barresi) e del Presidente di Sicindustria Messina, Dott. Pietro Franza, hanno preso parte ai lavori esperti accademici e rappresentanti del mondo imprenditoriale. Le conclusioni sono state affidate alla Prof.ssa Roberta Salomone, Delegata del Rettore alla Sostenibilità e Coordinatrice scientifica dell'Unità di Ricerca UniME del progetto CIRCULAGRIS. 5981 </p> 5982 <br/> 5983 <p class="cg-ws-card-desc"> 5984 L'evento ha rappresentato un'importante occasione di confronto sui modelli circolari e sostenibili nel settore agroalimentare, con particolare attenzione alle metriche di valutazione e alle esperienze innovative. 5985 </p> 5986 </div> 5987 </div> 5988 </div> 5989 5990 </div> 5991 5992 <!-- FOOTER --> 5993 <footer class="cg-ws-footer"> 5994 <div class="cg-ws-footer-logos"> 5995 <img src="/images/logo-circulagris.png" alt="CIRCULAGRIS" style="height: 50px; filter: brightness(0) invert(1);" /> 5996 </div> 5997 <div class="cg-ws-footer-logos" style="margin-top: 16px;"> 5998 <img src="/images/footer-eu-white.png" alt="Finanziato dall'Unione europea - NextGenerationEU" style="height:56px;" /> 5999 <img src="/images/footer-mur-white.png" alt="MUR" style="height:42px;" /> 6000 <img src="/images/footer-italiadomani-white.png" alt="Italia Domani" style="height:72px;" /> 6001 <img src="/images/logo-uda.png" alt="UdA" style="height:80px;" /> 6002 <img src="/images/logo-unime-white.png" alt="UNIME" style="height:76px;" /> 6003 <img src="/images/logo-uniba.png" alt="UNIBA" style="height:80px;" /> 6004 </div> 6005 <p style="margin-top: 20px;">© 2024 CIRCULAGRIS — PRIN 2022 | <a href="https://www.unich.it" target="_blank" style="color:rgba(255,255,255,0.7);text-decoration:none;">Università degli Studi "G. d'Annunzio" Chieti-Pescara</a></p> 6006 <div style="max-width:800px;margin:16px auto 0;font-size:0.72rem;color:rgba(255,255,255,0.35);line-height:1.6;"> 6007 Progetto di ricerca "Towards circular and sustainable agri-food systems: metrics for assessment (CIRCULAGRIS)" PRIN2022 (Progetti di Ricerca di Interesse Nazionale) finanziato dall'Unione Europea - Next Generation EU, Missione 4, Componente 2, CUP D53D23011220006. 6008 </div> 6009 <div style="margin-top: 16px; font-size: 0.72rem; color: rgba(255,255,255,0.5);"> 6010 <a href="https://www.sitiwebshop.it/?utm_source=sito-cliente&utm_medium=circulagris-universita-ch" target="_blank" rel="noopener noreferrer" style="color: rgba(255,255,255,0.8); text-decoration: underline;">Powered by Webshop Human AI Automation</a> 6011 </div> 6012 </footer> 6013 6014</div> 6015`}})),E2=()=>{const e=ud();return x.useEffect(()=>{console.error("404 Error: User attempted to access non-existent route:",e.pathname)},[e.pathname]),I.jsx("div",{className:"flex min-h-screen items-center justify-center bg-muted",children:I.jsxs("div",{className:"text-center",children:[I.jsx("h1",{className:"mb-4 text-4xl font-bold",children:"404"}),I.jsx("p",{className:"mb-4 text-xl text-muted-foreground",children:"Oops! Page not found"}),I.jsx("a",{href:"/",className:"text-primary underline hover:text-primary/90",children:"Return to Home"})]})})},R2=new w1,z2=()=>I.jsx(C1,{client:R2,children:I.jsxs(Xw,{children:[I.jsx(My,{}),I.jsx(pb,{}),I.jsx(h2,{children:I.jsxs(g2,{children:[I.jsx(et,{path:"/",element:I.jsx(v2,{})}),I.jsx(et,{path:"/researchers",element:I.jsx(x2,{})}),I.jsx(et,{path:"/conferences",element:I.jsx(y2,{})}),I.jsx(et,{path:"/publications",element:I.jsx(b2,{})}),I.jsx(et,{path:"/workshops",element:I.jsx(w2,{})}),I.jsx(et,{path:"/it",element:I.jsx(S2,{})}),I.jsx(et,{path:"/it/researchers",element:I.jsx(C2,{})}),I.jsx(et,{path:"/it/conferences",element:I.jsx(A2,{})}),I.jsx(et,{path:"/it/publications",element:I.jsx(I2,{})}),I.jsx(et,{path:"/it/workshops",element:I.jsx(k2,{})}),I.jsx(et,{path:"*",element:I.jsx(E2,{})})]})})]})});Of(document.getElementById("root")).render(I.jsx(z2,{}));
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.