(function(){const E=document.createElement("link").relList;if(E&&E.supports&&E.supports("modulepreload"))return;for(const U of document.querySelectorAll('link[rel="modulepreload"]'))s(U);new MutationObserver(U=>{for(const H of U)if(H.type==="childList")for(const Y of H.addedNodes)Y.tagName==="LINK"&&Y.rel==="modulepreload"&&s(Y)}).observe(document,{childList:!0,subtree:!0});function A(U){const H={};return U.integrity&&(H.integrity=U.integrity),U.referrerPolicy&&(H.referrerPolicy=U.referrerPolicy),U.crossOrigin==="use-credentials"?H.credentials="include":U.crossOrigin==="anonymous"?H.credentials="omit":H.credentials="same-origin",H}function s(U){if(U.ep)return;U.ep=!0;const H=A(U);fetch(U.href,H)}})();var gf={exports:{}},_n={};/** * @license React * react-jsx-runtime.production.js * * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */var Ed;function bh(){if(Ed)return _n;Ed=1;var r=Symbol.for("react.transitional.element"),E=Symbol.for("react.fragment");function A(s,U,H){var Y=null;if(H!==void 0&&(Y=""+H),U.key!==void 0&&(Y=""+U.key),"key"in U){H={};for(var $ in U)$!=="key"&&(H[$]=U[$])}else H=U;return U=H.ref,{$$typeof:r,type:s,key:Y,ref:U!==void 0?U:null,props:H}}return _n.Fragment=E,_n.jsx=A,_n.jsxs=A,_n}var _d;function ph(){return _d||(_d=1,gf.exports=bh()),gf.exports}var f=ph(),bf={exports:{}},V={};/** * @license React * react.production.js * * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */var Md;function xh(){if(Md)return V;Md=1;var r=Symbol.for("react.transitional.element"),E=Symbol.for("react.portal"),A=Symbol.for("react.fragment"),s=Symbol.for("react.strict_mode"),U=Symbol.for("react.profiler"),H=Symbol.for("react.consumer"),Y=Symbol.for("react.context"),$=Symbol.for("react.forward_ref"),M=Symbol.for("react.suspense"),p=Symbol.for("react.memo"),q=Symbol.for("react.lazy"),_=Symbol.for("react.activity"),X=Symbol.iterator;function Z(m){return m===null||typeof m!="object"?null:(m=X&&m[X]||m["@@iterator"],typeof m=="function"?m:null)}var tl={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Nl=Object.assign,Sl={};function _l(m,T,O){this.props=m,this.context=T,this.refs=Sl,this.updater=O||tl}_l.prototype.isReactComponent={},_l.prototype.setState=function(m,T){if(typeof m!="object"&&typeof m!="function"&&m!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,m,T,"setState")},_l.prototype.forceUpdate=function(m){this.updater.enqueueForceUpdate(this,m,"forceUpdate")};function Vl(){}Vl.prototype=_l.prototype;function yl(m,T,O){this.props=m,this.context=T,this.refs=Sl,this.updater=O||tl}var Ml=yl.prototype=new Vl;Ml.constructor=yl,Nl(Ml,_l.prototype),Ml.isPureReactComponent=!0;var Kl=Array.isArray;function Rl(){}var W={H:null,A:null,T:null,S:null},Dl=Object.prototype.hasOwnProperty;function Il(m,T,O){var R=O.ref;return{$$typeof:r,type:m,key:T,ref:R!==void 0?R:null,props:O}}function Et(m,T){return Il(m.type,T,m.props)}function z(m){return typeof m=="object"&&m!==null&&m.$$typeof===r}function G(m){var T={"=":"=0",":":"=2"};return"$"+m.replace(/[=:]/g,function(O){return T[O]})}var kl=/\/+/g;function it(m,T){return typeof m=="object"&&m!==null&&m.key!=null?G(""+m.key):T.toString(36)}function $l(m){switch(m.status){case"fulfilled":return m.value;case"rejected":throw m.reason;default:switch(typeof m.status=="string"?m.then(Rl,Rl):(m.status="pending",m.then(function(T){m.status==="pending"&&(m.status="fulfilled",m.value=T)},function(T){m.status==="pending"&&(m.status="rejected",m.reason=T)})),m.status){case"fulfilled":return m.value;case"rejected":throw m.reason}}throw m}function S(m,T,O,R,K){var I=typeof m;(I==="undefined"||I==="boolean")&&(m=null);var fl=!1;if(m===null)fl=!0;else switch(I){case"bigint":case"string":case"number":fl=!0;break;case"object":switch(m.$$typeof){case r:case E:fl=!0;break;case q:return fl=m._init,S(fl(m._payload),T,O,R,K)}}if(fl)return K=K(m),fl=R===""?"."+it(m,0):R,Kl(K)?(O="",fl!=null&&(O=fl.replace(kl,"$&/")+"/"),S(K,T,O,"",function(Ha){return Ha})):K!=null&&(z(K)&&(K=Et(K,O+(K.key==null||m&&m.key===K.key?"":(""+K.key).replace(kl,"$&/")+"/")+fl)),T.push(K)),1;fl=0;var Wl=R===""?".":R+":";if(Kl(m))for(var zl=0;zl>>1,vl=S[rl];if(0>>1;rlU(O,Q))RU(K,O)?(S[rl]=K,S[R]=Q,rl=R):(S[rl]=O,S[T]=Q,rl=T);else if(RU(K,Q))S[rl]=K,S[R]=Q,rl=R;else break l}}return D}function U(S,D){var Q=S.sortIndex-D.sortIndex;return Q!==0?Q:S.id-D.id}if(r.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var H=performance;r.unstable_now=function(){return H.now()}}else{var Y=Date,$=Y.now();r.unstable_now=function(){return Y.now()-$}}var M=[],p=[],q=1,_=null,X=3,Z=!1,tl=!1,Nl=!1,Sl=!1,_l=typeof setTimeout=="function"?setTimeout:null,Vl=typeof clearTimeout=="function"?clearTimeout:null,yl=typeof setImmediate<"u"?setImmediate:null;function Ml(S){for(var D=A(p);D!==null;){if(D.callback===null)s(p);else if(D.startTime<=S)s(p),D.sortIndex=D.expirationTime,E(M,D);else break;D=A(p)}}function Kl(S){if(Nl=!1,Ml(S),!tl)if(A(M)!==null)tl=!0,Rl||(Rl=!0,G());else{var D=A(p);D!==null&&$l(Kl,D.startTime-S)}}var Rl=!1,W=-1,Dl=5,Il=-1;function Et(){return Sl?!0:!(r.unstable_now()-IlS&&Et());){var rl=_.callback;if(typeof rl=="function"){_.callback=null,X=_.priorityLevel;var vl=rl(_.expirationTime<=S);if(S=r.unstable_now(),typeof vl=="function"){_.callback=vl,Ml(S),D=!0;break t}_===A(M)&&s(M),Ml(S)}else s(M);_=A(M)}if(_!==null)D=!0;else{var m=A(p);m!==null&&$l(Kl,m.startTime-S),D=!1}}break l}finally{_=null,X=Q,Z=!1}D=void 0}}finally{D?G():Rl=!1}}}var G;if(typeof yl=="function")G=function(){yl(z)};else if(typeof MessageChannel<"u"){var kl=new MessageChannel,it=kl.port2;kl.port1.onmessage=z,G=function(){it.postMessage(null)}}else G=function(){_l(z,0)};function $l(S,D){W=_l(function(){S(r.unstable_now())},D)}r.unstable_IdlePriority=5,r.unstable_ImmediatePriority=1,r.unstable_LowPriority=4,r.unstable_NormalPriority=3,r.unstable_Profiling=null,r.unstable_UserBlockingPriority=2,r.unstable_cancelCallback=function(S){S.callback=null},r.unstable_forceFrameRate=function(S){0>S||125rl?(S.sortIndex=Q,E(p,S),A(M)===null&&S===A(p)&&(Nl?(Vl(W),W=-1):Nl=!0,$l(Kl,Q-rl))):(S.sortIndex=vl,E(M,S),tl||Z||(tl=!0,Rl||(Rl=!0,G()))),S},r.unstable_shouldYield=Et,r.unstable_wrapCallback=function(S){var D=X;return function(){var Q=X;X=D;try{return S.apply(this,arguments)}finally{X=Q}}}})(Sf)),Sf}var Ud;function Nh(){return Ud||(Ud=1,xf.exports=Sh()),xf.exports}var Nf={exports:{}},Jl={};/** * @license React * react-dom.production.js * * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */var Cd;function jh(){if(Cd)return Jl;Cd=1;var r=jf();function E(M){var p="https://react.dev/errors/"+M;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(r)}catch(E){console.error(E)}}return r(),Nf.exports=jh(),Nf.exports}/** * @license React * react-dom-client.production.js * * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */var Rd;function zh(){if(Rd)return Mn;Rd=1;var r=Nh(),E=jf(),A=Th();function s(l){var t="https://react.dev/errors/"+l;if(1vl||(l.current=rl[vl],rl[vl]=null,vl--)}function O(l,t){vl++,rl[vl]=l.current,l.current=t}var R=m(null),K=m(null),I=m(null),fl=m(null);function Wl(l,t){switch(O(I,t),O(K,l),O(R,null),t.nodeType){case 9:case 11:l=(l=t.documentElement)&&(l=l.namespaceURI)?Wr(l):0;break;default:if(l=t.tagName,t=t.namespaceURI)t=Wr(t),l=Fr(t,l);else switch(l){case"svg":l=1;break;case"math":l=2;break;default:l=0}}T(R),O(R,l)}function zl(){T(R),T(K),T(I)}function Ha(l){l.memoizedState!==null&&O(fl,l);var t=R.current,e=Fr(t,l.type);t!==e&&(O(K,l),O(R,e))}function Un(l){K.current===l&&(T(R),T(K)),fl.current===l&&(T(fl),Tn._currentValue=Q)}var Iu,zf;function _e(l){if(Iu===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);Iu=t&&t[1]||"",zf=-1)":-1n||o[a]!==v[n]){var x=` `+o[a].replace(" at new "," at ");return l.displayName&&x.includes("")&&(x=x.replace("",l.displayName)),x}while(1<=a&&0<=n);break}}}finally{Pu=!1,Error.prepareStackTrace=e}return(e=l?l.displayName||l.name:"")?_e(e):""}function $d(l,t){switch(l.tag){case 26:case 27:case 5:return _e(l.type);case 16:return _e("Lazy");case 13:return l.child!==t&&t!==null?_e("Suspense Fallback"):_e("Suspense");case 19:return _e("SuspenseList");case 0:case 15:return li(l.type,!1);case 11:return li(l.type.render,!1);case 1:return li(l.type,!0);case 31:return _e("Activity");default:return""}}function Af(l){try{var t="",e=null;do t+=$d(l,e),e=l,l=l.return;while(l);return t}catch(a){return` Error generating stack: `+a.message+` `+a.stack}}var ti=Object.prototype.hasOwnProperty,ei=r.unstable_scheduleCallback,ai=r.unstable_cancelCallback,Wd=r.unstable_shouldYield,Fd=r.unstable_requestPaint,ct=r.unstable_now,Id=r.unstable_getCurrentPriorityLevel,Ef=r.unstable_ImmediatePriority,_f=r.unstable_UserBlockingPriority,Cn=r.unstable_NormalPriority,Pd=r.unstable_LowPriority,Mf=r.unstable_IdlePriority,lm=r.log,tm=r.unstable_setDisableYieldValue,Ra=null,ft=null;function le(l){if(typeof lm=="function"&&tm(l),ft&&typeof ft.setStrictMode=="function")try{ft.setStrictMode(Ra,l)}catch{}}var st=Math.clz32?Math.clz32:nm,em=Math.log,am=Math.LN2;function nm(l){return l>>>=0,l===0?32:31-(em(l)/am|0)|0}var Hn=256,Rn=262144,Bn=4194304;function Me(l){var t=l&42;if(t!==0)return t;switch(l&-l){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:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return l&261888;case 262144:case 524288:case 1048576:case 2097152:return l&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return l&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return l}}function qn(l,t,e){var a=l.pendingLanes;if(a===0)return 0;var n=0,u=l.suspendedLanes,i=l.pingedLanes;l=l.warmLanes;var c=a&134217727;return c!==0?(a=c&~u,a!==0?n=Me(a):(i&=c,i!==0?n=Me(i):e||(e=c&~l,e!==0&&(n=Me(e))))):(c=a&~u,c!==0?n=Me(c):i!==0?n=Me(i):e||(e=a&~l,e!==0&&(n=Me(e)))),n===0?0:t!==0&&t!==n&&(t&u)===0&&(u=n&-n,e=t&-t,u>=e||u===32&&(e&4194048)!==0)?t:n}function Ba(l,t){return(l.pendingLanes&~(l.suspendedLanes&~l.pingedLanes)&t)===0}function um(l,t){switch(l){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32: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:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Df(){var l=Bn;return Bn<<=1,(Bn&62914560)===0&&(Bn=4194304),l}function ni(l){for(var t=[],e=0;31>e;e++)t.push(l);return t}function qa(l,t){l.pendingLanes|=t,t!==268435456&&(l.suspendedLanes=0,l.pingedLanes=0,l.warmLanes=0)}function im(l,t,e,a,n,u){var i=l.pendingLanes;l.pendingLanes=e,l.suspendedLanes=0,l.pingedLanes=0,l.warmLanes=0,l.expiredLanes&=e,l.entangledLanes&=e,l.errorRecoveryDisabledLanes&=e,l.shellSuspendCounter=0;var c=l.entanglements,o=l.expirationTimes,v=l.hiddenUpdates;for(e=i&~e;0"u")return null;try{return l.activeElement||l.body}catch{return l.body}}var dm=/[\n"\\]/g;function bt(l){return l.replace(dm,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function oi(l,t,e,a,n,u,i,c){l.name="",i!=null&&typeof i!="function"&&typeof i!="symbol"&&typeof i!="boolean"?l.type=i:l.removeAttribute("type"),t!=null?i==="number"?(t===0&&l.value===""||l.value!=t)&&(l.value=""+gt(t)):l.value!==""+gt(t)&&(l.value=""+gt(t)):i!=="submit"&&i!=="reset"||l.removeAttribute("value"),t!=null?ri(l,i,gt(t)):e!=null?ri(l,i,gt(e)):a!=null&&l.removeAttribute("value"),n==null&&u!=null&&(l.defaultChecked=!!u),n!=null&&(l.checked=n&&typeof n!="function"&&typeof n!="symbol"),c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"?l.name=""+gt(c):l.removeAttribute("name")}function Xf(l,t,e,a,n,u,i,c){if(u!=null&&typeof u!="function"&&typeof u!="symbol"&&typeof u!="boolean"&&(l.type=u),t!=null||e!=null){if(!(u!=="submit"&&u!=="reset"||t!=null)){si(l);return}e=e!=null?""+gt(e):"",t=t!=null?""+gt(t):e,c||t===l.value||(l.value=t),l.defaultValue=t}a=a??n,a=typeof a!="function"&&typeof a!="symbol"&&!!a,l.checked=c?l.checked:!!a,l.defaultChecked=!!a,i!=null&&typeof i!="function"&&typeof i!="symbol"&&typeof i!="boolean"&&(l.name=i),si(l)}function ri(l,t,e){t==="number"&&Ln(l.ownerDocument)===l||l.defaultValue===""+e||(l.defaultValue=""+e)}function Ie(l,t,e,a){if(l=l.options,t){t={};for(var n=0;n"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),vi=!1;if(qt)try{var Ga={};Object.defineProperty(Ga,"passive",{get:function(){vi=!0}}),window.addEventListener("test",Ga,Ga),window.removeEventListener("test",Ga,Ga)}catch{vi=!1}var ee=null,gi=null,Qn=null;function Wf(){if(Qn)return Qn;var l,t=gi,e=t.length,a,n="value"in ee?ee.value:ee.textContent,u=n.length;for(l=0;l=Za),es=" ",as=!1;function ns(l,t){switch(l){case"keyup":return Lm.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function us(l){return l=l.detail,typeof l=="object"&&"data"in l?l.data:null}var ea=!1;function Qm(l,t){switch(l){case"compositionend":return us(t);case"keypress":return t.which!==32?null:(as=!0,es);case"textInput":return l=t.data,l===es&&as?null:l;default:return null}}function Xm(l,t){if(ea)return l==="compositionend"||!Ni&&ns(l,t)?(l=Wf(),Qn=gi=ee=null,ea=!1,l):null;switch(l){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:e,offset:t-l};l=a}l:{for(;e;){if(e.nextSibling){e=e.nextSibling;break l}e=e.parentNode}e=void 0}e=ms(e)}}function ys(l,t){return l&&t?l===t?!0:l&&l.nodeType===3?!1:t&&t.nodeType===3?ys(l,t.parentNode):"contains"in l?l.contains(t):l.compareDocumentPosition?!!(l.compareDocumentPosition(t)&16):!1:!1}function vs(l){l=l!=null&&l.ownerDocument!=null&&l.ownerDocument.defaultView!=null?l.ownerDocument.defaultView:window;for(var t=Ln(l.document);t instanceof l.HTMLIFrameElement;){try{var e=typeof t.contentWindow.location.href=="string"}catch{e=!1}if(e)l=t.contentWindow;else break;t=Ln(l.document)}return t}function zi(l){var t=l&&l.nodeName&&l.nodeName.toLowerCase();return t&&(t==="input"&&(l.type==="text"||l.type==="search"||l.type==="tel"||l.type==="url"||l.type==="password")||t==="textarea"||l.contentEditable==="true")}var Fm=qt&&"documentMode"in document&&11>=document.documentMode,aa=null,Ai=null,Ja=null,Ei=!1;function gs(l,t,e){var a=e.window===e?e.document:e.nodeType===9?e:e.ownerDocument;Ei||aa==null||aa!==Ln(a)||(a=aa,"selectionStart"in a&&zi(a)?a={start:a.selectionStart,end:a.selectionEnd}:(a=(a.ownerDocument&&a.ownerDocument.defaultView||window).getSelection(),a={anchorNode:a.anchorNode,anchorOffset:a.anchorOffset,focusNode:a.focusNode,focusOffset:a.focusOffset}),Ja&&ka(Ja,a)||(Ja=a,a=Ru(Ai,"onSelect"),0>=i,n-=i,Ot=1<<32-st(t)+n|e<J?(al=B,B=null):al=B.sibling;var il=g(h,B,y[J],N);if(il===null){B===null&&(B=al);break}l&&B&&il.alternate===null&&t(h,B),d=u(il,d,J),ul===null?w=il:ul.sibling=il,ul=il,B=al}if(J===y.length)return e(h,B),nl&&wt(h,J),w;if(B===null){for(;JJ?(al=B,B=null):al=B.sibling;var Te=g(h,B,il.value,N);if(Te===null){B===null&&(B=al);break}l&&B&&Te.alternate===null&&t(h,B),d=u(Te,d,J),ul===null?w=Te:ul.sibling=Te,ul=Te,B=al}if(il.done)return e(h,B),nl&&wt(h,J),w;if(B===null){for(;!il.done;J++,il=y.next())il=j(h,il.value,N),il!==null&&(d=u(il,d,J),ul===null?w=il:ul.sibling=il,ul=il);return nl&&wt(h,J),w}for(B=a(B);!il.done;J++,il=y.next())il=b(B,h,J,il.value,N),il!==null&&(l&&il.alternate!==null&&B.delete(il.key===null?J:il.key),d=u(il,d,J),ul===null?w=il:ul.sibling=il,ul=il);return l&&B.forEach(function(gh){return t(h,gh)}),nl&&wt(h,J),w}function hl(h,d,y,N){if(typeof y=="object"&&y!==null&&y.type===Nl&&y.key===null&&(y=y.props.children),typeof y=="object"&&y!==null){switch(y.$$typeof){case Z:l:{for(var w=y.key;d!==null;){if(d.key===w){if(w=y.type,w===Nl){if(d.tag===7){e(h,d.sibling),N=n(d,y.props.children),N.return=h,h=N;break l}}else if(d.elementType===w||typeof w=="object"&&w!==null&&w.$$typeof===Dl&&Le(w)===d.type){e(h,d.sibling),N=n(d,y.props),ln(N,y),N.return=h,h=N;break l}e(h,d);break}else t(h,d);d=d.sibling}y.type===Nl?(N=Re(y.props.children,h.mode,N,y.key),N.return=h,h=N):(N=In(y.type,y.key,y.props,null,h.mode,N),ln(N,y),N.return=h,h=N)}return i(h);case tl:l:{for(w=y.key;d!==null;){if(d.key===w)if(d.tag===4&&d.stateNode.containerInfo===y.containerInfo&&d.stateNode.implementation===y.implementation){e(h,d.sibling),N=n(d,y.children||[]),N.return=h,h=N;break l}else{e(h,d);break}else t(h,d);d=d.sibling}N=Hi(y,h.mode,N),N.return=h,h=N}return i(h);case Dl:return y=Le(y),hl(h,d,y,N)}if($l(y))return C(h,d,y,N);if(G(y)){if(w=G(y),typeof w!="function")throw Error(s(150));return y=w.call(y),L(h,d,y,N)}if(typeof y.then=="function")return hl(h,d,uu(y),N);if(y.$$typeof===yl)return hl(h,d,tu(h,y),N);iu(h,y)}return typeof y=="string"&&y!==""||typeof y=="number"||typeof y=="bigint"?(y=""+y,d!==null&&d.tag===6?(e(h,d.sibling),N=n(d,y),N.return=h,h=N):(e(h,d),N=Ci(y,h.mode,N),N.return=h,h=N),i(h)):e(h,d)}return function(h,d,y,N){try{Pa=0;var w=hl(h,d,y,N);return ha=null,w}catch(B){if(B===ma||B===au)throw B;var ul=rt(29,B,null,h.mode);return ul.lanes=N,ul.return=h,ul}finally{}}}var Qe=Ls(!0),Gs=Ls(!1),ce=!1;function Ki(l){l.updateQueue={baseState:l.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function ki(l,t){l=l.updateQueue,t.updateQueue===l&&(t.updateQueue={baseState:l.baseState,firstBaseUpdate:l.firstBaseUpdate,lastBaseUpdate:l.lastBaseUpdate,shared:l.shared,callbacks:null})}function fe(l){return{lane:l,tag:0,payload:null,callback:null,next:null}}function se(l,t,e){var a=l.updateQueue;if(a===null)return null;if(a=a.shared,(cl&2)!==0){var n=a.pending;return n===null?t.next=t:(t.next=n.next,n.next=t),a.pending=t,t=Fn(l),Ts(l,null,e),t}return Wn(l,a,t,e),Fn(l)}function tn(l,t,e){if(t=t.updateQueue,t!==null&&(t=t.shared,(e&4194048)!==0)){var a=t.lanes;a&=l.pendingLanes,e|=a,t.lanes=e,Uf(l,e)}}function Ji(l,t){var e=l.updateQueue,a=l.alternate;if(a!==null&&(a=a.updateQueue,e===a)){var n=null,u=null;if(e=e.firstBaseUpdate,e!==null){do{var i={lane:e.lane,tag:e.tag,payload:e.payload,callback:null,next:null};u===null?n=u=i:u=u.next=i,e=e.next}while(e!==null);u===null?n=u=t:u=u.next=t}else n=u=t;e={baseState:a.baseState,firstBaseUpdate:n,lastBaseUpdate:u,shared:a.shared,callbacks:a.callbacks},l.updateQueue=e;return}l=e.lastBaseUpdate,l===null?e.firstBaseUpdate=t:l.next=t,e.lastBaseUpdate=t}var $i=!1;function en(){if($i){var l=da;if(l!==null)throw l}}function an(l,t,e,a){$i=!1;var n=l.updateQueue;ce=!1;var u=n.firstBaseUpdate,i=n.lastBaseUpdate,c=n.shared.pending;if(c!==null){n.shared.pending=null;var o=c,v=o.next;o.next=null,i===null?u=v:i.next=v,i=o;var x=l.alternate;x!==null&&(x=x.updateQueue,c=x.lastBaseUpdate,c!==i&&(c===null?x.firstBaseUpdate=v:c.next=v,x.lastBaseUpdate=o))}if(u!==null){var j=n.baseState;i=0,x=v=o=null,c=u;do{var g=c.lane&-536870913,b=g!==c.lane;if(b?(el&g)===g:(a&g)===g){g!==0&&g===ra&&($i=!0),x!==null&&(x=x.next={lane:0,tag:c.tag,payload:c.payload,callback:null,next:null});l:{var C=l,L=c;g=t;var hl=e;switch(L.tag){case 1:if(C=L.payload,typeof C=="function"){j=C.call(hl,j,g);break l}j=C;break l;case 3:C.flags=C.flags&-65537|128;case 0:if(C=L.payload,g=typeof C=="function"?C.call(hl,j,g):C,g==null)break l;j=_({},j,g);break l;case 2:ce=!0}}g=c.callback,g!==null&&(l.flags|=64,b&&(l.flags|=8192),b=n.callbacks,b===null?n.callbacks=[g]:b.push(g))}else b={lane:g,tag:c.tag,payload:c.payload,callback:c.callback,next:null},x===null?(v=x=b,o=j):x=x.next=b,i|=g;if(c=c.next,c===null){if(c=n.shared.pending,c===null)break;b=c,c=b.next,b.next=null,n.lastBaseUpdate=b,n.shared.pending=null}}while(!0);x===null&&(o=j),n.baseState=o,n.firstBaseUpdate=v,n.lastBaseUpdate=x,u===null&&(n.shared.lanes=0),he|=i,l.lanes=i,l.memoizedState=j}}function Qs(l,t){if(typeof l!="function")throw Error(s(191,l));l.call(t)}function Xs(l,t){var e=l.callbacks;if(e!==null)for(l.callbacks=null,l=0;lu?u:8;var i=S.T,c={};S.T=c,hc(l,!1,t,e);try{var o=n(),v=S.S;if(v!==null&&v(c,o),o!==null&&typeof o=="object"&&typeof o.then=="function"){var x=i0(o,a);cn(l,t,x,vt(l))}else cn(l,t,a,vt(l))}catch(j){cn(l,t,{then:function(){},status:"rejected",reason:j},vt())}finally{D.p=u,i!==null&&c.types!==null&&(i.types=c.types),S.T=i}}function d0(){}function dc(l,t,e,a){if(l.tag!==5)throw Error(s(476));var n=No(l).queue;So(l,n,t,Q,e===null?d0:function(){return jo(l),e(a)})}function No(l){var t=l.memoizedState;if(t!==null)return t;t={memoizedState:Q,baseState:Q,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Xt,lastRenderedState:Q},next:null};var e={};return t.next={memoizedState:e,baseState:e,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Xt,lastRenderedState:e},next:null},l.memoizedState=t,l=l.alternate,l!==null&&(l.memoizedState=t),t}function jo(l){var t=No(l);t.next===null&&(t=l.alternate.memoizedState),cn(l,t.next.queue,{},vt())}function mc(){return Gl(Tn)}function To(){return El().memoizedState}function zo(){return El().memoizedState}function m0(l){for(var t=l.return;t!==null;){switch(t.tag){case 24:case 3:var e=vt();l=fe(e);var a=se(t,l,e);a!==null&&(ut(a,t,e),tn(a,t,e)),t={cache:Qi()},l.payload=t;return}t=t.return}}function h0(l,t,e){var a=vt();e={lane:a,revertLane:0,gesture:null,action:e,hasEagerState:!1,eagerState:null,next:null},vu(l)?Eo(t,e):(e=Oi(l,t,e,a),e!==null&&(ut(e,l,a),_o(e,t,a)))}function Ao(l,t,e){var a=vt();cn(l,t,e,a)}function cn(l,t,e,a){var n={lane:a,revertLane:0,gesture:null,action:e,hasEagerState:!1,eagerState:null,next:null};if(vu(l))Eo(t,n);else{var u=l.alternate;if(l.lanes===0&&(u===null||u.lanes===0)&&(u=t.lastRenderedReducer,u!==null))try{var i=t.lastRenderedState,c=u(i,e);if(n.hasEagerState=!0,n.eagerState=c,ot(c,i))return Wn(l,t,n,0),gl===null&&$n(),!1}catch{}finally{}if(e=Oi(l,t,n,a),e!==null)return ut(e,l,a),_o(e,t,a),!0}return!1}function hc(l,t,e,a){if(a={lane:2,revertLane:Kc(),gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null},vu(l)){if(t)throw Error(s(479))}else t=Oi(l,e,a,2),t!==null&&ut(t,l,2)}function vu(l){var t=l.alternate;return l===k||t!==null&&t===k}function Eo(l,t){va=su=!0;var e=l.pending;e===null?t.next=t:(t.next=e.next,e.next=t),l.pending=t}function _o(l,t,e){if((e&4194048)!==0){var a=t.lanes;a&=l.pendingLanes,e|=a,t.lanes=e,Uf(l,e)}}var fn={readContext:Gl,use:du,useCallback:jl,useContext:jl,useEffect:jl,useImperativeHandle:jl,useLayoutEffect:jl,useInsertionEffect:jl,useMemo:jl,useReducer:jl,useRef:jl,useState:jl,useDebugValue:jl,useDeferredValue:jl,useTransition:jl,useSyncExternalStore:jl,useId:jl,useHostTransitionStatus:jl,useFormState:jl,useActionState:jl,useOptimistic:jl,useMemoCache:jl,useCacheRefresh:jl};fn.useEffectEvent=jl;var Mo={readContext:Gl,use:du,useCallback:function(l,t){return Fl().memoizedState=[l,t===void 0?null:t],l},useContext:Gl,useEffect:ro,useImperativeHandle:function(l,t,e){e=e!=null?e.concat([l]):null,hu(4194308,4,vo.bind(null,t,l),e)},useLayoutEffect:function(l,t){return hu(4194308,4,l,t)},useInsertionEffect:function(l,t){hu(4,2,l,t)},useMemo:function(l,t){var e=Fl();t=t===void 0?null:t;var a=l();if(Xe){le(!0);try{l()}finally{le(!1)}}return e.memoizedState=[a,t],a},useReducer:function(l,t,e){var a=Fl();if(e!==void 0){var n=e(t);if(Xe){le(!0);try{e(t)}finally{le(!1)}}}else n=t;return a.memoizedState=a.baseState=n,l={pending:null,lanes:0,dispatch:null,lastRenderedReducer:l,lastRenderedState:n},a.queue=l,l=l.dispatch=h0.bind(null,k,l),[a.memoizedState,l]},useRef:function(l){var t=Fl();return l={current:l},t.memoizedState=l},useState:function(l){l=cc(l);var t=l.queue,e=Ao.bind(null,k,t);return t.dispatch=e,[l.memoizedState,e]},useDebugValue:oc,useDeferredValue:function(l,t){var e=Fl();return rc(e,l,t)},useTransition:function(){var l=cc(!1);return l=So.bind(null,k,l.queue,!0,!1),Fl().memoizedState=l,[!1,l]},useSyncExternalStore:function(l,t,e){var a=k,n=Fl();if(nl){if(e===void 0)throw Error(s(407));e=e()}else{if(e=t(),gl===null)throw Error(s(349));(el&127)!==0||$s(a,t,e)}n.memoizedState=e;var u={value:e,getSnapshot:t};return n.queue=u,ro(Fs.bind(null,a,u,l),[l]),a.flags|=2048,ba(9,{destroy:void 0},Ws.bind(null,a,u,e,t),null),e},useId:function(){var l=Fl(),t=gl.identifierPrefix;if(nl){var e=Ut,a=Ot;e=(a&~(1<<32-st(a)-1)).toString(32)+e,t="_"+t+"R_"+e,e=ou++,0<\/script>",u=u.removeChild(u.firstChild);break;case"select":u=typeof a.is=="string"?i.createElement("select",{is:a.is}):i.createElement("select"),a.multiple?u.multiple=!0:a.size&&(u.size=a.size);break;default:u=typeof a.is=="string"?i.createElement(n,{is:a.is}):i.createElement(n)}}u[wl]=t,u[Pl]=a;l:for(i=t.child;i!==null;){if(i.tag===5||i.tag===6)u.appendChild(i.stateNode);else if(i.tag!==4&&i.tag!==27&&i.child!==null){i.child.return=i,i=i.child;continue}if(i===t)break l;for(;i.sibling===null;){if(i.return===null||i.return===t)break l;i=i.return}i.sibling.return=i.return,i=i.sibling}t.stateNode=u;l:switch(Xl(u,n,a),n){case"button":case"input":case"select":case"textarea":a=!!a.autoFocus;break l;case"img":a=!0;break l;default:a=!1}a&&Vt(t)}}return pl(t),_c(t,t.type,l===null?null:l.memoizedProps,t.pendingProps,e),null;case 6:if(l&&t.stateNode!=null)l.memoizedProps!==a&&Vt(t);else{if(typeof a!="string"&&t.stateNode===null)throw Error(s(166));if(l=I.current,sa(t)){if(l=t.stateNode,e=t.memoizedProps,a=null,n=Ll,n!==null)switch(n.tag){case 27:case 5:a=n.memoizedProps}l[wl]=t,l=!!(l.nodeValue===e||a!==null&&a.suppressHydrationWarning===!0||Jr(l.nodeValue,e)),l||ue(t,!0)}else l=Bu(l).createTextNode(a),l[wl]=t,t.stateNode=l}return pl(t),null;case 31:if(e=t.memoizedState,l===null||l.memoizedState!==null){if(a=sa(t),e!==null){if(l===null){if(!a)throw Error(s(318));if(l=t.memoizedState,l=l!==null?l.dehydrated:null,!l)throw Error(s(557));l[wl]=t}else Be(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;pl(t),l=!1}else e=Yi(),l!==null&&l.memoizedState!==null&&(l.memoizedState.hydrationErrors=e),l=!0;if(!l)return t.flags&256?(mt(t),t):(mt(t),null);if((t.flags&128)!==0)throw Error(s(558))}return pl(t),null;case 13:if(a=t.memoizedState,l===null||l.memoizedState!==null&&l.memoizedState.dehydrated!==null){if(n=sa(t),a!==null&&a.dehydrated!==null){if(l===null){if(!n)throw Error(s(318));if(n=t.memoizedState,n=n!==null?n.dehydrated:null,!n)throw Error(s(317));n[wl]=t}else Be(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;pl(t),n=!1}else n=Yi(),l!==null&&l.memoizedState!==null&&(l.memoizedState.hydrationErrors=n),n=!0;if(!n)return t.flags&256?(mt(t),t):(mt(t),null)}return mt(t),(t.flags&128)!==0?(t.lanes=e,t):(e=a!==null,l=l!==null&&l.memoizedState!==null,e&&(a=t.child,n=null,a.alternate!==null&&a.alternate.memoizedState!==null&&a.alternate.memoizedState.cachePool!==null&&(n=a.alternate.memoizedState.cachePool.pool),u=null,a.memoizedState!==null&&a.memoizedState.cachePool!==null&&(u=a.memoizedState.cachePool.pool),u!==n&&(a.flags|=2048)),e!==l&&e&&(t.child.flags|=8192),Su(t,t.updateQueue),pl(t),null);case 4:return zl(),l===null&&Wc(t.stateNode.containerInfo),pl(t),null;case 10:return Gt(t.type),pl(t),null;case 19:if(T(Al),a=t.memoizedState,a===null)return pl(t),null;if(n=(t.flags&128)!==0,u=a.rendering,u===null)if(n)on(a,!1);else{if(Tl!==0||l!==null&&(l.flags&128)!==0)for(l=t.child;l!==null;){if(u=fu(l),u!==null){for(t.flags|=128,on(a,!1),l=u.updateQueue,t.updateQueue=l,Su(t,l),t.subtreeFlags=0,l=e,e=t.child;e!==null;)zs(e,l),e=e.sibling;return O(Al,Al.current&1|2),nl&&wt(t,a.treeForkCount),t.child}l=l.sibling}a.tail!==null&&ct()>Au&&(t.flags|=128,n=!0,on(a,!1),t.lanes=4194304)}else{if(!n)if(l=fu(u),l!==null){if(t.flags|=128,n=!0,l=l.updateQueue,t.updateQueue=l,Su(t,l),on(a,!0),a.tail===null&&a.tailMode==="hidden"&&!u.alternate&&!nl)return pl(t),null}else 2*ct()-a.renderingStartTime>Au&&e!==536870912&&(t.flags|=128,n=!0,on(a,!1),t.lanes=4194304);a.isBackwards?(u.sibling=t.child,t.child=u):(l=a.last,l!==null?l.sibling=u:t.child=u,a.last=u)}return a.tail!==null?(l=a.tail,a.rendering=l,a.tail=l.sibling,a.renderingStartTime=ct(),l.sibling=null,e=Al.current,O(Al,n?e&1|2:e&1),nl&&wt(t,a.treeForkCount),l):(pl(t),null);case 22:case 23:return mt(t),Fi(),a=t.memoizedState!==null,l!==null?l.memoizedState!==null!==a&&(t.flags|=8192):a&&(t.flags|=8192),a?(e&536870912)!==0&&(t.flags&128)===0&&(pl(t),t.subtreeFlags&6&&(t.flags|=8192)):pl(t),e=t.updateQueue,e!==null&&Su(t,e.retryQueue),e=null,l!==null&&l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(e=l.memoizedState.cachePool.pool),a=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(a=t.memoizedState.cachePool.pool),a!==e&&(t.flags|=2048),l!==null&&T(we),null;case 24:return e=null,l!==null&&(e=l.memoizedState.cache),t.memoizedState.cache!==e&&(t.flags|=2048),Gt(Ol),pl(t),null;case 25:return null;case 30:return null}throw Error(s(156,t.tag))}function p0(l,t){switch(Bi(t),t.tag){case 1:return l=t.flags,l&65536?(t.flags=l&-65537|128,t):null;case 3:return Gt(Ol),zl(),l=t.flags,(l&65536)!==0&&(l&128)===0?(t.flags=l&-65537|128,t):null;case 26:case 27:case 5:return Un(t),null;case 31:if(t.memoizedState!==null){if(mt(t),t.alternate===null)throw Error(s(340));Be()}return l=t.flags,l&65536?(t.flags=l&-65537|128,t):null;case 13:if(mt(t),l=t.memoizedState,l!==null&&l.dehydrated!==null){if(t.alternate===null)throw Error(s(340));Be()}return l=t.flags,l&65536?(t.flags=l&-65537|128,t):null;case 19:return T(Al),null;case 4:return zl(),null;case 10:return Gt(t.type),null;case 22:case 23:return mt(t),Fi(),l!==null&&T(we),l=t.flags,l&65536?(t.flags=l&-65537|128,t):null;case 24:return Gt(Ol),null;case 25:return null;default:return null}}function Po(l,t){switch(Bi(t),t.tag){case 3:Gt(Ol),zl();break;case 26:case 27:case 5:Un(t);break;case 4:zl();break;case 31:t.memoizedState!==null&&mt(t);break;case 13:mt(t);break;case 19:T(Al);break;case 10:Gt(t.type);break;case 22:case 23:mt(t),Fi(),l!==null&&T(we);break;case 24:Gt(Ol)}}function rn(l,t){try{var e=t.updateQueue,a=e!==null?e.lastEffect:null;if(a!==null){var n=a.next;e=n;do{if((e.tag&l)===l){a=void 0;var u=e.create,i=e.inst;a=u(),i.destroy=a}e=e.next}while(e!==n)}}catch(c){ol(t,t.return,c)}}function de(l,t,e){try{var a=t.updateQueue,n=a!==null?a.lastEffect:null;if(n!==null){var u=n.next;a=u;do{if((a.tag&l)===l){var i=a.inst,c=i.destroy;if(c!==void 0){i.destroy=void 0,n=t;var o=e,v=c;try{v()}catch(x){ol(n,o,x)}}}a=a.next}while(a!==u)}}catch(x){ol(t,t.return,x)}}function lr(l){var t=l.updateQueue;if(t!==null){var e=l.stateNode;try{Xs(t,e)}catch(a){ol(l,l.return,a)}}}function tr(l,t,e){e.props=Ze(l.type,l.memoizedProps),e.state=l.memoizedState;try{e.componentWillUnmount()}catch(a){ol(l,t,a)}}function dn(l,t){try{var e=l.ref;if(e!==null){switch(l.tag){case 26:case 27:case 5:var a=l.stateNode;break;case 30:a=l.stateNode;break;default:a=l.stateNode}typeof e=="function"?l.refCleanup=e(a):e.current=a}}catch(n){ol(l,t,n)}}function Ct(l,t){var e=l.ref,a=l.refCleanup;if(e!==null)if(typeof a=="function")try{a()}catch(n){ol(l,t,n)}finally{l.refCleanup=null,l=l.alternate,l!=null&&(l.refCleanup=null)}else if(typeof e=="function")try{e(null)}catch(n){ol(l,t,n)}else e.current=null}function er(l){var t=l.type,e=l.memoizedProps,a=l.stateNode;try{l:switch(t){case"button":case"input":case"select":case"textarea":e.autoFocus&&a.focus();break l;case"img":e.src?a.src=e.src:e.srcSet&&(a.srcset=e.srcSet)}}catch(n){ol(l,l.return,n)}}function Mc(l,t,e){try{var a=l.stateNode;G0(a,l.type,e,t),a[Pl]=t}catch(n){ol(l,l.return,n)}}function ar(l){return l.tag===5||l.tag===3||l.tag===26||l.tag===27&&pe(l.type)||l.tag===4}function Dc(l){l:for(;;){for(;l.sibling===null;){if(l.return===null||ar(l.return))return null;l=l.return}for(l.sibling.return=l.return,l=l.sibling;l.tag!==5&&l.tag!==6&&l.tag!==18;){if(l.tag===27&&pe(l.type)||l.flags&2||l.child===null||l.tag===4)continue l;l.child.return=l,l=l.child}if(!(l.flags&2))return l.stateNode}}function Oc(l,t,e){var a=l.tag;if(a===5||a===6)l=l.stateNode,t?(e.nodeType===9?e.body:e.nodeName==="HTML"?e.ownerDocument.body:e).insertBefore(l,t):(t=e.nodeType===9?e.body:e.nodeName==="HTML"?e.ownerDocument.body:e,t.appendChild(l),e=e._reactRootContainer,e!=null||t.onclick!==null||(t.onclick=Bt));else if(a!==4&&(a===27&&pe(l.type)&&(e=l.stateNode,t=null),l=l.child,l!==null))for(Oc(l,t,e),l=l.sibling;l!==null;)Oc(l,t,e),l=l.sibling}function Nu(l,t,e){var a=l.tag;if(a===5||a===6)l=l.stateNode,t?e.insertBefore(l,t):e.appendChild(l);else if(a!==4&&(a===27&&pe(l.type)&&(e=l.stateNode),l=l.child,l!==null))for(Nu(l,t,e),l=l.sibling;l!==null;)Nu(l,t,e),l=l.sibling}function nr(l){var t=l.stateNode,e=l.memoizedProps;try{for(var a=l.type,n=t.attributes;n.length;)t.removeAttributeNode(n[0]);Xl(t,a,e),t[wl]=l,t[Pl]=e}catch(u){ol(l,l.return,u)}}var Kt=!1,Hl=!1,Uc=!1,ur=typeof WeakSet=="function"?WeakSet:Set,Yl=null;function x0(l,t){if(l=l.containerInfo,Pc=Xu,l=vs(l),zi(l)){if("selectionStart"in l)var e={start:l.selectionStart,end:l.selectionEnd};else l:{e=(e=l.ownerDocument)&&e.defaultView||window;var a=e.getSelection&&e.getSelection();if(a&&a.rangeCount!==0){e=a.anchorNode;var n=a.anchorOffset,u=a.focusNode;a=a.focusOffset;try{e.nodeType,u.nodeType}catch{e=null;break l}var i=0,c=-1,o=-1,v=0,x=0,j=l,g=null;t:for(;;){for(var b;j!==e||n!==0&&j.nodeType!==3||(c=i+n),j!==u||a!==0&&j.nodeType!==3||(o=i+a),j.nodeType===3&&(i+=j.nodeValue.length),(b=j.firstChild)!==null;)g=j,j=b;for(;;){if(j===l)break t;if(g===e&&++v===n&&(c=i),g===u&&++x===a&&(o=i),(b=j.nextSibling)!==null)break;j=g,g=j.parentNode}j=b}e=c===-1||o===-1?null:{start:c,end:o}}else e=null}e=e||{start:0,end:0}}else e=null;for(lf={focusedElem:l,selectionRange:e},Xu=!1,Yl=t;Yl!==null;)if(t=Yl,l=t.child,(t.subtreeFlags&1028)!==0&&l!==null)l.return=t,Yl=l;else for(;Yl!==null;){switch(t=Yl,u=t.alternate,l=t.flags,t.tag){case 0:if((l&4)!==0&&(l=t.updateQueue,l=l!==null?l.events:null,l!==null))for(e=0;e title"))),Xl(u,a,e),u[wl]=l,ql(u),a=u;break l;case"link":var i=rd("link","href",n).get(a+(e.href||""));if(i){for(var c=0;chl&&(i=hl,hl=L,L=i);var h=hs(c,L),d=hs(c,hl);if(h&&d&&(b.rangeCount!==1||b.anchorNode!==h.node||b.anchorOffset!==h.offset||b.focusNode!==d.node||b.focusOffset!==d.offset)){var y=j.createRange();y.setStart(h.node,h.offset),b.removeAllRanges(),L>hl?(b.addRange(y),b.extend(d.node,d.offset)):(y.setEnd(d.node,d.offset),b.addRange(y))}}}}for(j=[],b=c;b=b.parentNode;)b.nodeType===1&&j.push({element:b,left:b.scrollLeft,top:b.scrollTop});for(typeof c.focus=="function"&&c.focus(),c=0;ce?32:e,S.T=null,e=wc,wc=null;var u=ve,i=Ft;if(Bl=0,ja=ve=null,Ft=0,(cl&6)!==0)throw Error(s(331));var c=cl;if(cl|=4,vr(u.current),mr(u,u.current,i,e),cl=c,bn(0,!1),ft&&typeof ft.onPostCommitFiberRoot=="function")try{ft.onPostCommitFiberRoot(Ra,u)}catch{}return!0}finally{D.p=n,S.T=a,Hr(l,t)}}function Br(l,t,e){t=xt(e,t),t=bc(l.stateNode,t,2),l=se(l,t,2),l!==null&&(qa(l,2),Ht(l))}function ol(l,t,e){if(l.tag===3)Br(l,l,e);else for(;t!==null;){if(t.tag===3){Br(t,l,e);break}else if(t.tag===1){var a=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof a.componentDidCatch=="function"&&(ye===null||!ye.has(a))){l=xt(e,l),e=qo(2),a=se(t,e,2),a!==null&&(Yo(e,a,t,l),qa(a,2),Ht(a));break}}t=t.return}}function Xc(l,t,e){var a=l.pingCache;if(a===null){a=l.pingCache=new j0;var n=new Set;a.set(t,n)}else n=a.get(t),n===void 0&&(n=new Set,a.set(t,n));n.has(e)||(Rc=!0,n.add(e),l=_0.bind(null,l,t,e),t.then(l,l))}function _0(l,t,e){var a=l.pingCache;a!==null&&a.delete(t),l.pingedLanes|=l.suspendedLanes&e,l.warmLanes&=~e,gl===l&&(el&e)===e&&(Tl===4||Tl===3&&(el&62914560)===el&&300>ct()-zu?(cl&2)===0&&Ta(l,0):Bc|=e,Na===el&&(Na=0)),Ht(l)}function qr(l,t){t===0&&(t=Df()),l=He(l,t),l!==null&&(qa(l,t),Ht(l))}function M0(l){var t=l.memoizedState,e=0;t!==null&&(e=t.retryLane),qr(l,e)}function D0(l,t){var e=0;switch(l.tag){case 31:case 13:var a=l.stateNode,n=l.memoizedState;n!==null&&(e=n.retryLane);break;case 19:a=l.stateNode;break;case 22:a=l.stateNode._retryCache;break;default:throw Error(s(314))}a!==null&&a.delete(t),qr(l,e)}function O0(l,t){return ei(l,t)}var Uu=null,Aa=null,Zc=!1,Cu=!1,Vc=!1,be=0;function Ht(l){l!==Aa&&l.next===null&&(Aa===null?Uu=Aa=l:Aa=Aa.next=l),Cu=!0,Zc||(Zc=!0,C0())}function bn(l,t){if(!Vc&&Cu){Vc=!0;do for(var e=!1,a=Uu;a!==null;){if(l!==0){var n=a.pendingLanes;if(n===0)var u=0;else{var i=a.suspendedLanes,c=a.pingedLanes;u=(1<<31-st(42|l)+1)-1,u&=n&~(i&~c),u=u&201326741?u&201326741|1:u?u|2:0}u!==0&&(e=!0,Gr(a,u))}else u=el,u=qn(a,a===gl?u:0,a.cancelPendingCommit!==null||a.timeoutHandle!==-1),(u&3)===0||Ba(a,u)||(e=!0,Gr(a,u));a=a.next}while(e);Vc=!1}}function U0(){Yr()}function Yr(){Cu=Zc=!1;var l=0;be!==0&&X0()&&(l=be);for(var t=ct(),e=null,a=Uu;a!==null;){var n=a.next,u=wr(a,t);u===0?(a.next=null,e===null?Uu=n:e.next=n,n===null&&(Aa=e)):(e=a,(l!==0||(u&3)!==0)&&(Cu=!0)),a=n}Bl!==0&&Bl!==5||bn(l),be!==0&&(be=0)}function wr(l,t){for(var e=l.suspendedLanes,a=l.pingedLanes,n=l.expirationTimes,u=l.pendingLanes&-62914561;0c)break;var x=o.transferSize,j=o.initiatorType;x&&$r(j)&&(o=o.responseEnd,i+=x*(o"u"?null:document;function cd(l,t,e){var a=Ea;if(a&&typeof t=="string"&&t){var n=bt(t);n='link[rel="'+l+'"][href="'+n+'"]',typeof e=="string"&&(n+='[crossorigin="'+e+'"]'),id.has(n)||(id.add(n),l={rel:l,crossOrigin:e,href:t},a.querySelector(n)===null&&(t=a.createElement("link"),Xl(t,"link",l),ql(t),a.head.appendChild(t)))}}function I0(l){It.D(l),cd("dns-prefetch",l,null)}function P0(l,t){It.C(l,t),cd("preconnect",l,t)}function lh(l,t,e){It.L(l,t,e);var a=Ea;if(a&&l&&t){var n='link[rel="preload"][as="'+bt(t)+'"]';t==="image"&&e&&e.imageSrcSet?(n+='[imagesrcset="'+bt(e.imageSrcSet)+'"]',typeof e.imageSizes=="string"&&(n+='[imagesizes="'+bt(e.imageSizes)+'"]')):n+='[href="'+bt(l)+'"]';var u=n;switch(t){case"style":u=_a(l);break;case"script":u=Ma(l)}At.has(u)||(l=_({rel:"preload",href:t==="image"&&e&&e.imageSrcSet?void 0:l,as:t},e),At.set(u,l),a.querySelector(n)!==null||t==="style"&&a.querySelector(Nn(u))||t==="script"&&a.querySelector(jn(u))||(t=a.createElement("link"),Xl(t,"link",l),ql(t),a.head.appendChild(t)))}}function th(l,t){It.m(l,t);var e=Ea;if(e&&l){var a=t&&typeof t.as=="string"?t.as:"script",n='link[rel="modulepreload"][as="'+bt(a)+'"][href="'+bt(l)+'"]',u=n;switch(a){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":u=Ma(l)}if(!At.has(u)&&(l=_({rel:"modulepreload",href:l},t),At.set(u,l),e.querySelector(n)===null)){switch(a){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(e.querySelector(jn(u)))return}a=e.createElement("link"),Xl(a,"link",l),ql(a),e.head.appendChild(a)}}}function eh(l,t,e){It.S(l,t,e);var a=Ea;if(a&&l){var n=We(a).hoistableStyles,u=_a(l);t=t||"default";var i=n.get(u);if(!i){var c={loading:0,preload:null};if(i=a.querySelector(Nn(u)))c.loading=5;else{l=_({rel:"stylesheet",href:l,"data-precedence":t},e),(e=At.get(u))&&ff(l,e);var o=i=a.createElement("link");ql(o),Xl(o,"link",l),o._p=new Promise(function(v,x){o.onload=v,o.onerror=x}),o.addEventListener("load",function(){c.loading|=1}),o.addEventListener("error",function(){c.loading|=2}),c.loading|=4,Yu(i,t,a)}i={type:"stylesheet",instance:i,count:1,state:c},n.set(u,i)}}}function ah(l,t){It.X(l,t);var e=Ea;if(e&&l){var a=We(e).hoistableScripts,n=Ma(l),u=a.get(n);u||(u=e.querySelector(jn(n)),u||(l=_({src:l,async:!0},t),(t=At.get(n))&&sf(l,t),u=e.createElement("script"),ql(u),Xl(u,"link",l),e.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},a.set(n,u))}}function nh(l,t){It.M(l,t);var e=Ea;if(e&&l){var a=We(e).hoistableScripts,n=Ma(l),u=a.get(n);u||(u=e.querySelector(jn(n)),u||(l=_({src:l,async:!0,type:"module"},t),(t=At.get(n))&&sf(l,t),u=e.createElement("script"),ql(u),Xl(u,"link",l),e.head.appendChild(u)),u={type:"script",instance:u,count:1,state:null},a.set(n,u))}}function fd(l,t,e,a){var n=(n=I.current)?qu(n):null;if(!n)throw Error(s(446));switch(l){case"meta":case"title":return null;case"style":return typeof e.precedence=="string"&&typeof e.href=="string"?(t=_a(e.href),e=We(n).hoistableStyles,a=e.get(t),a||(a={type:"style",instance:null,count:0,state:null},e.set(t,a)),a):{type:"void",instance:null,count:0,state:null};case"link":if(e.rel==="stylesheet"&&typeof e.href=="string"&&typeof e.precedence=="string"){l=_a(e.href);var u=We(n).hoistableStyles,i=u.get(l);if(i||(n=n.ownerDocument||n,i={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},u.set(l,i),(u=n.querySelector(Nn(l)))&&!u._p&&(i.instance=u,i.state.loading=5),At.has(l)||(e={rel:"preload",as:"style",href:e.href,crossOrigin:e.crossOrigin,integrity:e.integrity,media:e.media,hrefLang:e.hrefLang,referrerPolicy:e.referrerPolicy},At.set(l,e),u||uh(n,l,e,i.state))),t&&a===null)throw Error(s(528,""));return i}if(t&&a!==null)throw Error(s(529,""));return null;case"script":return t=e.async,e=e.src,typeof e=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=Ma(e),e=We(n).hoistableScripts,a=e.get(t),a||(a={type:"script",instance:null,count:0,state:null},e.set(t,a)),a):{type:"void",instance:null,count:0,state:null};default:throw Error(s(444,l))}}function _a(l){return'href="'+bt(l)+'"'}function Nn(l){return'link[rel="stylesheet"]['+l+"]"}function sd(l){return _({},l,{"data-precedence":l.precedence,precedence:null})}function uh(l,t,e,a){l.querySelector('link[rel="preload"][as="style"]['+t+"]")?a.loading=1:(t=l.createElement("link"),a.preload=t,t.addEventListener("load",function(){return a.loading|=1}),t.addEventListener("error",function(){return a.loading|=2}),Xl(t,"link",e),ql(t),l.head.appendChild(t))}function Ma(l){return'[src="'+bt(l)+'"]'}function jn(l){return"script[async]"+l}function od(l,t,e){if(t.count++,t.instance===null)switch(t.type){case"style":var a=l.querySelector('style[data-href~="'+bt(e.href)+'"]');if(a)return t.instance=a,ql(a),a;var n=_({},e,{"data-href":e.href,"data-precedence":e.precedence,href:null,precedence:null});return a=(l.ownerDocument||l).createElement("style"),ql(a),Xl(a,"style",n),Yu(a,e.precedence,l),t.instance=a;case"stylesheet":n=_a(e.href);var u=l.querySelector(Nn(n));if(u)return t.state.loading|=4,t.instance=u,ql(u),u;a=sd(e),(n=At.get(n))&&ff(a,n),u=(l.ownerDocument||l).createElement("link"),ql(u);var i=u;return i._p=new Promise(function(c,o){i.onload=c,i.onerror=o}),Xl(u,"link",a),t.state.loading|=4,Yu(u,e.precedence,l),t.instance=u;case"script":return u=Ma(e.src),(n=l.querySelector(jn(u)))?(t.instance=n,ql(n),n):(a=e,(n=At.get(u))&&(a=_({},e),sf(a,n)),l=l.ownerDocument||l,n=l.createElement("script"),ql(n),Xl(n,"link",a),l.head.appendChild(n),t.instance=n);case"void":return null;default:throw Error(s(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(a=t.instance,t.state.loading|=4,Yu(a,e.precedence,l));return t.instance}function Yu(l,t,e){for(var a=e.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),n=a.length?a[a.length-1]:null,u=n,i=0;i title"):null)}function ih(l,t,e){if(e===1||t.itemProp!=null)return!1;switch(l){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;switch(t.rel){case"stylesheet":return l=t.disabled,typeof t.precedence=="string"&&l==null;default:return!0}case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function md(l){return!(l.type==="stylesheet"&&(l.state.loading&3)===0)}function ch(l,t,e,a){if(e.type==="stylesheet"&&(typeof a.media!="string"||matchMedia(a.media).matches!==!1)&&(e.state.loading&4)===0){if(e.instance===null){var n=_a(a.href),u=t.querySelector(Nn(n));if(u){t=u._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(l.count++,l=Lu.bind(l),t.then(l,l)),e.state.loading|=4,e.instance=u,ql(u);return}u=t.ownerDocument||t,a=sd(a),(n=At.get(n))&&ff(a,n),u=u.createElement("link"),ql(u);var i=u;i._p=new Promise(function(c,o){i.onload=c,i.onerror=o}),Xl(u,"link",a),e.instance=u}l.stylesheets===null&&(l.stylesheets=new Map),l.stylesheets.set(e,t),(t=e.state.preload)&&(e.state.loading&3)===0&&(l.count++,e=Lu.bind(l),t.addEventListener("load",e),t.addEventListener("error",e))}}var of=0;function fh(l,t){return l.stylesheets&&l.count===0&&Qu(l,l.stylesheets),0of?50:800)+t);return l.unsuspend=e,function(){l.unsuspend=null,clearTimeout(a),clearTimeout(n)}}:null}function Lu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Qu(this,this.stylesheets);else if(this.unsuspend){var l=this.unsuspend;this.unsuspend=null,l()}}}var Gu=null;function Qu(l,t){l.stylesheets=null,l.unsuspend!==null&&(l.count++,Gu=new Map,t.forEach(sh,l),Gu=null,Lu.call(l))}function sh(l,t){if(!(t.state.loading&4)){var e=Gu.get(l);if(e)var a=e.get(null);else{e=new Map,Gu.set(l,e);for(var n=l.querySelectorAll("link[data-precedence],style[data-precedence]"),u=0;u"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(r)}catch(E){console.error(E)}}return r(),pf.exports=zh(),pf.exports}var Eh=Ah();const _h={id:{nav:{tentangKami:"Tentang Kami",program:"Program",sdm:"SDM",fasilitas:"Fasilitas",karyaAgenda:"Karya & Agenda",kontak:"Kontak",satuUntan:"SATU UNTAN"},hero:{badge:"MAHASISWA & PRESTASI",title:"Sorotan dan Prestasi Karya Mahasiswa",desc:"Galeri pencapaian, penghargaan, dan portofolio inovasi teknologi yang dikembangkan oleh mahasiswa Program Studi Informatika Universitas Tanjungpura."},about:{title:"Tentang Program Studi",desc:"Program Studi Informatika Universitas Tanjungpura adalah program yang berfokus pada pengembangan ilmu komputer, rekayasa perangkat lunak, dan inovasi teknologi informasi. Mahasiswa kami aktif berprestasi di tingkat regional, nasional, maupun internasional, membawa nama baik Kalimantan Barat ke panggung dunia.",tag:"Program Studi"},stats:{totalPrestasi:"Total Prestasi",totalProyek:"Total Proyek Mahasiswa"},achievement:{sectionTitle:"Prestasi Mahasiswa",sectionDesc:"Daftar pencapaian dan penghargaan yang diraih oleh mahasiswa Informatika UNTAN di berbagai kompetisi.",filterTitle:"Filter Prestasi",searchPlaceholder:"Cari nama, prestasi, bidang...",allLevel:"Semua Tingkat",allField:"Semua Bidang",allYear:"Semua Tahun",resetFilter:"Reset Filter",noData:"Tidak ada prestasi yang sesuai filter.",noDataSub:"Coba ubah pilihan filter atau kata kunci pencarian.",showing:"Menampilkan",matching:"prestasi yang sesuai filter",loadMore:"Muat Lebih Banyak",showLess:"Tampilkan Lebih Sedikit",allShown:"prestasi telah ditampilkan.",readMore:"Baca Selengkapnya"},project:{sectionTitle:"Top Projects & Portofolio",sectionDesc:"Jelajahi inovasi digital dan aplikasi nyata yang dikembangkan oleh mahasiswa Informatika UNTAN.",scrollHint:"← Geser untuk melihat lebih banyak →",explore:"Telusuri Lanjut",visitLink:"Kunjungi Proyek",noLink:"Link tidak tersedia",by:"oleh",readMore:"Baca Selengkapnya",filterTitle:"Filter Portofolio",searchPlaceholder:"Cari judul, mahasiswa, bidang...",allField:"Semua Bidang",allYear:"Semua Tahun",resetFilter:"Reset Filter",noData:"Tidak ada proyek yang sesuai filter.",noDataSub:"Coba ubah pilihan filter atau kata kunci pencarian.",showing:"Menampilkan",matching:"proyek yang sesuai filter",loadMore:"Muat Lebih Banyak",showLess:"Tampilkan Lebih Sedikit",allShown:"proyek telah ditampilkan."},modal:{close:"Tutup",nim:"NIM",angkatan:"Angkatan",tahun:"Tahun",tingkat:"Tingkat",bidang:"Bidang",kompetisi:"Kompetisi",peringkat:"Peringkat",tim:"Tim / Nama",deskripsi:"Deskripsi",mahasiswa:"Mahasiswa",link:"Link Proyek",namaProyek:"Nama Proyek"},cta:{badge:"HUBUNGI KAMI",title:"Ingin Tahu Lebih Lanjut?",desc:"Tertarik bergabung dengan Program Studi Informatika UNTAN, mendaftarkan prestasi mahasiswa, atau menjalin kerja sama? Hubungi kami sekarang.",waButton:"Chat via WhatsApp",webButton:"Kunjungi Website Kami",contactTitle:"Informasi Kontak",emailLabel:"Email",email:"informatika@untan.ac.id",phone:"+62 561 577963",address:"Jl. Prof. Dr. H. Hadari Nawawi, Bansir Laut, Pontianak Tenggara, 78124"},footer:{desc:`Program Studi Informatika, Universitas Tanjungpura. Jl. Prof. Dr. H. Hadari Nawawi, Bansir Laut, Kec. Pontianak Tenggara, Kota Pontianak, Kalimantan Barat 78124`,kategori:"Kategori",tautan:"Tautan Penting",berita:"Berita & Informasi",pengumuman:"Pengumuman Akademik",prestasi:"Prestasi Mahasiswa",siakad:"SIAKAD UNTAN",elearning:"E-Learning UNTAN",privacy:"Kebijakan Privasi",terms:"Syarat & Ketentuan",rights:"All rights reserved."}},en:{nav:{tentangKami:"About Us",program:"Programs",sdm:"Human Resources",fasilitas:"Facilities",karyaAgenda:"Works & Events",kontak:"Contact",satuUntan:"SATU UNTAN"},hero:{badge:"STUDENTS & ACHIEVEMENTS",title:"Student Spotlights & Achievements",desc:"Gallery of accomplishments, awards, and technology innovation portfolios developed by Informatics students of Tanjungpura University."},about:{title:"About the Study Program",desc:"The Informatics Study Program at Tanjungpura University focuses on computer science, software engineering, and information technology innovation. Our students actively excel at regional, national, and international levels, representing West Kalimantan on the world stage.",tag:"Study Program"},stats:{totalPrestasi:"Total Achievements",totalProyek:"Total Student Projects"},achievement:{sectionTitle:"Student Achievements",sectionDesc:"List of awards and accomplishments by Informatics UNTAN students in various competitions.",filterTitle:"Filter Achievements",searchPlaceholder:"Search name, achievement, field...",allLevel:"All Levels",allField:"All Fields",allYear:"All Years",resetFilter:"Reset Filter",noData:"No achievements match the current filter.",noDataSub:"Try adjusting your filter or search keyword.",showing:"Showing",matching:"matching achievements",loadMore:"Load More",showLess:"Show Less",allShown:"achievements displayed.",readMore:"Read More"},project:{sectionTitle:"Top Projects & Portfolios",sectionDesc:"Explore digital innovations and real-world applications developed by Informatics UNTAN students.",scrollHint:"← Swipe to see more →",explore:"Explore More",visitLink:"Visit Project",noLink:"Link unavailable",by:"by",readMore:"Read More",filterTitle:"Filter Portfolios",searchPlaceholder:"Search title, student, field...",allField:"All Fields",allYear:"All Years",resetFilter:"Reset Filter",noData:"No projects match the current filter.",noDataSub:"Try adjusting your filter or search keyword.",showing:"Showing",matching:"matching projects",loadMore:"Load More",showLess:"Show Less",allShown:"projects displayed."},modal:{close:"Close",nim:"Student ID",angkatan:"Batch",tahun:"Year",tingkat:"Level",bidang:"Field",kompetisi:"Competition",peringkat:"Rank",tim:"Team / Name",deskripsi:"Description",mahasiswa:"Student",link:"Project Link",namaProyek:"Project Name"},cta:{badge:"CONTACT US",title:"Want to Know More?",desc:"Interested in joining the Informatics Study Program at UNTAN, registering a student achievement, or establishing a partnership? Contact us now.",waButton:"Chat via WhatsApp",webButton:"Visit Our Website",contactTitle:"Contact Information",emailLabel:"Email",address:"Jl. Prof. Dr. H. Hadari Nawawi, Bansir Laut, Pontianak Tenggara, 78124"},footer:{desc:`Informatics Study Program, Tanjungpura University. Jl. Prof. Dr. H. Hadari Nawawi, Bansir Laut, Kec. Pontianak Tenggara, Pontianak City, West Kalimantan 78124`,kategori:"Categories",tautan:"Important Links",berita:"News & Information",pengumuman:"Academic Announcements",prestasi:"Student Achievements",siakad:"SIAKAD UNTAN",elearning:"E-Learning UNTAN",privacy:"Privacy Policy",terms:"Terms & Conditions",rights:"All rights reserved."}}},Mh="if_untan_lang";function Dh(){const r=localStorage.getItem(Mh);return r==="id"||r==="en"?r:(navigator.language||"id").toLowerCase().startsWith("en")?"en":"id"}const wd=F.createContext(null);function Oh({children:r}){const[E,A]=F.useState(Dh);F.useEffect(()=>{const U=H=>{const Y=H.detail;((Y==null?void 0:Y.lang)==="en"||(Y==null?void 0:Y.lang)==="id")&&A(Y.lang)};return document.addEventListener("languageChanged",U),()=>document.removeEventListener("languageChanged",U)},[]);const s=()=>A(U=>U==="id"?"en":"id");return f.jsx(wd.Provider,{value:{lang:E,t:_h[E],toggleLang:s},children:r})}function Ee(){const r=F.useContext(wd);if(!r)throw new Error("useLang must be used within LanguageProvider");return r}const Ua="https://api.ifuntanhub.dev",Ld={1:"Kecerdasan Buatan",2:"Cyber Security",3:"Data",4:"Software Engineering",5:"Competitive Programming",6:"IoT",7:"Smart City",8:"Web3",9:"Karya Tulis Ilmiah",10:"Robotik"};function Uh(r){const E=r.match(/(Juara\s+\d+|Juara\s+Harapan\s*\d*|Top\s+\d+|Finalis|Peringkat\s+\d+|Medali\s+\w+)/i);return E?E[0]:"Pemenang"}function Ch(r,E){const A=`${r} ${E}`.toLowerCase();return A.includes("internasional")||A.includes("international")||A.includes("global")||A.includes("world")||A.includes("asean")||A.includes("unesco")?"Internasional":A.includes("regional")||A.includes("kalbar")||A.includes("kalimantan")||A.includes("provinsi")||A.includes("kota")||A.includes("kabupaten")||A.includes("lokal")?"Regional":"Nasional"}function Hh(r){return r.replace(/^(Juara\s+\d+|Juara\s+Harapan\s*\d*|Top\s+\d+|Finalis|Peringkat\s+\d+|Medali\s+\w+)\s+(di\s+|pada\s+|dalam\s+)?/i,"").trim()}async function Rh(){const r=await fetch(`${Ua}/items/prestasi?fields=*.*`);if(!r.ok)throw new Error(`Failed to fetch achievements: ${r.statusText}`);return((await r.json()).data||[]).filter(s=>s.status==="published").map(s=>{const U=String(s.id),H=s.nama_prestasi||"Untitled Achievement";let Y="Umum";s.bidang_id&&(typeof s.bidang_id=="object"&&s.bidang_id.nama_bidang?Y=s.bidang_id.nama_bidang:Y=Ld[s.bidang_id]||"Umum");const $=Uh(H),M=Ch(H,Y),p=Hh(H),q=parseInt(s.tahun)||new Date().getFullYear(),_=Array.isArray(s.anggota)?s.anggota:[],X=s.nama_tim||(_.length>0?_[0].nama:"Mahasiswa");let Z=`https://picsum.photos/seed/prestasi-${U}/800/600`;if(s.galeri&&Array.isArray(s.galeri)&&s.galeri.length>0){const Sl=s.galeri[0],_l=typeof Sl=="string"?Sl:Sl.directus_files_id||Sl.id;_l&&(Z=`${Ua}/assets/${_l}`)}else s.foto&&(Z=`${Ua}/assets/${s.foto}`);const tl=(s.nama_tim||s.nama_prestasi||"IF").substring(0,2).toUpperCase(),Nl=s.deskripsi||`${X} berhasil meraih prestasi luar biasa sebagai ${$} dalam ajang ${p} tahun ${q} pada bidang ${Y.toLowerCase()}.`;return{id:U,title:H,category:Y,competition:p,rank:$,year:q,level:M,description:Nl,team:X,nim:s.nim||void 0,generation:s.angkatan?`Angkatan ${s.angkatan}`:"Informatika",image:Z,avatar:tl,members:_.map(Sl=>({nama:Sl.nama,angkatan:Sl.angkatan?parseInt(Sl.angkatan):void 0}))}})}async function Bh(){const r=await fetch(`${Ua}/items/portfolio?fields=*,bidang.bidang_id.nama_bidang,galeri.*`);if(!r.ok)throw new Error(`Failed to fetch portfolio: ${r.statusText}`);return((await r.json()).data||[]).filter(s=>s.status==="published").map(s=>{const U=String(s.id),H=s.nama_proyek||"Untitled Project",Y=Array.isArray(s.anggota)?s.anggota:[],$=s.nama_mahasiswa||(Y.length>0?Y[0].nama:"Mahasiswa"),M=parseInt(s.tahun)||new Date().getFullYear(),p=s.deskripsi||"Tidak ada deskripsi.";let q=[];s.bidang&&Array.isArray(s.bidang)&&(q=s.bidang.map(Z=>Z.bidang_id&&typeof Z.bidang_id=="object"&&Z.bidang_id.nama_bidang?Z.bidang_id.nama_bidang:typeof Z.bidang_id=="number"&&Ld[Z.bidang_id]||"Umum").filter(Boolean)),q.length===0&&(q=["Umum"]);let _=s.url||void 0;_&&!/^https?:\/\//i.test(_)&&(_=`https://${_}`);let X=`https://picsum.photos/seed/project-${U}/800/600`;if(s.galeri&&Array.isArray(s.galeri)&&s.galeri.length>0){const Z=s.galeri[0],tl=typeof Z=="string"?Z:Z.directus_files_id||Z.id;tl&&(X=`${Ua}/assets/${tl}`)}else s.foto&&(X=`${Ua}/assets/${s.foto}`);return{id:U,title:H,studentName:$,nim:s.nim||void 0,year:M,category:q,description:p,image:X,link:_,catatan:s.catatan||void 0,members:Y.map(Z=>({nama:Z.nama,nim:Z.nim||void 0}))}})}const Gd=F.createContext(void 0);function qh({children:r}){const[E,A]=F.useState([]),[s,U]=F.useState([]),[H,Y]=F.useState(!0),[$,M]=F.useState(null),p=async()=>{Y(!0),M(null);try{const q=await Promise.allSettled([Rh(),Bh()]),_=q[0],X=q[1];let Z=!1,tl=[];_.status==="fulfilled"?A(_.value):(console.error("Failed to fetch achievements:",_.reason),tl.push("Gagal memuat data prestasi."),Z=!0),X.status==="fulfilled"?U(X.value):(console.error("Failed to fetch projects:",X.reason),tl.push("Gagal memuat data portofolio."),Z=!0),Z&&M(tl.join(" "))}catch(q){console.error("Unexpected error loading API data:",q),M("Terjadi kesalahan yang tidak terduga saat memuat data.")}finally{Y(!1)}};return F.useEffect(()=>{p()},[]),f.jsx(Gd.Provider,{value:{achievements:E,projects:s,loading:H,error:$,refetch:p},children:r})}function Tf(){const r=F.useContext(Gd);if(r===void 0)throw new Error("useData must be used within a DataProvider");return r}function Yh(){const{t:r}=Ee();return f.jsxs("div",{id:"hero",className:"acaab-full-bleed bg-untan-navy text-white pt-6 md:pt-8 lg:pt-10 mb-8 border-t border-white/10 relative",children:[f.jsx("div",{className:"container mx-auto px-4 lg:px-8 relative z-10",children:f.jsxs("div",{className:"grid lg:grid-cols-2 gap-6 lg:gap-10 items-center",children:[f.jsxs("div",{className:"max-w-3xl py-6 md:py-8 lg:py-10",children:[f.jsx("span",{className:"inline-block bg-untan-yellow text-slate-900 text-[10px] md:text-xs font-bold uppercase tracking-widest px-2 py-0.5 mb-3",children:r.hero.badge}),f.jsx("h1",{className:"text-2xl md:text-3xl lg:text-[36px] font-bold font-serif leading-tight md:leading-snug tracking-tight mb-3",children:r.hero.title}),f.jsx("p",{className:"text-slate-300 max-w-2xl text-sm md:text-base leading-relaxed",children:r.hero.desc})]}),f.jsxs("div",{className:"relative flex justify-center lg:justify-end items-end",children:[f.jsx("div",{className:"absolute bottom-0 w-[300px] h-[300px] bg-cyan-300/10 rounded-full blur-3xl"}),f.jsxs("div",{className:"relative",children:[f.jsx("img",{src:new URL(""+new URL("acaab-hero.png",import.meta.url).href,import.meta.url).href,alt:"Mahasiswa Informatika UNTAN",className:`\r relative z-10\r w-full\r max-w-[300px]\r md:max-w-[420px]\r lg:max-w-[450px]\r h-auto\r object-contain\r opacity-95\r drop-shadow-[0_15px_35px_rgba(0,0,0,0.25)]\r hover:scale-[1.02]\r transition-all\r duration-500\r `}),f.jsx("div",{className:"absolute bottom-0 left-0 w-full h-40 bg-gradient-to-t from-untan-navy to-transparent z-20"}),f.jsx("div",{className:"absolute top-0 left-0 h-full w-20 bg-gradient-to-r from-untan-navy to-transparent z-20"})]})]})]})}),f.jsx("div",{className:"absolute top-0 right-0 -mr-20 -mt-20 w-80 h-80 bg-untan-yellow/10 rounded-full blur-3xl pointer-events-none"})]})}function wh(r,E=1600){const[A,s]=F.useState(0),U=F.useRef(null),H=F.useRef(!1);return F.useEffect(()=>{H.current=!1;let Y,$;return $=new IntersectionObserver(([M])=>{if(M.isIntersecting&&!H.current){H.current=!0;let p=null;const q=_=>{p||(p=_);const X=Math.min((_-p)/E,1),Z=1-Math.pow(1-X,4);s(Math.round(r*Z)),X<1?Y=requestAnimationFrame(q):s(r)};Y=requestAnimationFrame(q)}},{threshold:.4}),U.current&&$.observe(U.current),()=>{$.disconnect(),Y&&cancelAnimationFrame(Y)}},[r,E]),{count:A,elRef:U}}function Dn({value:r,label:E,delay:A=0}){const{count:s,elRef:U}=wh(r,1600+A);return f.jsxs("div",{ref:U,className:"flex flex-col items-center gap-1",style:{minWidth:"clamp(5rem, 10vw, 8rem)"},children:[f.jsx("div",{className:"font-display font-black text-primary-navy leading-none tabular-nums",style:{fontSize:"clamp(2.8rem, 6vw, 5rem)"},children:s}),f.jsx("div",{className:"font-display font-bold text-primary-navy text-center leading-tight uppercase tracking-wide",style:{fontSize:"clamp(0.6rem, 1.1vw, 0.8rem)"},children:E})]})}function qd({title:r,children:E,flexClass:A="flex-1"}){return f.jsxs("div",{className:`flex flex-col gap-5 ${A}`,children:[f.jsx("div",{className:"bg-primary-navy text-white font-display font-bold text-center rounded-xl px-8 py-3 w-full uppercase tracking-wide",style:{fontSize:"clamp(0.85rem, 1.5vw, 1.05rem)"},children:r}),f.jsx("div",{className:"flex items-end justify-evenly pb-2",children:E})]})}function Lh(){const{t:r,lang:E}=Ee(),{achievements:A,projects:s}=Tf(),U=A.length,H=s.length,Y=A.filter(_=>_.level==="Internasional").length,$=A.filter(_=>_.level==="Nasional").length,M=A.filter(_=>_.level==="Regional").length,p=new Date().toLocaleDateString(E==="id"?"id-ID":"en-US",{day:"numeric",month:"long",year:"numeric"}),q=E==="id"?`Data Terkumpul Per ${p}`:`Data Collected As Of ${p}`;return f.jsxs("div",{id:"tentang",children:[f.jsx("section",{className:"relative z-10 mb-2 rounded-xl overflow-hidden shadow-[0_10px_30px_-10px_rgba(253,184,19,0.4)]",children:f.jsxs("div",{className:"bg-[#FDB813] relative px-6 md:px-10 py-7 md:py-9",children:[f.jsx("div",{className:"absolute inset-0 bg-white/5 mix-blend-overlay pointer-events-none"}),f.jsxs("div",{className:"relative flex flex-col md:flex-row md:items-start gap-8 md:gap-6",children:[f.jsxs(qd,{title:E==="id"?"Total Prestasi":"Total Achievements",flexClass:"flex-[4]",children:[f.jsx(Dn,{value:U,label:E==="id"?"prestasi mahasiswa":"student achievements",delay:0}),f.jsx(Dn,{value:Y,label:E==="id"?"internasional":"international",delay:150}),f.jsx(Dn,{value:$,label:E==="id"?"nasional":"national",delay:300}),f.jsx(Dn,{value:M,label:"regional",delay:450})]}),f.jsx(qd,{title:E==="id"?"Total Portofolio":"Total Portfolio",flexClass:"flex-[1.5]",children:f.jsx(Dn,{value:H,label:E==="id"?"proyek mahasiswa":"student projects",delay:200})})]})]})}),f.jsx("p",{className:"text-[9px] md:text-[10px] font-semibold text-slate-400 tracking-wide mb-16 text-right pr-1",children:q})]})}/** * @license lucide-react v0.546.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Gh=r=>r.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),Qh=r=>r.replace(/^([A-Z])|[\s-_]+(\w)/g,(E,A,s)=>s?s.toUpperCase():A.toLowerCase()),Yd=r=>{const E=Qh(r);return E.charAt(0).toUpperCase()+E.slice(1)},Qd=(...r)=>r.filter((E,A,s)=>!!E&&E.trim()!==""&&s.indexOf(E)===A).join(" ").trim(),Xh=r=>{for(const E in r)if(E.startsWith("aria-")||E==="role"||E==="title")return!0};/** * @license lucide-react v0.546.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */var Zh={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"};/** * @license lucide-react v0.546.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Vh=F.forwardRef(({color:r="currentColor",size:E=24,strokeWidth:A=2,absoluteStrokeWidth:s,className:U="",children:H,iconNode:Y,...$},M)=>F.createElement("svg",{ref:M,...Zh,width:E,height:E,stroke:r,strokeWidth:s?Number(A)*24/Number(E):A,className:Qd("lucide",U),...!H&&!Xh($)&&{"aria-hidden":"true"},...$},[...Y.map(([p,q])=>F.createElement(p,q)),...Array.isArray(H)?H:[H]]));/** * @license lucide-react v0.546.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Zl=(r,E)=>{const A=F.forwardRef(({className:s,...U},H)=>F.createElement(Vh,{ref:H,iconNode:E,className:Qd(`lucide-${Gh(Yd(r))}`,`lucide-${r}`,s),...U}));return A.displayName=Yd(r),A};/** * @license lucide-react v0.546.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Kh=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]],kh=Zl("arrow-right",Kh);/** * @license lucide-react v0.546.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Jh=[["path",{d:"m15.477 12.89 1.515 8.526a.5.5 0 0 1-.81.47l-3.58-2.687a1 1 0 0 0-1.197 0l-3.586 2.686a.5.5 0 0 1-.81-.469l1.514-8.526",key:"1yiouv"}],["circle",{cx:"12",cy:"8",r:"6",key:"1vp47v"}]],$h=Zl("award",Jh);/** * @license lucide-react v0.546.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Wh=[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]],Xd=Zl("book-open",Wh);/** * @license lucide-react v0.546.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Fh=[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]],On=Zl("calendar",Fh);/** * @license lucide-react v0.546.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Ih=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],Pt=Zl("chevron-down",Ih);/** * @license lucide-react v0.546.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Ph=[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]],ly=Zl("chevron-left",Ph);/** * @license lucide-react v0.546.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const ty=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],ey=Zl("chevron-right",ty);/** * @license lucide-react v0.546.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const ay=[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]],Zd=Zl("external-link",ay);/** * @license lucide-react v0.546.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const ny=[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]],uy=Zl("file-text",ny);/** * @license lucide-react v0.546.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const iy=[["path",{d:"M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z",key:"sc7q7i"}]],Vd=Zl("funnel",iy);/** * @license lucide-react v0.546.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const cy=[["path",{d:"M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719",key:"1sd12s"}]],fy=Zl("message-circle",cy);/** * @license lucide-react v0.546.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const sy=[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],Kd=Zl("search",sy);/** * @license lucide-react v0.546.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const oy=[["path",{d:"M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z",key:"vktsd0"}],["circle",{cx:"7.5",cy:"7.5",r:".5",fill:"currentColor",key:"kqv944"}]],Fu=Zl("tag",oy);/** * @license lucide-react v0.546.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const ry=[["path",{d:"M10 14.66v1.626a2 2 0 0 1-.976 1.696A5 5 0 0 0 7 21.978",key:"1n3hpd"}],["path",{d:"M14 14.66v1.626a2 2 0 0 0 .976 1.696A5 5 0 0 1 17 21.978",key:"rfe1zi"}],["path",{d:"M18 9h1.5a1 1 0 0 0 0-5H18",key:"7xy6bh"}],["path",{d:"M4 22h16",key:"57wxv0"}],["path",{d:"M6 9a6 6 0 0 0 12 0V3a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1z",key:"1mhfuq"}],["path",{d:"M6 9H4.5a1 1 0 0 1 0-5H6",key:"tex48p"}]],kd=Zl("trophy",ry);/** * @license lucide-react v0.546.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const dy=[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]],my=Zl("user",dy);/** * @license lucide-react v0.546.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const hy=[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]],Jd=Zl("users",hy);/** * @license lucide-react v0.546.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const yy=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],Ca=Zl("x",yy);function vy({achievement:r,onReadMore:E}){const{t:A}=Ee();return f.jsxs("article",{className:"bg-white rounded-lg overflow-hidden group hover:-translate-y-1 transition-all duration-300 shadow-md hover:shadow-xl border border-slate-200 flex flex-col h-full relative",children:[f.jsx("div",{className:"absolute top-0 left-0 w-full h-1 bg-primary-navy z-10 group-hover:bg-primary-gold transition-colors"}),f.jsxs("div",{className:"relative h-56 overflow-hidden bg-slate-100",children:[f.jsx("img",{src:r.image,alt:r.title,className:"w-full h-full object-cover group-hover:scale-105 transition-transform duration-500",referrerPolicy:"no-referrer",onError:s=>{s.target.src="https://placehold.co/800x600/003150/FDB813?text=Informatika+UNTAN"}}),f.jsxs("div",{className:"absolute top-3 left-3 bg-white/95 backdrop-blur text-primary-navy font-bold px-3 py-1 rounded shadow-sm flex items-center gap-1.5 text-xs",children:[f.jsx(kd,{size:14,className:"text-primary-gold"}),r.rank]})]}),f.jsxs("div",{className:"p-6 flex flex-col flex-grow",children:[f.jsxs("div",{className:"flex items-center gap-3 mb-3",children:[f.jsx("span",{className:"text-untan-blue text-xs font-bold uppercase tracking-wider",children:r.category}),f.jsxs("span",{className:"text-slate-400 text-xs font-medium flex items-center gap-1 border-l border-slate-300 pl-3",children:[f.jsx(On,{size:12}),r.year]})]}),f.jsx("h3",{className:"text-xl font-bold font-display text-primary-navy mb-3 leading-snug group-hover:text-untan-blue transition-colors",children:r.title}),f.jsx("p",{className:"text-slate-600 text-sm leading-relaxed mb-6 line-clamp-3",children:r.description}),f.jsxs("div",{className:"mt-auto border-t border-slate-100 pt-4",children:[f.jsxs("div",{className:"flex justify-between items-center mb-4",children:[f.jsxs("div",{className:"flex items-center gap-3",children:[f.jsx("div",{className:"w-8 h-8 rounded bg-primary-navy/5 flex items-center justify-center text-primary-navy font-bold text-xs ring-1 ring-primary-navy/10",children:r.avatar}),f.jsxs("div",{children:[f.jsx("span",{className:"font-bold text-slate-800 block text-sm",children:r.team}),f.jsx("span",{className:"text-slate-500 block text-xs",children:r.generation})]})]}),f.jsx("span",{className:"bg-slate-100 text-slate-600 text-[10px] px-2 py-1 rounded font-bold uppercase tracking-wide",children:r.level})]}),f.jsx("button",{onClick:()=>E(r),className:"w-full py-2.5 rounded bg-primary-navy/5 text-primary-navy font-bold hover:bg-primary-navy hover:text-white transition-all duration-300 text-sm min-h-[44px]",children:A.achievement.readMore})]})]})]})}function Oa({icon:r,label:E,value:A}){return f.jsxs("div",{className:"flex gap-2.5 items-start",children:[f.jsx("span",{className:"text-primary-gold mt-0.5 shrink-0",children:r}),f.jsxs("div",{children:[f.jsx("p",{className:"text-[10px] font-bold uppercase tracking-wider text-slate-400 leading-none mb-1",children:E}),f.jsx("p",{className:"text-sm font-semibold text-slate-800 leading-snug",children:A})]})]})}function gy({achievement:r,onClose:E}){const{t:A}=Ee();return r?f.jsx("div",{className:"fixed inset-0 z-[300] flex items-center justify-center p-4 bg-black/60 backdrop-blur-sm",onClick:E,"aria-modal":"true",role:"dialog","aria-label":r.title,children:f.jsxs("div",{className:"bg-white rounded-xl max-w-2xl w-full max-h-[90vh] overflow-y-auto shadow-2xl animate-fade-in",onClick:s=>s.stopPropagation(),children:[f.jsxs("div",{className:"relative h-56 overflow-hidden rounded-t-xl bg-slate-200 shrink-0",children:[f.jsx("img",{src:r.image,alt:r.title,className:"w-full h-full object-cover",referrerPolicy:"no-referrer"}),f.jsx("div",{className:"absolute inset-0 bg-gradient-to-t from-black/80 via-black/20 to-transparent"}),f.jsx("button",{onClick:E,"aria-label":A.modal.close,className:"absolute top-3 right-3 w-9 h-9 bg-white/90 backdrop-blur rounded-full flex items-center justify-center hover:bg-white transition-colors shadow-md",children:f.jsx(Ca,{size:18,className:"text-slate-700"})}),f.jsxs("div",{className:"absolute bottom-4 left-4 flex gap-2",children:[f.jsxs("span",{className:"bg-primary-gold text-slate-900 text-xs font-bold px-3 py-1.5 rounded flex items-center gap-1.5",children:[f.jsx(kd,{size:12}),r.rank]}),f.jsx("span",{className:"bg-white/20 backdrop-blur text-white text-xs font-bold px-3 py-1.5 rounded uppercase tracking-wide",children:r.level})]})]}),f.jsxs("div",{className:"p-6",children:[f.jsx("div",{className:"mb-1",children:f.jsx("span",{className:"text-primary-untan-blue text-xs font-bold uppercase tracking-wider",children:r.category})}),f.jsx("h2",{className:"text-xl font-bold text-primary-navy leading-snug mb-5",children:r.title}),f.jsxs("div",{className:"grid grid-cols-2 gap-4 p-4 bg-slate-50 rounded-lg mb-5",children:[f.jsx(Oa,{icon:f.jsx(Jd,{size:14}),label:A.modal.tim,value:r.team}),r.nim&&f.jsx(Oa,{icon:f.jsx(Xd,{size:14}),label:A.modal.nim,value:r.nim}),f.jsx(Oa,{icon:f.jsx(On,{size:14}),label:A.modal.angkatan,value:r.generation}),f.jsx(Oa,{icon:f.jsx(On,{size:14}),label:A.modal.tahun,value:String(r.year)}),f.jsx(Oa,{icon:f.jsx($h,{size:14}),label:A.modal.kompetisi,value:r.competition}),f.jsx(Oa,{icon:f.jsx(Fu,{size:14}),label:A.modal.bidang,value:r.category})]}),r.members&&r.members.length>0&&f.jsxs("div",{className:"border-t border-slate-100 pt-4 mb-4",children:[f.jsx("p",{className:"text-[10px] font-bold uppercase tracking-wider text-slate-400 mb-2",children:"Anggota Tim"}),f.jsx("ul",{className:"grid grid-cols-1 sm:grid-cols-2 gap-2",children:r.members.map((s,U)=>f.jsxs("li",{className:"flex items-center gap-2 bg-slate-50 px-3 py-2 rounded-md",children:[f.jsx("span",{className:"w-6 h-6 rounded-full bg-primary-gold/20 text-primary-gold flex items-center justify-center text-xs font-bold shrink-0",children:s.nama.charAt(0).toUpperCase()}),f.jsxs("div",{className:"flex flex-col",children:[f.jsx("span",{className:"text-sm font-semibold text-slate-700 leading-none",children:s.nama}),s.angkatan&&f.jsxs("span",{className:"text-[10px] text-slate-500 mt-1",children:["Angkatan ",s.angkatan]})]})]},U))})]}),f.jsxs("div",{className:"border-t border-slate-100 pt-4",children:[f.jsx("p",{className:"text-[10px] font-bold uppercase tracking-wider text-slate-400 mb-2",children:A.modal.deskripsi}),f.jsx("p",{className:"text-slate-600 text-sm leading-relaxed",children:r.description.replace(/\*\*/g,"")})]}),f.jsx("button",{onClick:E,className:"mt-6 w-full py-3 bg-primary-navy text-white font-bold rounded-lg hover:bg-untan-blue transition-colors duration-200 text-sm",children:A.modal.close})]})]})}):null}const ze=3,by=3;function py(){const{t:r}=Ee(),{achievements:E,loading:A,error:s,refetch:U}=Tf(),[H,Y]=F.useState(""),[$,M]=F.useState(""),[p,q]=F.useState(""),[_,X]=F.useState(""),[Z,tl]=F.useState(ze),[Nl,Sl]=F.useState(null),_l=F.useMemo(()=>[...new Set(E.map(z=>z.category))].sort(),[E]),Vl=F.useMemo(()=>[...new Set(E.map(z=>z.year))].sort((z,G)=>G-z),[E]),yl=F.useMemo(()=>{const z=H.toLowerCase().trim();return E.filter(G=>{const kl=!z||G.title.toLowerCase().includes(z)||G.team.toLowerCase().includes(z)||G.category.toLowerCase().includes(z)||G.competition.toLowerCase().includes(z),it=!$||G.level===$,$l=!p||G.category===p,S=!_||String(G.year)===_;return kl&&it&&$l&&S})},[H,$,p,_,E]),Ml=yl.slice(0,Z),Kl=Z{Y(""),M(""),q(""),X(""),tl(ze)},Dl=z=>G=>{z(G),tl(ze)},Il=()=>tl(z=>z+by),Et=()=>{var z;tl(ze),(z=document.getElementById("achievement-grid-section"))==null||z.scrollIntoView({behavior:"smooth",block:"start"})};return f.jsxs(f.Fragment,{children:[f.jsx(gy,{achievement:Nl,onClose:()=>Sl(null)}),f.jsxs("section",{id:"achievement-grid-section",className:"py-8 bg-white",children:[f.jsxs("div",{className:"max-w-7xl mx-auto px-4 lg:px-8 mb-8",children:[f.jsx("h2",{className:"text-3xl md:text-4xl font-black font-display text-primary-navy mb-2",children:r.achievement.sectionTitle}),f.jsx("p",{className:"text-slate-500 text-base max-w-2xl",children:r.achievement.sectionDesc})]}),f.jsxs("div",{className:"max-w-7xl mx-auto px-4 lg:px-8",children:[f.jsxs("div",{className:"bg-white/80 backdrop-blur-md p-4 rounded-lg shadow-sm border-t-4 border-primary-gold mb-8 space-y-3",children:[f.jsxs("div",{className:"flex items-center justify-between",children:[f.jsxs("div",{className:"text-base font-bold font-display text-primary-navy flex items-center gap-2",children:[f.jsx(Vd,{className:"text-primary-navy",size:18}),r.achievement.filterTitle]}),Rl&&f.jsxs("button",{onClick:W,className:"flex items-center gap-1 text-xs font-bold text-slate-500 hover:text-primary-navy transition-colors",children:[f.jsx(Ca,{size:13}),r.achievement.resetFilter]})]}),f.jsxs("div",{className:"relative",children:[f.jsx(Kd,{size:15,className:"absolute left-3 top-1/2 -translate-y-1/2 text-slate-400 pointer-events-none"}),f.jsx("input",{id:"search-achievement",type:"text",value:H,onChange:z=>{Y(z.target.value),tl(ze)},placeholder:r.achievement.searchPlaceholder,className:"w-full bg-slate-50 text-slate-700 text-sm rounded py-2 pl-9 pr-4 border border-slate-200 focus:outline-none focus:ring-2 focus:ring-primary-gold"}),H&&f.jsx("button",{onClick:()=>{Y(""),tl(ze)},className:"absolute right-3 top-1/2 -translate-y-1/2 text-slate-400 hover:text-slate-600","aria-label":"Hapus pencarian",children:f.jsx(Ca,{size:14})})]}),f.jsxs("div",{className:"flex flex-wrap gap-3",children:[f.jsxs("div",{className:"relative flex-1 min-w-[130px]",children:[f.jsxs("select",{id:"filter-level",value:$,onChange:z=>Dl(M)(z.target.value),className:"w-full bg-slate-50 text-slate-700 font-bold text-sm rounded py-2 pl-4 pr-9 shadow-sm focus:ring-2 focus:ring-primary-gold appearance-none cursor-pointer border border-slate-200",children:[f.jsx("option",{value:"",children:r.achievement.allLevel}),f.jsx("option",{value:"Internasional",children:"Internasional"}),f.jsx("option",{value:"Nasional",children:"Nasional"}),f.jsx("option",{value:"Regional",children:"Regional"})]}),f.jsx(Pt,{size:14,className:"absolute right-3 top-1/2 -translate-y-1/2 text-slate-400 pointer-events-none"})]}),f.jsxs("div",{className:"relative flex-1 min-w-[130px]",children:[f.jsxs("select",{id:"filter-category",value:p,onChange:z=>Dl(q)(z.target.value),className:"w-full bg-slate-50 text-slate-700 font-bold text-sm rounded py-2 pl-4 pr-9 shadow-sm focus:ring-2 focus:ring-primary-gold appearance-none cursor-pointer border border-slate-200",children:[f.jsx("option",{value:"",children:r.achievement.allField}),_l.map(z=>f.jsx("option",{value:z,children:z},z))]}),f.jsx(Pt,{size:14,className:"absolute right-3 top-1/2 -translate-y-1/2 text-slate-400 pointer-events-none"})]}),f.jsxs("div",{className:"relative flex-1 min-w-[100px]",children:[f.jsxs("select",{id:"filter-year",value:_,onChange:z=>Dl(X)(z.target.value),className:"w-full bg-slate-50 text-slate-700 font-bold text-sm rounded py-2 pl-4 pr-9 shadow-sm focus:ring-2 focus:ring-primary-gold appearance-none cursor-pointer border border-slate-200",children:[f.jsx("option",{value:"",children:r.achievement.allYear}),Vl.map(z=>f.jsx("option",{value:String(z),children:z},z))]}),f.jsx(Pt,{size:14,className:"absolute right-3 top-1/2 -translate-y-1/2 text-slate-400 pointer-events-none"})]})]})]}),Rl&&f.jsxs("p",{className:"text-sm text-slate-500 font-medium mb-6",children:[r.achievement.showing," ",f.jsx("span",{className:"font-bold text-primary-navy",children:yl.length})," ",r.achievement.matching]}),A?f.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-10",children:[1,2,3].map(z=>f.jsxs("div",{className:"bg-white rounded-lg border border-slate-200 overflow-hidden shadow-sm animate-pulse",children:[f.jsx("div",{className:"h-52 bg-slate-200 w-full"}),f.jsxs("div",{className:"p-6 space-y-4",children:[f.jsx("div",{className:"h-4 bg-slate-200 rounded w-1/4"}),f.jsx("div",{className:"h-6 bg-slate-200 rounded w-3/4"}),f.jsx("div",{className:"h-4 bg-slate-200 rounded w-5/6"}),f.jsx("div",{className:"h-4 bg-slate-200 rounded w-2/3"}),f.jsx("div",{className:"h-10 bg-slate-200 rounded w-1/3 mt-4"})]})]},z))}):s?f.jsxs("div",{className:"text-center py-20 text-red-500",children:[f.jsx("p",{className:"text-lg font-semibold",children:"Gagal memuat data"}),f.jsx("p",{className:"text-sm mt-1",children:s}),f.jsx("button",{onClick:U,className:"mt-4 px-4 py-2 bg-primary-navy text-white font-bold rounded hover:bg-opacity-95 transition-all text-sm",children:"Coba Lagi"})]}):Ml.length===0?f.jsxs("div",{className:"text-center py-20 text-slate-400",children:[f.jsx("p",{className:"text-lg font-semibold",children:r.achievement.noData}),f.jsx("p",{className:"text-sm mt-1",children:r.achievement.noDataSub})]}):f.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-10",children:Ml.map(z=>f.jsx("div",{className:"animate-fade-in",children:f.jsx(vy,{achievement:z,onReadMore:G=>Sl(G)})},z.id))}),f.jsxs("div",{className:"mt-20 flex flex-wrap items-center justify-center gap-6",children:[Kl&&f.jsxs("button",{id:"load-more-achievement",onClick:Il,className:"text-primary-navy font-black text-lg underline underline-offset-[12px] decoration-primary-gold decoration-4 hover:text-primary-gold transition-colors flex items-center gap-2",children:[r.achievement.loadMore,f.jsx(Pt,{size:20})]}),!Kl&&Ml.length>0&&yl.length>ze&&f.jsxs("p",{className:"text-slate-400 text-sm font-medium",children:[r.achievement.showing," ",yl.length," ",r.achievement.allShown]}),Z>ze&&Ml.length>0&&f.jsxs("button",{onClick:Et,className:"text-slate-400 font-bold text-sm underline underline-offset-4 decoration-slate-300 decoration-2 hover:text-slate-600 transition-colors flex items-center gap-1.5",children:[f.jsx(Pt,{size:16,className:"rotate-180"}),r.achievement.showLess]})]})]})]})]})}function Wu({icon:r,label:E,value:A}){return f.jsxs("div",{className:"flex gap-2.5 items-start",children:[f.jsx("span",{className:"text-primary-gold mt-0.5 shrink-0",children:r}),f.jsxs("div",{children:[f.jsx("p",{className:"text-[10px] font-bold uppercase tracking-wider text-slate-400 leading-none mb-1",children:E}),f.jsx("p",{className:"text-sm font-semibold text-slate-800 leading-snug",children:A})]})]})}function xy({project:r,onClose:E}){const{t:A}=Ee();return r?f.jsx("div",{className:"fixed inset-0 z-[300] flex items-center justify-center p-4 bg-black/60 backdrop-blur-sm",onClick:E,"aria-modal":"true",role:"dialog","aria-label":r.title,children:f.jsxs("div",{className:"bg-white rounded-xl max-w-2xl w-full max-h-[90vh] overflow-y-auto shadow-2xl animate-fade-in",onClick:s=>s.stopPropagation(),children:[f.jsxs("div",{className:"relative h-56 overflow-hidden rounded-t-xl bg-slate-200 shrink-0",children:[f.jsx("img",{src:r.image,alt:r.title,className:"w-full h-full object-cover",referrerPolicy:"no-referrer"}),f.jsx("div",{className:"absolute inset-0 bg-gradient-to-t from-black/80 via-black/20 to-transparent"}),f.jsx("button",{onClick:E,"aria-label":A.modal.close,className:"absolute top-3 right-3 w-9 h-9 bg-white/90 backdrop-blur rounded-full flex items-center justify-center hover:bg-white transition-colors shadow-md",children:f.jsx(Ca,{size:18,className:"text-slate-700"})}),r.category&&r.category.length>0&&f.jsx("div",{className:"absolute bottom-4 left-4 flex flex-wrap gap-2",children:r.category.map((s,U)=>f.jsxs("span",{className:"bg-primary-gold text-slate-900 text-xs font-bold px-3 py-1.5 rounded flex items-center gap-1.5 uppercase tracking-wide",children:[f.jsx(Fu,{size:12}),s]},U))})]}),f.jsxs("div",{className:"p-6",children:[f.jsx("h2",{className:"text-xl font-bold text-primary-navy leading-snug mb-5",children:r.title}),f.jsxs("div",{className:"grid grid-cols-2 gap-4 p-4 bg-slate-50 rounded-lg mb-5",children:[r.studentName&&f.jsx(Wu,{icon:f.jsx(Jd,{size:14}),label:A.modal.mahasiswa,value:r.studentName}),r.nim&&f.jsx(Wu,{icon:f.jsx(Xd,{size:14}),label:A.modal.nim,value:r.nim}),r.year&&f.jsx(Wu,{icon:f.jsx(On,{size:14}),label:A.modal.tahun,value:String(r.year)}),r.category&&r.category.length>0&&f.jsx(Wu,{icon:f.jsx(Fu,{size:14}),label:A.modal.bidang,value:r.category.join(", ")})]}),r.members&&r.members.length>0&&f.jsxs("div",{className:"border-t border-slate-100 pt-4 mb-4",children:[f.jsx("p",{className:"text-[10px] font-bold uppercase tracking-wider text-slate-400 mb-2",children:"Anggota Tim"}),f.jsx("ul",{className:"grid grid-cols-1 sm:grid-cols-2 gap-2",children:r.members.map((s,U)=>f.jsxs("li",{className:"flex items-center gap-2 bg-slate-50 px-3 py-2 rounded-md border border-slate-100",children:[f.jsx("span",{className:"w-6 h-6 rounded-full bg-primary-gold/20 text-primary-gold flex items-center justify-center text-xs font-bold shrink-0",children:s.nama.charAt(0).toUpperCase()}),f.jsxs("div",{className:"flex flex-col",children:[f.jsx("span",{className:"text-sm font-semibold text-slate-700 leading-none",children:s.nama}),s.nim&&f.jsx("span",{className:"text-[10px] text-slate-500 mt-1",children:s.nim})]})]},U))})]}),f.jsxs("div",{className:"border-t border-slate-100 pt-4 mb-5",children:[f.jsx("p",{className:"text-[10px] font-bold uppercase tracking-wider text-slate-400 mb-2",children:A.modal.deskripsi}),f.jsx("p",{className:"text-slate-600 text-sm leading-relaxed",children:r.description}),r.catatan&&f.jsxs("div",{className:"mt-4 p-3 bg-blue-50/50 border border-blue-100 rounded-lg",children:[f.jsx("p",{className:"text-[10px] font-bold uppercase tracking-wider text-blue-400 mb-1",children:"Catatan Tambahan"}),f.jsx("p",{className:"text-sm text-slate-600 italic",children:r.catatan})]})]}),r.link?f.jsxs("a",{href:r.link,target:"_blank",rel:"noopener noreferrer",className:"flex items-center justify-center gap-2 w-full py-3 bg-primary-navy text-white font-bold rounded-lg hover:bg-untan-blue transition-colors duration-200 text-sm mb-3",children:[f.jsx(Zd,{size:16}),A.project.visitLink]}):f.jsxs("div",{className:"flex items-center justify-center gap-2 w-full py-3 bg-slate-100 text-slate-400 font-bold rounded-lg text-sm mb-3 cursor-not-allowed",children:[f.jsx(uy,{size:16}),A.project.noLink]}),f.jsx("button",{onClick:E,className:"w-full py-2.5 border-2 border-slate-200 text-slate-600 font-bold rounded-lg hover:border-slate-300 hover:bg-slate-50 transition-colors duration-200 text-sm",children:A.modal.close})]})]})}):null}const Ae=6,Sy=3;function Ny(){const{t:r}=Ee(),{projects:E,loading:A,error:s,refetch:U}=Tf(),H=F.useRef(null),[Y,$]=F.useState(null),[M,p]=F.useState(Ae),[q,_]=F.useState(""),[X,Z]=F.useState(""),[tl,Nl]=F.useState(""),Sl=F.useMemo(()=>[...new Set(E.flatMap(z=>z.category))].sort(),[E]),_l=F.useMemo(()=>[...new Set(E.map(z=>z.year))].sort((z,G)=>G-z),[E]),Vl=F.useMemo(()=>{const z=q.toLowerCase().trim();return E.filter(G=>{const kl=!z||G.title.toLowerCase().includes(z)||G.studentName.toLowerCase().includes(z)||G.category.join(" ").toLowerCase().includes(z)||G.description.toLowerCase().includes(z),it=!X||G.category.includes(X),$l=!tl||String(G.year)===tl;return kl&&it&&$l})},[q,X,tl,E]),yl=Vl.slice(0,M),Ml=M{_(""),Z(""),Nl(""),p(Ae)},W=z=>G=>{z(G),p(Ae)},Dl=()=>p(z=>z+Sy),Il=()=>{var z;p(Ae),(z=document.getElementById("portofolio"))==null||z.scrollIntoView({behavior:"smooth",block:"start"})},Et=z=>{const G=H.current;if(!G)return;const kl=G.firstElementChild?G.firstElementChild.offsetWidth+24:400;G.scrollBy({left:z==="right"?kl:-kl,behavior:"smooth"})};return f.jsxs(f.Fragment,{children:[f.jsx(xy,{project:Y,onClose:()=>$(null)}),f.jsx("section",{id:"portofolio",className:"py-16 bg-white relative overflow-hidden border-t border-slate-100",children:f.jsxs("div",{className:"max-w-7xl mx-auto px-4 lg:px-8",children:[f.jsxs("div",{className:"flex items-start justify-between mb-8 gap-4",children:[f.jsxs("div",{children:[f.jsx("h2",{className:"text-3xl md:text-4xl font-black font-display text-primary-navy mb-3",children:r.project.sectionTitle}),f.jsx("p",{className:"text-base text-slate-500 font-medium max-w-2xl",children:r.project.sectionDesc})]}),f.jsxs("div",{className:"flex items-center gap-2 shrink-0 mt-1",children:[f.jsx("button",{onClick:()=>Et("left"),"aria-label":"Geser kiri",className:"w-10 h-10 rounded-full border-2 border-primary-navy/20 flex items-center justify-center text-primary-navy hover:bg-primary-navy hover:text-white hover:border-primary-navy transition-all duration-200 shadow-sm",children:f.jsx(ly,{size:20})}),f.jsx("button",{onClick:()=>Et("right"),"aria-label":"Geser kanan",className:"w-10 h-10 rounded-full border-2 border-primary-navy/20 flex items-center justify-center text-primary-navy hover:bg-primary-navy hover:text-white hover:border-primary-navy transition-all duration-200 shadow-sm",children:f.jsx(ey,{size:20})})]})]}),f.jsxs("div",{className:"bg-white/80 backdrop-blur-md p-4 rounded-lg shadow-sm border-t-4 border-primary-gold mb-8 space-y-3",children:[f.jsxs("div",{className:"flex items-center justify-between",children:[f.jsxs("div",{className:"text-base font-bold font-display text-primary-navy flex items-center gap-2",children:[f.jsx(Vd,{className:"text-primary-navy",size:18}),r.project.filterTitle]}),Kl&&f.jsxs("button",{onClick:Rl,className:"flex items-center gap-1 text-xs font-bold text-slate-500 hover:text-primary-navy transition-colors",children:[f.jsx(Ca,{size:13}),r.project.resetFilter]})]}),f.jsxs("div",{className:"relative",children:[f.jsx(Kd,{size:15,className:"absolute left-3 top-1/2 -translate-y-1/2 text-slate-400 pointer-events-none"}),f.jsx("input",{id:"search-project",type:"text",value:q,onChange:z=>{_(z.target.value),p(Ae)},placeholder:r.project.searchPlaceholder,className:"w-full bg-slate-50 text-slate-700 text-sm rounded py-2 pl-9 pr-4 border border-slate-200 focus:outline-none focus:ring-2 focus:ring-primary-gold"}),q&&f.jsx("button",{onClick:()=>{_(""),p(Ae)},className:"absolute right-3 top-1/2 -translate-y-1/2 text-slate-400 hover:text-slate-600","aria-label":"Hapus pencarian",children:f.jsx(Ca,{size:14})})]}),f.jsxs("div",{className:"flex flex-wrap gap-3",children:[f.jsxs("div",{className:"relative flex-1 min-w-[160px]",children:[f.jsxs("select",{id:"filter-project-category",value:X,onChange:z=>W(Z)(z.target.value),className:"w-full bg-slate-50 text-slate-700 font-bold text-sm rounded py-2 pl-4 pr-9 shadow-sm focus:ring-2 focus:ring-primary-gold appearance-none cursor-pointer border border-slate-200",children:[f.jsx("option",{value:"",children:r.project.allField}),Sl.map(z=>f.jsx("option",{value:z,children:z},z))]}),f.jsx(Pt,{size:14,className:"absolute right-3 top-1/2 -translate-y-1/2 text-slate-400 pointer-events-none"})]}),f.jsxs("div",{className:"relative flex-1 min-w-[120px]",children:[f.jsxs("select",{id:"filter-project-year",value:tl,onChange:z=>W(Nl)(z.target.value),className:"w-full bg-slate-50 text-slate-700 font-bold text-sm rounded py-2 pl-4 pr-9 shadow-sm focus:ring-2 focus:ring-primary-gold appearance-none cursor-pointer border border-slate-200",children:[f.jsx("option",{value:"",children:r.project.allYear}),_l.map(z=>f.jsx("option",{value:String(z),children:z},z))]}),f.jsx(Pt,{size:14,className:"absolute right-3 top-1/2 -translate-y-1/2 text-slate-400 pointer-events-none"})]})]})]}),Kl&&f.jsxs("p",{className:"text-sm text-slate-500 font-medium mb-6",children:[r.project.showing," ",f.jsx("span",{className:"font-bold text-primary-navy",children:Vl.length})," ",r.project.matching]}),A?f.jsx("div",{className:"flex gap-6 overflow-x-auto pb-10 hide-scrollbar",children:[1,2,3].map(z=>f.jsxs("div",{className:"snap-start shrink-0 proj-card bg-white rounded-lg border border-slate-200 overflow-hidden shadow-md animate-pulse flex flex-col",children:[f.jsx("div",{className:"h-52 bg-slate-200 w-full"}),f.jsxs("div",{className:"p-5 space-y-4 flex-grow flex flex-col justify-between",children:[f.jsxs("div",{className:"space-y-2",children:[f.jsx("div",{className:"h-4 bg-slate-200 rounded w-1/4"}),f.jsx("div",{className:"h-5 bg-slate-200 rounded w-3/4"}),f.jsx("div",{className:"h-4 bg-slate-200 rounded w-5/6"}),f.jsx("div",{className:"h-4 bg-slate-200 rounded w-2/3"})]}),f.jsx("div",{className:"h-10 bg-slate-200 rounded w-1/3 mt-4"})]})]},z))}):s?f.jsxs("div",{className:"text-center py-10 text-red-500 w-full",children:[f.jsx("p",{className:"text-lg font-semibold",children:"Gagal memuat portofolio"}),f.jsx("p",{className:"text-sm mt-1",children:s}),f.jsx("button",{onClick:U,className:"mt-4 px-4 py-2 bg-primary-navy text-white font-bold rounded hover:bg-opacity-95 transition-all text-sm",children:"Coba Lagi"})]}):yl.length===0?f.jsxs("div",{className:"text-center py-20 text-slate-400",children:[f.jsx("p",{className:"text-lg font-semibold",children:r.project.noData}),f.jsx("p",{className:"text-sm mt-1",children:r.project.noDataSub})]}):f.jsxs(f.Fragment,{children:[f.jsx("div",{ref:H,className:"flex gap-6 overflow-x-auto pb-10 hide-scrollbar snap-x snap-mandatory",style:{scrollbarWidth:"none",msOverflowStyle:"none"},children:yl.map(z=>f.jsxs("div",{className:"snap-start shrink-0 proj-card bg-white rounded-lg overflow-hidden shadow-md border border-slate-200 group flex flex-col relative",children:[f.jsx("div",{className:"absolute top-0 left-0 w-1 h-full bg-primary-gold z-10 transition-transform origin-bottom group-hover:scale-y-110"}),f.jsxs("div",{className:"h-52 overflow-hidden relative",children:[f.jsx("img",{src:z.image,alt:z.title,className:"w-full h-full object-cover group-hover:scale-105 transition-transform duration-500",referrerPolicy:"no-referrer",onError:G=>{G.target.src="https://placehold.co/800x600/003150/FDB813?text=Informatika+UNTAN"}}),f.jsxs("div",{className:"absolute inset-0 bg-gradient-to-t from-primary-navy/80 to-transparent p-5 flex flex-col justify-end",children:[f.jsx("h4",{className:"text-lg font-bold font-display text-white leading-snug mb-1",children:z.title}),z.category&&z.category.length>0&&f.jsx("div",{className:"flex flex-wrap gap-2 mt-1",children:z.category.map((G,kl)=>f.jsxs("span",{className:"inline-flex items-center gap-1 text-[10px] font-bold text-primary-gold uppercase tracking-wider bg-black/30 px-2 py-1 rounded backdrop-blur-sm",children:[f.jsx(Fu,{size:10}),G]},kl))})]})]}),f.jsxs("div",{className:"p-5 flex flex-col flex-grow",children:[f.jsxs("div",{className:"flex flex-wrap items-center gap-3 mb-3 text-xs text-slate-500 font-medium",children:[z.studentName&&f.jsxs("span",{className:"flex items-center gap-1",children:[f.jsx(my,{size:11,className:"text-slate-400"}),z.studentName]}),z.year&&f.jsxs("span",{className:"flex items-center gap-1",children:[f.jsx(On,{size:11,className:"text-slate-400"}),z.year]})]}),f.jsx("p",{className:"text-slate-600 text-sm leading-relaxed mb-5 flex-grow line-clamp-3",children:z.description}),f.jsxs("div",{className:"flex items-center gap-3 mt-auto",children:[f.jsxs("button",{onClick:()=>$(z),className:"text-primary-navy font-bold text-sm tracking-wide hover:text-untan-blue flex items-center gap-2 group/btn",style:{minHeight:"44px"},children:[r.project.readMore,f.jsx(kh,{size:15,className:"group-hover/btn:translate-x-1 transition-transform"})]}),z.link&&f.jsxs("a",{href:z.link,target:"_blank",rel:"noopener noreferrer",className:"ml-auto flex items-center gap-1.5 text-xs font-bold text-slate-500 hover:text-primary-navy transition-colors border border-slate-200 hover:border-primary-navy/30 rounded px-3 py-2",style:{minHeight:"44px"},children:[f.jsx(Zd,{size:13}),r.project.visitLink]})]})]})]},z.id))}),f.jsx("p",{className:"text-center text-xs text-slate-400 font-medium mt-2 select-none",children:r.project.scrollHint}),f.jsxs("div",{className:"mt-10 flex flex-wrap items-center justify-center gap-6",children:[Ml&&f.jsxs("button",{id:"load-more-project",onClick:Dl,className:"text-primary-navy font-black text-base underline underline-offset-[10px] decoration-primary-gold decoration-4 hover:text-primary-gold transition-colors flex items-center gap-2",children:[r.project.loadMore,f.jsx(Pt,{size:18})]}),!Ml&&yl.length>0&&Vl.length>Ae&&f.jsxs("p",{className:"text-slate-400 text-sm font-medium",children:[r.project.showing," ",Vl.length," ",r.project.allShown]}),M>Ae&&yl.length>0&&f.jsxs("button",{onClick:Il,className:"text-slate-400 font-bold text-sm underline underline-offset-4 decoration-slate-300 decoration-2 hover:text-slate-600 transition-colors flex items-center gap-1.5",children:[f.jsx(Pt,{size:16,className:"rotate-180"}),r.project.showLess]})]})]})]})})]})}const jy="6285123456789";function Ty(){const{t:r,lang:E}=Ee(),A=`https://wa.me/${jy}?text=${encodeURIComponent(E==="id"?"Halo, saya ingin mendaftarkan prestasi atau karya saya.":"Hello, I would like to register my achievement or work.")}`;return f.jsx("section",{className:"acaab-full-bleed bg-untan-navy py-14 md:py-16 border-t border-white/10",children:f.jsx("div",{className:"max-w-7xl mx-auto px-4 lg:px-8",children:f.jsxs("div",{className:"bg-untan-yellow/10 border border-untan-yellow/20 rounded-2xl px-8 py-10 md:py-12 flex flex-col md:flex-row items-center justify-between gap-8",children:[f.jsxs("div",{className:"text-center md:text-left",children:[f.jsx("span",{className:"inline-block bg-untan-yellow text-slate-900 text-[10px] font-bold uppercase tracking-widest px-2 py-0.5 mb-4 rounded-sm",children:r.cta.badge}),f.jsx("h2",{className:"text-white text-2xl md:text-3xl font-bold font-serif leading-snug mb-3",children:r.cta.title}),f.jsx("p",{className:"text-slate-300 text-sm md:text-base leading-relaxed max-w-lg",children:r.cta.desc})]}),f.jsx("div",{className:"flex flex-col items-center gap-3 shrink-0",children:f.jsxs("a",{href:A,target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-2.5 bg-[#25D366] hover:bg-[#20c05a] text-white text-sm font-bold px-6 py-3 rounded-full transition-all hover:scale-105 shadow-lg shadow-[#25D366]/20 whitespace-nowrap",children:[f.jsx(fy,{size:18}),r.cta.waButton]})})]})})})}function zy(){return f.jsx(Oh,{children:f.jsxs(qh,{children:[f.jsx("nav",{className:"py-4","aria-label":"Breadcrumb",children:f.jsxs("ol",{className:"flex items-center text-[10px] md:text-xs text-slate-500 font-medium tracking-wide uppercase",children:[f.jsx("li",{children:f.jsx("a",{href:"https://informatika.untan.ac.id",target:"_blank",rel:"noopener noreferrer",className:"hover:text-untan-blue transition-colors",children:"Beranda"})}),f.jsx("li",{children:f.jsx("span",{className:"mx-2 text-slate-300","aria-hidden":"true",children:"/"})}),f.jsx("li",{children:f.jsx("span",{className:"text-slate-800 font-bold","aria-current":"page",children:"Mahasiswa & Prestasi"})})]})}),f.jsx(Yh,{}),f.jsxs("section",{className:"acaab-full-bleed pb-20",children:[f.jsx("div",{className:"max-w-7xl mx-auto px-4 lg:px-8",children:f.jsx(Lh,{})}),f.jsx(py,{}),f.jsx(Ny,{})]}),f.jsx(Ty,{})]})})}Eh.createRoot(document.getElementById("root")).render(f.jsx(F.StrictMode,{children:f.jsx(zy,{})}));