(function(){const r=document.createElement("link").relList;if(r&&r.supports&&r.supports("modulepreload"))return;for(const f of document.querySelectorAll('link[rel="modulepreload"]'))u(f);new MutationObserver(f=>{for(const d of f)if(d.type==="childList")for(const m of d.addedNodes)m.tagName==="LINK"&&m.rel==="modulepreload"&&u(m)}).observe(document,{childList:!0,subtree:!0});function o(f){const d={};return f.integrity&&(d.integrity=f.integrity),f.referrerPolicy&&(d.referrerPolicy=f.referrerPolicy),f.crossOrigin==="use-credentials"?d.credentials="include":f.crossOrigin==="anonymous"?d.credentials="omit":d.credentials="same-origin",d}function u(f){if(f.ep)return;f.ep=!0;const d=o(f);fetch(f.href,d)}})();const jb="modulepreload",Nb=function(s){return"/"+s},kh={},Sb=function(r,o,u){let f=Promise.resolve();if(o&&o.length>0){let m=function(p){return Promise.all(p.map(y=>Promise.resolve(y).then(v=>({status:"fulfilled",value:v}),v=>({status:"rejected",reason:v}))))};document.getElementsByTagName("link");const x=document.querySelector("meta[property=csp-nonce]"),g=(x==null?void 0:x.nonce)||(x==null?void 0:x.getAttribute("nonce"));f=m(o.map(p=>{if(p=Nb(p),p in kh)return;kh[p]=!0;const y=p.endsWith(".css"),v=y?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${p}"]${v}`))return;const N=document.createElement("link");if(N.rel=y?"stylesheet":jb,y||(N.as="script"),N.crossOrigin="",N.href=p,g&&N.setAttribute("nonce",g),document.head.appendChild(N),y)return new Promise((w,j)=>{N.addEventListener("load",w),N.addEventListener("error",()=>j(new Error(`Unable to preload CSS for ${p}`)))})}))}function d(m){const x=new Event("vite:preloadError",{cancelable:!0});if(x.payload=m,window.dispatchEvent(x),!x.defaultPrevented)throw m}return f.then(m=>{for(const x of m||[])x.status==="rejected"&&d(x.reason);return r().catch(d)})};var Lo={exports:{}},Cs={};/** * @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 Mh;function wb(){if(Mh)return Cs;Mh=1;var s=Symbol.for("react.transitional.element"),r=Symbol.for("react.fragment");function o(u,f,d){var m=null;if(d!==void 0&&(m=""+d),f.key!==void 0&&(m=""+f.key),"key"in f){d={};for(var x in f)x!=="key"&&(d[x]=f[x])}else d=f;return f=d.ref,{$$typeof:s,type:u,key:m,ref:f!==void 0?f:null,props:d}}return Cs.Fragment=r,Cs.jsx=o,Cs.jsxs=o,Cs}var Oh;function Eb(){return Oh||(Oh=1,Lo.exports=wb()),Lo.exports}var n=Eb(),Bo={exports:{}},ue={};/** * @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 Dh;function zb(){if(Dh)return ue;Dh=1;var s=Symbol.for("react.transitional.element"),r=Symbol.for("react.portal"),o=Symbol.for("react.fragment"),u=Symbol.for("react.strict_mode"),f=Symbol.for("react.profiler"),d=Symbol.for("react.consumer"),m=Symbol.for("react.context"),x=Symbol.for("react.forward_ref"),g=Symbol.for("react.suspense"),p=Symbol.for("react.memo"),y=Symbol.for("react.lazy"),v=Symbol.for("react.activity"),N=Symbol.iterator;function w(E){return E===null||typeof E!="object"?null:(E=N&&E[N]||E["@@iterator"],typeof E=="function"?E:null)}var j={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},A=Object.assign,L={};function H(E,q,J){this.props=E,this.context=q,this.refs=L,this.updater=J||j}H.prototype.isReactComponent={},H.prototype.setState=function(E,q){if(typeof E!="object"&&typeof E!="function"&&E!=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,E,q,"setState")},H.prototype.forceUpdate=function(E){this.updater.enqueueForceUpdate(this,E,"forceUpdate")};function G(){}G.prototype=H.prototype;function R(E,q,J){this.props=E,this.context=q,this.refs=L,this.updater=J||j}var Z=R.prototype=new G;Z.constructor=R,A(Z,H.prototype),Z.isPureReactComponent=!0;var X=Array.isArray;function V(){}var Y={H:null,A:null,T:null,S:null},W=Object.prototype.hasOwnProperty;function le(E,q,J){var F=J.ref;return{$$typeof:s,type:E,key:q,ref:F!==void 0?F:null,props:J}}function xe(E,q){return le(E.type,q,E.props)}function ce(E){return typeof E=="object"&&E!==null&&E.$$typeof===s}function K(E){var q={"=":"=0",":":"=2"};return"$"+E.replace(/[=:]/g,function(J){return q[J]})}var he=/\/+/g;function Xe(E,q){return typeof E=="object"&&E!==null&&E.key!=null?K(""+E.key):q.toString(36)}function ie(E){switch(E.status){case"fulfilled":return E.value;case"rejected":throw E.reason;default:switch(typeof E.status=="string"?E.then(V,V):(E.status="pending",E.then(function(q){E.status==="pending"&&(E.status="fulfilled",E.value=q)},function(q){E.status==="pending"&&(E.status="rejected",E.reason=q)})),E.status){case"fulfilled":return E.value;case"rejected":throw E.reason}}throw E}function M(E,q,J,F,re){var fe=typeof E;(fe==="undefined"||fe==="boolean")&&(E=null);var oe=!1;if(E===null)oe=!0;else switch(fe){case"bigint":case"string":case"number":oe=!0;break;case"object":switch(E.$$typeof){case s:case r:oe=!0;break;case y:return oe=E._init,M(oe(E._payload),q,J,F,re)}}if(oe)return re=re(E),oe=F===""?"."+Xe(E,0):F,X(re)?(J="",oe!=null&&(J=oe.replace(he,"$&/")+"/"),M(re,q,J,"",function(at){return at})):re!=null&&(ce(re)&&(re=xe(re,J+(re.key==null||E&&E.key===re.key?"":(""+re.key).replace(he,"$&/")+"/")+oe)),q.push(re)),1;oe=0;var ze=F===""?".":F+":";if(X(E))for(var Te=0;Te>>1,Ne=M[pe];if(0>>1;pef(J,ae))Ff(re,J)?(M[pe]=re,M[F]=ae,pe=F):(M[pe]=J,M[q]=ae,pe=q);else if(Ff(re,ae))M[pe]=re,M[F]=ae,pe=F;else break e}}return Q}function f(M,Q){var ae=M.sortIndex-Q.sortIndex;return ae!==0?ae:M.id-Q.id}if(s.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var d=performance;s.unstable_now=function(){return d.now()}}else{var m=Date,x=m.now();s.unstable_now=function(){return m.now()-x}}var g=[],p=[],y=1,v=null,N=3,w=!1,j=!1,A=!1,L=!1,H=typeof setTimeout=="function"?setTimeout:null,G=typeof clearTimeout=="function"?clearTimeout:null,R=typeof setImmediate<"u"?setImmediate:null;function Z(M){for(var Q=o(p);Q!==null;){if(Q.callback===null)u(p);else if(Q.startTime<=M)u(p),Q.sortIndex=Q.expirationTime,r(g,Q);else break;Q=o(p)}}function X(M){if(A=!1,Z(M),!j)if(o(g)!==null)j=!0,V||(V=!0,K());else{var Q=o(p);Q!==null&&ie(X,Q.startTime-M)}}var V=!1,Y=-1,W=5,le=-1;function xe(){return L?!0:!(s.unstable_now()-leM&&xe());){var pe=v.callback;if(typeof pe=="function"){v.callback=null,N=v.priorityLevel;var Ne=pe(v.expirationTime<=M);if(M=s.unstable_now(),typeof Ne=="function"){v.callback=Ne,Z(M),Q=!0;break t}v===o(g)&&u(g),Z(M)}else u(g);v=o(g)}if(v!==null)Q=!0;else{var E=o(p);E!==null&&ie(X,E.startTime-M),Q=!1}}break e}finally{v=null,N=ae,w=!1}Q=void 0}}finally{Q?K():V=!1}}}var K;if(typeof R=="function")K=function(){R(ce)};else if(typeof MessageChannel<"u"){var he=new MessageChannel,Xe=he.port2;he.port1.onmessage=ce,K=function(){Xe.postMessage(null)}}else K=function(){H(ce,0)};function ie(M,Q){Y=H(function(){M(s.unstable_now())},Q)}s.unstable_IdlePriority=5,s.unstable_ImmediatePriority=1,s.unstable_LowPriority=4,s.unstable_NormalPriority=3,s.unstable_Profiling=null,s.unstable_UserBlockingPriority=2,s.unstable_cancelCallback=function(M){M.callback=null},s.unstable_forceFrameRate=function(M){0>M||125pe?(M.sortIndex=ae,r(p,M),o(g)===null&&M===o(p)&&(A?(G(Y),Y=-1):A=!0,ie(X,ae-pe))):(M.sortIndex=Ne,r(g,M),j||w||(j=!0,V||(V=!0,K()))),M},s.unstable_shouldYield=xe,s.unstable_wrapCallback=function(M){var Q=N;return function(){var ae=N;N=Q;try{return M.apply(this,arguments)}finally{N=ae}}}})(Yo)),Yo}var Hh;function Ab(){return Hh||(Hh=1,$o.exports=Tb()),$o.exports}var Go={exports:{}},xt={};/** * @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 Lh;function _b(){if(Lh)return xt;Lh=1;var s=ou();function r(g){var p="https://react.dev/errors/"+g;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(s)}catch(r){console.error(r)}}return s(),Go.exports=_b(),Go.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 qh;function kb(){if(qh)return ks;qh=1;var s=Ab(),r=ou(),o=Cb();function u(e){var t="https://react.dev/errors/"+e;if(1Ne||(e.current=pe[Ne],pe[Ne]=null,Ne--)}function J(e,t){Ne++,pe[Ne]=e.current,e.current=t}var F=E(null),re=E(null),fe=E(null),oe=E(null);function ze(e,t){switch(J(fe,t),J(re,e),J(F,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?eh(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=eh(t),e=th(t,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}q(F),J(F,e)}function Te(){q(F),q(re),q(fe)}function at(e){e.memoizedState!==null&&J(oe,e);var t=F.current,l=th(t,e.type);t!==l&&(J(re,e),J(F,l))}function Oe(e){re.current===e&&(q(F),q(re)),oe.current===e&&(q(oe),zs._currentValue=ae)}var te,Ce;function De(e){if(te===void 0)try{throw Error()}catch(l){var t=l.stack.trim().match(/\n( *(at )?)/);te=t&&t[1]||"",Ce=-1)":-1i||S[a]!==C[i]){var U=` `+S[a].replace(" at new "," at ");return e.displayName&&U.includes("")&&(U=U.replace("",e.displayName)),U}while(1<=a&&0<=i);break}}}finally{tt=!1,Error.prepareStackTrace=l}return(l=e?e.displayName||e.name:"")?De(l):""}function It(e,t){switch(e.tag){case 26:case 27:case 5:return De(e.type);case 16:return De("Lazy");case 13:return e.child!==t&&t!==null?De("Suspense Fallback"):De("Suspense");case 19:return De("SuspenseList");case 0:case 15:return Nt(e.type,!1);case 11:return Nt(e.type.render,!1);case 1:return Nt(e.type,!0);case 31:return De("Activity");default:return""}}function nl(e){try{var t="",l=null;do t+=It(e,l),l=e,e=e.return;while(e);return t}catch(a){return` Error generating stack: `+a.message+` `+a.stack}}var Bt=Object.prototype.hasOwnProperty,Pt=s.unstable_scheduleCallback,gl=s.unstable_cancelCallback,Dn=s.unstable_shouldYield,Rn=s.unstable_requestPaint,pt=s.unstable_now,Ks=s.unstable_getCurrentPriorityLevel,Js=s.unstable_ImmediatePriority,Un=s.unstable_UserBlockingPriority,Ha=s.unstable_NormalPriority,Hn=s.unstable_LowPriority,bl=s.unstable_IdlePriority,Ln=s.log,Bn=s.unstable_setDisableYieldValue,sl=null,bt=null;function il(e){if(typeof Ln=="function"&&Bn(e),bt&&typeof bt.setStrictMode=="function")try{bt.setStrictMode(sl,e)}catch{}}var vt=Math.clz32?Math.clz32:Fs,Sr=Math.log,wr=Math.LN2;function Fs(e){return e>>>=0,e===0?32:31-(Sr(e)/wr|0)|0}var La=256,pa=262144,xa=4194304;function rl(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64: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 e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function Ba(e,t,l){var a=e.pendingLanes;if(a===0)return 0;var i=0,c=e.suspendedLanes,h=e.pingedLanes;e=e.warmLanes;var b=a&134217727;return b!==0?(a=b&~c,a!==0?i=rl(a):(h&=b,h!==0?i=rl(h):l||(l=b&~e,l!==0&&(i=rl(l))))):(b=a&~c,b!==0?i=rl(b):h!==0?i=rl(h):l||(l=a&~e,l!==0&&(i=rl(l)))),i===0?0:t!==0&&t!==i&&(t&c)===0&&(c=i&-i,l=t&-t,c>=l||c===32&&(l&4194048)!==0)?t:i}function Bl(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function Ws(e,t){switch(e){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 Is(){var e=xa;return xa<<=1,(xa&62914560)===0&&(xa=4194304),e}function Er(e){for(var t=[],l=0;31>l;l++)t.push(e);return t}function qn(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function ox(e,t,l,a,i,c){var h=e.pendingLanes;e.pendingLanes=l,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=l,e.entangledLanes&=l,e.errorRecoveryDisabledLanes&=l,e.shellSuspendCounter=0;var b=e.entanglements,S=e.expirationTimes,C=e.hiddenUpdates;for(l=h&~l;0"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var px=/[\n"\\]/g;function $t(e){return e.replace(px,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function kr(e,t,l,a,i,c,h,b){e.name="",h!=null&&typeof h!="function"&&typeof h!="symbol"&&typeof h!="boolean"?e.type=h:e.removeAttribute("type"),t!=null?h==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+qt(t)):e.value!==""+qt(t)&&(e.value=""+qt(t)):h!=="submit"&&h!=="reset"||e.removeAttribute("value"),t!=null?Mr(e,h,qt(t)):l!=null?Mr(e,h,qt(l)):a!=null&&e.removeAttribute("value"),i==null&&c!=null&&(e.defaultChecked=!!c),i!=null&&(e.checked=i&&typeof i!="function"&&typeof i!="symbol"),b!=null&&typeof b!="function"&&typeof b!="symbol"&&typeof b!="boolean"?e.name=""+qt(b):e.removeAttribute("name")}function Zu(e,t,l,a,i,c,h,b){if(c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"&&(e.type=c),t!=null||l!=null){if(!(c!=="submit"&&c!=="reset"||t!=null)){Cr(e);return}l=l!=null?""+qt(l):"",t=t!=null?""+qt(t):l,b||t===e.value||(e.value=t),e.defaultValue=t}a=a??i,a=typeof a!="function"&&typeof a!="symbol"&&!!a,e.checked=b?e.checked:!!a,e.defaultChecked=!!a,h!=null&&typeof h!="function"&&typeof h!="symbol"&&typeof h!="boolean"&&(e.name=h),Cr(e)}function Mr(e,t,l){t==="number"&&ti(e.ownerDocument)===e||e.defaultValue===""+l||(e.defaultValue=""+l)}function Qa(e,t,l,a){if(e=e.options,t){t={};for(var i=0;i"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Hr=!1;if(jl)try{var Xn={};Object.defineProperty(Xn,"passive",{get:function(){Hr=!0}}),window.addEventListener("test",Xn,Xn),window.removeEventListener("test",Xn,Xn)}catch{Hr=!1}var $l=null,Lr=null,ai=null;function ef(){if(ai)return ai;var e,t=Lr,l=t.length,a,i="value"in $l?$l.value:$l.textContent,c=i.length;for(e=0;e=Zn),rf=" ",cf=!1;function of(e,t){switch(e){case"keyup":return Gx.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function uf(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Ja=!1;function Qx(e,t){switch(e){case"compositionend":return uf(t);case"keypress":return t.which!==32?null:(cf=!0,rf);case"textInput":return e=t.data,e===rf&&cf?null:e;default:return null}}function Vx(e,t){if(Ja)return e==="compositionend"||!Gr&&of(e,t)?(e=ef(),ai=Lr=$l=null,Ja=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:l,offset:t-e};e=a}e:{for(;l;){if(l.nextSibling){l=l.nextSibling;break e}l=l.parentNode}l=void 0}l=bf(l)}}function yf(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?yf(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function jf(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=ti(e.document);t instanceof e.HTMLIFrameElement;){try{var l=typeof t.contentWindow.location.href=="string"}catch{l=!1}if(l)e=t.contentWindow;else break;t=ti(e.document)}return t}function Vr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var eg=jl&&"documentMode"in document&&11>=document.documentMode,Fa=null,Zr=null,Wn=null,Kr=!1;function Nf(e,t,l){var a=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;Kr||Fa==null||Fa!==ti(a)||(a=Fa,"selectionStart"in a&&Vr(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}),Wn&&Fn(Wn,a)||(Wn=a,a=Fi(Zr,"onSelect"),0>=h,i-=h,cl=1<<32-vt(t)+i|l<me?(ye=ee,ee=null):ye=ee.sibling;var Ee=k(T,ee,_[me],B);if(Ee===null){ee===null&&(ee=ye);break}e&&ee&&Ee.alternate===null&&t(T,ee),z=c(Ee,z,me),we===null?ne=Ee:we.sibling=Ee,we=Ee,ee=ye}if(me===_.length)return l(T,ee),je&&Sl(T,me),ne;if(ee===null){for(;me<_.length;me++)ee=$(T,_[me],B),ee!==null&&(z=c(ee,z,me),we===null?ne=ee:we.sibling=ee,we=ee);return je&&Sl(T,me),ne}for(ee=a(ee);me<_.length;me++)ye=D(ee,T,me,_[me],B),ye!==null&&(e&&ye.alternate!==null&&ee.delete(ye.key===null?me:ye.key),z=c(ye,z,me),we===null?ne=ye:we.sibling=ye,we=ye);return e&&ee.forEach(function(oa){return t(T,oa)}),je&&Sl(T,me),ne}function se(T,z,_,B){if(_==null)throw Error(u(151));for(var ne=null,we=null,ee=z,me=z=0,ye=null,Ee=_.next();ee!==null&&!Ee.done;me++,Ee=_.next()){ee.index>me?(ye=ee,ee=null):ye=ee.sibling;var oa=k(T,ee,Ee.value,B);if(oa===null){ee===null&&(ee=ye);break}e&&ee&&oa.alternate===null&&t(T,ee),z=c(oa,z,me),we===null?ne=oa:we.sibling=oa,we=oa,ee=ye}if(Ee.done)return l(T,ee),je&&Sl(T,me),ne;if(ee===null){for(;!Ee.done;me++,Ee=_.next())Ee=$(T,Ee.value,B),Ee!==null&&(z=c(Ee,z,me),we===null?ne=Ee:we.sibling=Ee,we=Ee);return je&&Sl(T,me),ne}for(ee=a(ee);!Ee.done;me++,Ee=_.next())Ee=D(ee,T,me,Ee.value,B),Ee!==null&&(e&&Ee.alternate!==null&&ee.delete(Ee.key===null?me:Ee.key),z=c(Ee,z,me),we===null?ne=Ee:we.sibling=Ee,we=Ee);return e&&ee.forEach(function(yb){return t(T,yb)}),je&&Sl(T,me),ne}function He(T,z,_,B){if(typeof _=="object"&&_!==null&&_.type===A&&_.key===null&&(_=_.props.children),typeof _=="object"&&_!==null){switch(_.$$typeof){case w:e:{for(var ne=_.key;z!==null;){if(z.key===ne){if(ne=_.type,ne===A){if(z.tag===7){l(T,z.sibling),B=i(z,_.props.children),B.return=T,T=B;break e}}else if(z.elementType===ne||typeof ne=="object"&&ne!==null&&ne.$$typeof===W&&Ta(ne)===z.type){l(T,z.sibling),B=i(z,_.props),as(B,_),B.return=T,T=B;break e}l(T,z);break}else t(T,z);z=z.sibling}_.type===A?(B=Na(_.props.children,T.mode,B,_.key),B.return=T,T=B):(B=mi(_.type,_.key,_.props,null,T.mode,B),as(B,_),B.return=T,T=B)}return h(T);case j:e:{for(ne=_.key;z!==null;){if(z.key===ne)if(z.tag===4&&z.stateNode.containerInfo===_.containerInfo&&z.stateNode.implementation===_.implementation){l(T,z.sibling),B=i(z,_.children||[]),B.return=T,T=B;break e}else{l(T,z);break}else t(T,z);z=z.sibling}B=tc(_,T.mode,B),B.return=T,T=B}return h(T);case W:return _=Ta(_),He(T,z,_,B)}if(ie(_))return I(T,z,_,B);if(K(_)){if(ne=K(_),typeof ne!="function")throw Error(u(150));return _=ne.call(_),se(T,z,_,B)}if(typeof _.then=="function")return He(T,z,yi(_),B);if(_.$$typeof===R)return He(T,z,xi(T,_),B);ji(T,_)}return typeof _=="string"&&_!==""||typeof _=="number"||typeof _=="bigint"?(_=""+_,z!==null&&z.tag===6?(l(T,z.sibling),B=i(z,_),B.return=T,T=B):(l(T,z),B=ec(_,T.mode,B),B.return=T,T=B),h(T)):l(T,z)}return function(T,z,_,B){try{ls=0;var ne=He(T,z,_,B);return cn=null,ne}catch(ee){if(ee===rn||ee===bi)throw ee;var we=Mt(29,ee,null,T.mode);return we.lanes=B,we.return=T,we}finally{}}}var _a=Qf(!0),Vf=Qf(!1),Vl=!1;function mc(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function hc(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Zl(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function Kl(e,t,l){var a=e.updateQueue;if(a===null)return null;if(a=a.shared,(Ae&2)!==0){var i=a.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),a.pending=t,t=di(e),_f(e,null,l),t}return fi(e,a,t,l),di(e)}function ns(e,t,l){if(t=t.updateQueue,t!==null&&(t=t.shared,(l&4194048)!==0)){var a=t.lanes;a&=e.pendingLanes,l|=a,t.lanes=l,Uu(e,l)}}function pc(e,t){var l=e.updateQueue,a=e.alternate;if(a!==null&&(a=a.updateQueue,l===a)){var i=null,c=null;if(l=l.firstBaseUpdate,l!==null){do{var h={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};c===null?i=c=h:c=c.next=h,l=l.next}while(l!==null);c===null?i=c=t:c=c.next=t}else i=c=t;l={baseState:a.baseState,firstBaseUpdate:i,lastBaseUpdate:c,shared:a.shared,callbacks:a.callbacks},e.updateQueue=l;return}e=l.lastBaseUpdate,e===null?l.firstBaseUpdate=t:e.next=t,l.lastBaseUpdate=t}var xc=!1;function ss(){if(xc){var e=sn;if(e!==null)throw e}}function is(e,t,l,a){xc=!1;var i=e.updateQueue;Vl=!1;var c=i.firstBaseUpdate,h=i.lastBaseUpdate,b=i.shared.pending;if(b!==null){i.shared.pending=null;var S=b,C=S.next;S.next=null,h===null?c=C:h.next=C,h=S;var U=e.alternate;U!==null&&(U=U.updateQueue,b=U.lastBaseUpdate,b!==h&&(b===null?U.firstBaseUpdate=C:b.next=C,U.lastBaseUpdate=S))}if(c!==null){var $=i.baseState;h=0,U=C=S=null,b=c;do{var k=b.lane&-536870913,D=k!==b.lane;if(D?(ve&k)===k:(a&k)===k){k!==0&&k===nn&&(xc=!0),U!==null&&(U=U.next={lane:0,tag:b.tag,payload:b.payload,callback:null,next:null});e:{var I=e,se=b;k=t;var He=l;switch(se.tag){case 1:if(I=se.payload,typeof I=="function"){$=I.call(He,$,k);break e}$=I;break e;case 3:I.flags=I.flags&-65537|128;case 0:if(I=se.payload,k=typeof I=="function"?I.call(He,$,k):I,k==null)break e;$=v({},$,k);break e;case 2:Vl=!0}}k=b.callback,k!==null&&(e.flags|=64,D&&(e.flags|=8192),D=i.callbacks,D===null?i.callbacks=[k]:D.push(k))}else D={lane:k,tag:b.tag,payload:b.payload,callback:b.callback,next:null},U===null?(C=U=D,S=$):U=U.next=D,h|=k;if(b=b.next,b===null){if(b=i.shared.pending,b===null)break;D=b,b=D.next,D.next=null,i.lastBaseUpdate=D,i.shared.pending=null}}while(!0);U===null&&(S=$),i.baseState=S,i.firstBaseUpdate=C,i.lastBaseUpdate=U,c===null&&(i.shared.lanes=0),Pl|=h,e.lanes=h,e.memoizedState=$}}function Zf(e,t){if(typeof e!="function")throw Error(u(191,e));e.call(t)}function Kf(e,t){var l=e.callbacks;if(l!==null)for(e.callbacks=null,e=0;ec?c:8;var h=M.T,b={};M.T=b,Rc(e,!1,t,l);try{var S=i(),C=M.S;if(C!==null&&C(b,S),S!==null&&typeof S=="object"&&typeof S.then=="function"){var U=og(S,a);os(e,t,U,Ht(e))}else os(e,t,a,Ht(e))}catch($){os(e,t,{then:function(){},status:"rejected",reason:$},Ht())}finally{Q.p=c,h!==null&&b.types!==null&&(h.types=b.types),M.T=h}}function pg(){}function Oc(e,t,l,a){if(e.tag!==5)throw Error(u(476));var i=zd(e).queue;Ed(e,i,t,ae,l===null?pg:function(){return Td(e),l(a)})}function zd(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:ae,baseState:ae,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Tl,lastRenderedState:ae},next:null};var l={};return t.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Tl,lastRenderedState:l},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Td(e){var t=zd(e);t.next===null&&(t=e.alternate.memoizedState),os(e,t.next.queue,{},Ht())}function Dc(){return ut(zs)}function Ad(){return Fe().memoizedState}function _d(){return Fe().memoizedState}function xg(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var l=Ht();e=Zl(l);var a=Kl(t,e,l);a!==null&&(_t(a,t,l),ns(a,t,l)),t={cache:oc()},e.payload=t;return}t=t.return}}function gg(e,t,l){var a=Ht();l={lane:a,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},ki(e)?kd(t,l):(l=Ir(e,t,l,a),l!==null&&(_t(l,e,a),Md(l,t,a)))}function Cd(e,t,l){var a=Ht();os(e,t,l,a)}function os(e,t,l,a){var i={lane:a,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(ki(e))kd(t,i);else{var c=e.alternate;if(e.lanes===0&&(c===null||c.lanes===0)&&(c=t.lastRenderedReducer,c!==null))try{var h=t.lastRenderedState,b=c(h,l);if(i.hasEagerState=!0,i.eagerState=b,kt(b,h))return fi(e,t,i,0),Le===null&&ui(),!1}catch{}finally{}if(l=Ir(e,t,i,a),l!==null)return _t(l,e,a),Md(l,t,a),!0}return!1}function Rc(e,t,l,a){if(a={lane:2,revertLane:ho(),gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null},ki(e)){if(t)throw Error(u(479))}else t=Ir(e,l,a,2),t!==null&&_t(t,e,2)}function ki(e){var t=e.alternate;return e===de||t!==null&&t===de}function kd(e,t){un=wi=!0;var l=e.pending;l===null?t.next=t:(t.next=l.next,l.next=t),e.pending=t}function Md(e,t,l){if((l&4194048)!==0){var a=t.lanes;a&=e.pendingLanes,l|=a,t.lanes=l,Uu(e,l)}}var us={readContext:ut,use:Ti,useCallback:Qe,useContext:Qe,useEffect:Qe,useImperativeHandle:Qe,useLayoutEffect:Qe,useInsertionEffect:Qe,useMemo:Qe,useReducer:Qe,useRef:Qe,useState:Qe,useDebugValue:Qe,useDeferredValue:Qe,useTransition:Qe,useSyncExternalStore:Qe,useId:Qe,useHostTransitionStatus:Qe,useFormState:Qe,useActionState:Qe,useOptimistic:Qe,useMemoCache:Qe,useCacheRefresh:Qe};us.useEffectEvent=Qe;var Od={readContext:ut,use:Ti,useCallback:function(e,t){return yt().memoizedState=[e,t===void 0?null:t],e},useContext:ut,useEffect:xd,useImperativeHandle:function(e,t,l){l=l!=null?l.concat([e]):null,_i(4194308,4,yd.bind(null,t,e),l)},useLayoutEffect:function(e,t){return _i(4194308,4,e,t)},useInsertionEffect:function(e,t){_i(4,2,e,t)},useMemo:function(e,t){var l=yt();t=t===void 0?null:t;var a=e();if(Ca){il(!0);try{e()}finally{il(!1)}}return l.memoizedState=[a,t],a},useReducer:function(e,t,l){var a=yt();if(l!==void 0){var i=l(t);if(Ca){il(!0);try{l(t)}finally{il(!1)}}}else i=t;return a.memoizedState=a.baseState=i,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:i},a.queue=e,e=e.dispatch=gg.bind(null,de,e),[a.memoizedState,e]},useRef:function(e){var t=yt();return e={current:e},t.memoizedState=e},useState:function(e){e=Ac(e);var t=e.queue,l=Cd.bind(null,de,t);return t.dispatch=l,[e.memoizedState,l]},useDebugValue:kc,useDeferredValue:function(e,t){var l=yt();return Mc(l,e,t)},useTransition:function(){var e=Ac(!1);return e=Ed.bind(null,de,e.queue,!0,!1),yt().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,l){var a=de,i=yt();if(je){if(l===void 0)throw Error(u(407));l=l()}else{if(l=t(),Le===null)throw Error(u(349));(ve&127)!==0||ed(a,t,l)}i.memoizedState=l;var c={value:l,getSnapshot:t};return i.queue=c,xd(ld.bind(null,a,c,e),[e]),a.flags|=2048,dn(9,{destroy:void 0},td.bind(null,a,c,l,t),null),l},useId:function(){var e=yt(),t=Le.identifierPrefix;if(je){var l=ol,a=cl;l=(a&~(1<<32-vt(a)-1)).toString(32)+l,t="_"+t+"R_"+l,l=Ei++,0<\/script>",c=c.removeChild(c.firstChild);break;case"select":c=typeof a.is=="string"?h.createElement("select",{is:a.is}):h.createElement("select"),a.multiple?c.multiple=!0:a.size&&(c.size=a.size);break;default:c=typeof a.is=="string"?h.createElement(i,{is:a.is}):h.createElement(i)}}c[ct]=t,c[St]=a;e:for(h=t.child;h!==null;){if(h.tag===5||h.tag===6)c.appendChild(h.stateNode);else if(h.tag!==4&&h.tag!==27&&h.child!==null){h.child.return=h,h=h.child;continue}if(h===t)break e;for(;h.sibling===null;){if(h.return===null||h.return===t)break e;h=h.return}h.sibling.return=h.return,h=h.sibling}t.stateNode=c;e:switch(dt(c,i,a),i){case"button":case"input":case"select":case"textarea":a=!!a.autoFocus;break e;case"img":a=!0;break e;default:a=!1}a&&_l(t)}}return qe(t),Jc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,l),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==a&&_l(t);else{if(typeof a!="string"&&t.stateNode===null)throw Error(u(166));if(e=fe.current,ln(t)){if(e=t.stateNode,l=t.memoizedProps,a=null,i=ot,i!==null)switch(i.tag){case 27:case 5:a=i.memoizedProps}e[ct]=t,e=!!(e.nodeValue===l||a!==null&&a.suppressHydrationWarning===!0||Im(e.nodeValue,l)),e||Xl(t,!0)}else e=Wi(e).createTextNode(a),e[ct]=t,t.stateNode=e}return qe(t),null;case 31:if(l=t.memoizedState,e===null||e.memoizedState!==null){if(a=ln(t),l!==null){if(e===null){if(!a)throw Error(u(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(u(557));e[ct]=t}else Sa(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;qe(t),e=!1}else l=sc(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=l),e=!0;if(!e)return t.flags&256?(Dt(t),t):(Dt(t),null);if((t.flags&128)!==0)throw Error(u(558))}return qe(t),null;case 13:if(a=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(i=ln(t),a!==null&&a.dehydrated!==null){if(e===null){if(!i)throw Error(u(318));if(i=t.memoizedState,i=i!==null?i.dehydrated:null,!i)throw Error(u(317));i[ct]=t}else Sa(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;qe(t),i=!1}else i=sc(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=i),i=!0;if(!i)return t.flags&256?(Dt(t),t):(Dt(t),null)}return Dt(t),(t.flags&128)!==0?(t.lanes=l,t):(l=a!==null,e=e!==null&&e.memoizedState!==null,l&&(a=t.child,i=null,a.alternate!==null&&a.alternate.memoizedState!==null&&a.alternate.memoizedState.cachePool!==null&&(i=a.alternate.memoizedState.cachePool.pool),c=null,a.memoizedState!==null&&a.memoizedState.cachePool!==null&&(c=a.memoizedState.cachePool.pool),c!==i&&(a.flags|=2048)),l!==e&&l&&(t.child.flags|=8192),Ui(t,t.updateQueue),qe(t),null);case 4:return Te(),e===null&&bo(t.stateNode.containerInfo),qe(t),null;case 10:return El(t.type),qe(t),null;case 19:if(q(Je),a=t.memoizedState,a===null)return qe(t),null;if(i=(t.flags&128)!==0,c=a.rendering,c===null)if(i)ds(a,!1);else{if(Ve!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(c=Si(e),c!==null){for(t.flags|=128,ds(a,!1),e=c.updateQueue,t.updateQueue=e,Ui(t,e),t.subtreeFlags=0,e=l,l=t.child;l!==null;)Cf(l,e),l=l.sibling;return J(Je,Je.current&1|2),je&&Sl(t,a.treeForkCount),t.child}e=e.sibling}a.tail!==null&&pt()>$i&&(t.flags|=128,i=!0,ds(a,!1),t.lanes=4194304)}else{if(!i)if(e=Si(c),e!==null){if(t.flags|=128,i=!0,e=e.updateQueue,t.updateQueue=e,Ui(t,e),ds(a,!0),a.tail===null&&a.tailMode==="hidden"&&!c.alternate&&!je)return qe(t),null}else 2*pt()-a.renderingStartTime>$i&&l!==536870912&&(t.flags|=128,i=!0,ds(a,!1),t.lanes=4194304);a.isBackwards?(c.sibling=t.child,t.child=c):(e=a.last,e!==null?e.sibling=c:t.child=c,a.last=c)}return a.tail!==null?(e=a.tail,a.rendering=e,a.tail=e.sibling,a.renderingStartTime=pt(),e.sibling=null,l=Je.current,J(Je,i?l&1|2:l&1),je&&Sl(t,a.treeForkCount),e):(qe(t),null);case 22:case 23:return Dt(t),bc(),a=t.memoizedState!==null,e!==null?e.memoizedState!==null!==a&&(t.flags|=8192):a&&(t.flags|=8192),a?(l&536870912)!==0&&(t.flags&128)===0&&(qe(t),t.subtreeFlags&6&&(t.flags|=8192)):qe(t),l=t.updateQueue,l!==null&&Ui(t,l.retryQueue),l=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(l=e.memoizedState.cachePool.pool),a=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(a=t.memoizedState.cachePool.pool),a!==l&&(t.flags|=2048),e!==null&&q(za),null;case 24:return l=null,e!==null&&(l=e.memoizedState.cache),t.memoizedState.cache!==l&&(t.flags|=2048),El(We),qe(t),null;case 25:return null;case 30:return null}throw Error(u(156,t.tag))}function Ng(e,t){switch(ac(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return El(We),Te(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return Oe(t),null;case 31:if(t.memoizedState!==null){if(Dt(t),t.alternate===null)throw Error(u(340));Sa()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(Dt(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(u(340));Sa()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return q(Je),null;case 4:return Te(),null;case 10:return El(t.type),null;case 22:case 23:return Dt(t),bc(),e!==null&&q(za),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return El(We),null;case 25:return null;default:return null}}function am(e,t){switch(ac(t),t.tag){case 3:El(We),Te();break;case 26:case 27:case 5:Oe(t);break;case 4:Te();break;case 31:t.memoizedState!==null&&Dt(t);break;case 13:Dt(t);break;case 19:q(Je);break;case 10:El(t.type);break;case 22:case 23:Dt(t),bc(),e!==null&&q(za);break;case 24:El(We)}}function ms(e,t){try{var l=t.updateQueue,a=l!==null?l.lastEffect:null;if(a!==null){var i=a.next;l=i;do{if((l.tag&e)===e){a=void 0;var c=l.create,h=l.inst;a=c(),h.destroy=a}l=l.next}while(l!==i)}}catch(b){Me(t,t.return,b)}}function Wl(e,t,l){try{var a=t.updateQueue,i=a!==null?a.lastEffect:null;if(i!==null){var c=i.next;a=c;do{if((a.tag&e)===e){var h=a.inst,b=h.destroy;if(b!==void 0){h.destroy=void 0,i=t;var S=l,C=b;try{C()}catch(U){Me(i,S,U)}}}a=a.next}while(a!==c)}}catch(U){Me(t,t.return,U)}}function nm(e){var t=e.updateQueue;if(t!==null){var l=e.stateNode;try{Kf(t,l)}catch(a){Me(e,e.return,a)}}}function sm(e,t,l){l.props=ka(e.type,e.memoizedProps),l.state=e.memoizedState;try{l.componentWillUnmount()}catch(a){Me(e,t,a)}}function hs(e,t){try{var l=e.ref;if(l!==null){switch(e.tag){case 26:case 27:case 5:var a=e.stateNode;break;case 30:a=e.stateNode;break;default:a=e.stateNode}typeof l=="function"?e.refCleanup=l(a):l.current=a}}catch(i){Me(e,t,i)}}function ul(e,t){var l=e.ref,a=e.refCleanup;if(l!==null)if(typeof a=="function")try{a()}catch(i){Me(e,t,i)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(i){Me(e,t,i)}else l.current=null}function im(e){var t=e.type,l=e.memoizedProps,a=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":l.autoFocus&&a.focus();break e;case"img":l.src?a.src=l.src:l.srcSet&&(a.srcset=l.srcSet)}}catch(i){Me(e,e.return,i)}}function Fc(e,t,l){try{var a=e.stateNode;Xg(a,e.type,l,t),a[St]=t}catch(i){Me(e,e.return,i)}}function rm(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&na(e.type)||e.tag===4}function Wc(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||rm(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.tag===27&&na(e.type)||e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Ic(e,t,l){var a=e.tag;if(a===5||a===6)e=e.stateNode,t?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(e,t):(t=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,t.appendChild(e),l=l._reactRootContainer,l!=null||t.onclick!==null||(t.onclick=yl));else if(a!==4&&(a===27&&na(e.type)&&(l=e.stateNode,t=null),e=e.child,e!==null))for(Ic(e,t,l),e=e.sibling;e!==null;)Ic(e,t,l),e=e.sibling}function Hi(e,t,l){var a=e.tag;if(a===5||a===6)e=e.stateNode,t?l.insertBefore(e,t):l.appendChild(e);else if(a!==4&&(a===27&&na(e.type)&&(l=e.stateNode),e=e.child,e!==null))for(Hi(e,t,l),e=e.sibling;e!==null;)Hi(e,t,l),e=e.sibling}function cm(e){var t=e.stateNode,l=e.memoizedProps;try{for(var a=e.type,i=t.attributes;i.length;)t.removeAttributeNode(i[0]);dt(t,a,l),t[ct]=e,t[St]=l}catch(c){Me(e,e.return,c)}}var Cl=!1,et=!1,Pc=!1,om=typeof WeakSet=="function"?WeakSet:Set,st=null;function Sg(e,t){if(e=e.containerInfo,jo=nr,e=jf(e),Vr(e)){if("selectionStart"in e)var l={start:e.selectionStart,end:e.selectionEnd};else e:{l=(l=e.ownerDocument)&&l.defaultView||window;var a=l.getSelection&&l.getSelection();if(a&&a.rangeCount!==0){l=a.anchorNode;var i=a.anchorOffset,c=a.focusNode;a=a.focusOffset;try{l.nodeType,c.nodeType}catch{l=null;break e}var h=0,b=-1,S=-1,C=0,U=0,$=e,k=null;t:for(;;){for(var D;$!==l||i!==0&&$.nodeType!==3||(b=h+i),$!==c||a!==0&&$.nodeType!==3||(S=h+a),$.nodeType===3&&(h+=$.nodeValue.length),(D=$.firstChild)!==null;)k=$,$=D;for(;;){if($===e)break t;if(k===l&&++C===i&&(b=h),k===c&&++U===a&&(S=h),(D=$.nextSibling)!==null)break;$=k,k=$.parentNode}$=D}l=b===-1||S===-1?null:{start:b,end:S}}else l=null}l=l||{start:0,end:0}}else l=null;for(No={focusedElem:e,selectionRange:l},nr=!1,st=t;st!==null;)if(t=st,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,st=e;else for(;st!==null;){switch(t=st,c=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(l=0;l title"))),dt(c,a,l),c[ct]=e,nt(c),a=c;break e;case"link":var h=ph("link","href",i).get(a+(l.href||""));if(h){for(var b=0;bHe&&(h=He,He=se,se=h);var T=vf(b,se),z=vf(b,He);if(T&&z&&(D.rangeCount!==1||D.anchorNode!==T.node||D.anchorOffset!==T.offset||D.focusNode!==z.node||D.focusOffset!==z.offset)){var _=$.createRange();_.setStart(T.node,T.offset),D.removeAllRanges(),se>He?(D.addRange(_),D.extend(z.node,z.offset)):(_.setEnd(z.node,z.offset),D.addRange(_))}}}}for($=[],D=b;D=D.parentNode;)D.nodeType===1&&$.push({element:D,left:D.scrollLeft,top:D.scrollTop});for(typeof b.focus=="function"&&b.focus(),b=0;b<$.length;b++){var B=$[b];B.element.scrollLeft=B.left,B.element.scrollTop=B.top}}nr=!!jo,No=jo=null}finally{Ae=i,Q.p=a,M.T=l}}e.current=t,lt=2}}function Um(){if(lt===2){lt=0;var e=ta,t=gn,l=(t.flags&8772)!==0;if((t.subtreeFlags&8772)!==0||l){l=M.T,M.T=null;var a=Q.p;Q.p=2;var i=Ae;Ae|=4;try{um(e,t.alternate,t)}finally{Ae=i,Q.p=a,M.T=l}}lt=3}}function Hm(){if(lt===4||lt===3){lt=0,Rn();var e=ta,t=gn,l=Rl,a=Sm;(t.subtreeFlags&10256)!==0||(t.flags&10256)!==0?lt=5:(lt=0,gn=ta=null,Lm(e,e.pendingLanes));var i=e.pendingLanes;if(i===0&&(ea=null),Tr(l),t=t.stateNode,bt&&typeof bt.onCommitFiberRoot=="function")try{bt.onCommitFiberRoot(sl,t,void 0,(t.current.flags&128)===128)}catch{}if(a!==null){t=M.T,i=Q.p,Q.p=2,M.T=null;try{for(var c=e.onRecoverableError,h=0;hl?32:l,M.T=null,l=io,io=null;var c=ta,h=Rl;if(lt=0,gn=ta=null,Rl=0,(Ae&6)!==0)throw Error(u(331));var b=Ae;if(Ae|=4,ym(c.current),gm(c,c.current,h,l),Ae=b,ys(0,!1),bt&&typeof bt.onPostCommitFiberRoot=="function")try{bt.onPostCommitFiberRoot(sl,c)}catch{}return!0}finally{Q.p=i,M.T=a,Lm(e,t)}}function qm(e,t,l){t=Gt(l,t),t=Bc(e.stateNode,t,2),e=Kl(e,t,2),e!==null&&(qn(e,2),fl(e))}function Me(e,t,l){if(e.tag===3)qm(e,e,l);else for(;t!==null;){if(t.tag===3){qm(t,e,l);break}else if(t.tag===1){var a=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof a.componentDidCatch=="function"&&(ea===null||!ea.has(a))){e=Gt(l,e),l=$d(2),a=Kl(t,l,2),a!==null&&(Yd(l,a,t,e),qn(a,2),fl(a));break}}t=t.return}}function uo(e,t,l){var a=e.pingCache;if(a===null){a=e.pingCache=new zg;var i=new Set;a.set(t,i)}else i=a.get(t),i===void 0&&(i=new Set,a.set(t,i));i.has(l)||(lo=!0,i.add(l),e=kg.bind(null,e,t,l),t.then(e,e))}function kg(e,t,l){var a=e.pingCache;a!==null&&a.delete(t),e.pingedLanes|=e.suspendedLanes&l,e.warmLanes&=~l,Le===e&&(ve&l)===l&&(Ve===4||Ve===3&&(ve&62914560)===ve&&300>pt()-qi?(Ae&2)===0&&bn(e,0):ao|=l,xn===ve&&(xn=0)),fl(e)}function $m(e,t){t===0&&(t=Is()),e=ja(e,t),e!==null&&(qn(e,t),fl(e))}function Mg(e){var t=e.memoizedState,l=0;t!==null&&(l=t.retryLane),$m(e,l)}function Og(e,t){var l=0;switch(e.tag){case 31:case 13:var a=e.stateNode,i=e.memoizedState;i!==null&&(l=i.retryLane);break;case 19:a=e.stateNode;break;case 22:a=e.stateNode._retryCache;break;default:throw Error(u(314))}a!==null&&a.delete(t),$m(e,l)}function Dg(e,t){return Pt(e,t)}var Zi=null,yn=null,fo=!1,Ki=!1,mo=!1,aa=0;function fl(e){e!==yn&&e.next===null&&(yn===null?Zi=yn=e:yn=yn.next=e),Ki=!0,fo||(fo=!0,Ug())}function ys(e,t){if(!mo&&Ki){mo=!0;do for(var l=!1,a=Zi;a!==null;){if(e!==0){var i=a.pendingLanes;if(i===0)var c=0;else{var h=a.suspendedLanes,b=a.pingedLanes;c=(1<<31-vt(42|e)+1)-1,c&=i&~(h&~b),c=c&201326741?c&201326741|1:c?c|2:0}c!==0&&(l=!0,Qm(a,c))}else c=ve,c=Ba(a,a===Le?c:0,a.cancelPendingCommit!==null||a.timeoutHandle!==-1),(c&3)===0||Bl(a,c)||(l=!0,Qm(a,c));a=a.next}while(l);mo=!1}}function Rg(){Ym()}function Ym(){Ki=fo=!1;var e=0;aa!==0&&Vg()&&(e=aa);for(var t=pt(),l=null,a=Zi;a!==null;){var i=a.next,c=Gm(a,t);c===0?(a.next=null,l===null?Zi=i:l.next=i,i===null&&(yn=l)):(l=a,(e!==0||(c&3)!==0)&&(Ki=!0)),a=i}lt!==0&<!==5||ys(e),aa!==0&&(aa=0)}function Gm(e,t){for(var l=e.suspendedLanes,a=e.pingedLanes,i=e.expirationTimes,c=e.pendingLanes&-62914561;0b)break;var U=S.transferSize,$=S.initiatorType;U&&Pm($)&&(S=S.responseEnd,h+=U*(S"u"?null:document;function fh(e,t,l){var a=jn;if(a&&typeof t=="string"&&t){var i=$t(t);i='link[rel="'+e+'"][href="'+i+'"]',typeof l=="string"&&(i+='[crossorigin="'+l+'"]'),uh.has(i)||(uh.add(i),e={rel:e,crossOrigin:l,href:t},a.querySelector(i)===null&&(t=a.createElement("link"),dt(t,"link",e),nt(t),a.head.appendChild(t)))}}function tb(e){Ul.D(e),fh("dns-prefetch",e,null)}function lb(e,t){Ul.C(e,t),fh("preconnect",e,t)}function ab(e,t,l){Ul.L(e,t,l);var a=jn;if(a&&e&&t){var i='link[rel="preload"][as="'+$t(t)+'"]';t==="image"&&l&&l.imageSrcSet?(i+='[imagesrcset="'+$t(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(i+='[imagesizes="'+$t(l.imageSizes)+'"]')):i+='[href="'+$t(e)+'"]';var c=i;switch(t){case"style":c=Nn(e);break;case"script":c=Sn(e)}Jt.has(c)||(e=v({rel:"preload",href:t==="image"&&l&&l.imageSrcSet?void 0:e,as:t},l),Jt.set(c,e),a.querySelector(i)!==null||t==="style"&&a.querySelector(ws(c))||t==="script"&&a.querySelector(Es(c))||(t=a.createElement("link"),dt(t,"link",e),nt(t),a.head.appendChild(t)))}}function nb(e,t){Ul.m(e,t);var l=jn;if(l&&e){var a=t&&typeof t.as=="string"?t.as:"script",i='link[rel="modulepreload"][as="'+$t(a)+'"][href="'+$t(e)+'"]',c=i;switch(a){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":c=Sn(e)}if(!Jt.has(c)&&(e=v({rel:"modulepreload",href:e},t),Jt.set(c,e),l.querySelector(i)===null)){switch(a){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(Es(c)))return}a=l.createElement("link"),dt(a,"link",e),nt(a),l.head.appendChild(a)}}}function sb(e,t,l){Ul.S(e,t,l);var a=jn;if(a&&e){var i=Ga(a).hoistableStyles,c=Nn(e);t=t||"default";var h=i.get(c);if(!h){var b={loading:0,preload:null};if(h=a.querySelector(ws(c)))b.loading=5;else{e=v({rel:"stylesheet",href:e,"data-precedence":t},l),(l=Jt.get(c))&&_o(e,l);var S=h=a.createElement("link");nt(S),dt(S,"link",e),S._p=new Promise(function(C,U){S.onload=C,S.onerror=U}),S.addEventListener("load",function(){b.loading|=1}),S.addEventListener("error",function(){b.loading|=2}),b.loading|=4,Pi(h,t,a)}h={type:"stylesheet",instance:h,count:1,state:b},i.set(c,h)}}}function ib(e,t){Ul.X(e,t);var l=jn;if(l&&e){var a=Ga(l).hoistableScripts,i=Sn(e),c=a.get(i);c||(c=l.querySelector(Es(i)),c||(e=v({src:e,async:!0},t),(t=Jt.get(i))&&Co(e,t),c=l.createElement("script"),nt(c),dt(c,"link",e),l.head.appendChild(c)),c={type:"script",instance:c,count:1,state:null},a.set(i,c))}}function rb(e,t){Ul.M(e,t);var l=jn;if(l&&e){var a=Ga(l).hoistableScripts,i=Sn(e),c=a.get(i);c||(c=l.querySelector(Es(i)),c||(e=v({src:e,async:!0,type:"module"},t),(t=Jt.get(i))&&Co(e,t),c=l.createElement("script"),nt(c),dt(c,"link",e),l.head.appendChild(c)),c={type:"script",instance:c,count:1,state:null},a.set(i,c))}}function dh(e,t,l,a){var i=(i=fe.current)?Ii(i):null;if(!i)throw Error(u(446));switch(e){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(t=Nn(l.href),l=Ga(i).hoistableStyles,a=l.get(t),a||(a={type:"style",instance:null,count:0,state:null},l.set(t,a)),a):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){e=Nn(l.href);var c=Ga(i).hoistableStyles,h=c.get(e);if(h||(i=i.ownerDocument||i,h={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},c.set(e,h),(c=i.querySelector(ws(e)))&&!c._p&&(h.instance=c,h.state.loading=5),Jt.has(e)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},Jt.set(e,l),c||cb(i,e,l,h.state))),t&&a===null)throw Error(u(528,""));return h}if(t&&a!==null)throw Error(u(529,""));return null;case"script":return t=l.async,l=l.src,typeof l=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=Sn(l),l=Ga(i).hoistableScripts,a=l.get(t),a||(a={type:"script",instance:null,count:0,state:null},l.set(t,a)),a):{type:"void",instance:null,count:0,state:null};default:throw Error(u(444,e))}}function Nn(e){return'href="'+$t(e)+'"'}function ws(e){return'link[rel="stylesheet"]['+e+"]"}function mh(e){return v({},e,{"data-precedence":e.precedence,precedence:null})}function cb(e,t,l,a){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?a.loading=1:(t=e.createElement("link"),a.preload=t,t.addEventListener("load",function(){return a.loading|=1}),t.addEventListener("error",function(){return a.loading|=2}),dt(t,"link",l),nt(t),e.head.appendChild(t))}function Sn(e){return'[src="'+$t(e)+'"]'}function Es(e){return"script[async]"+e}function hh(e,t,l){if(t.count++,t.instance===null)switch(t.type){case"style":var a=e.querySelector('style[data-href~="'+$t(l.href)+'"]');if(a)return t.instance=a,nt(a),a;var i=v({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return a=(e.ownerDocument||e).createElement("style"),nt(a),dt(a,"style",i),Pi(a,l.precedence,e),t.instance=a;case"stylesheet":i=Nn(l.href);var c=e.querySelector(ws(i));if(c)return t.state.loading|=4,t.instance=c,nt(c),c;a=mh(l),(i=Jt.get(i))&&_o(a,i),c=(e.ownerDocument||e).createElement("link"),nt(c);var h=c;return h._p=new Promise(function(b,S){h.onload=b,h.onerror=S}),dt(c,"link",a),t.state.loading|=4,Pi(c,l.precedence,e),t.instance=c;case"script":return c=Sn(l.src),(i=e.querySelector(Es(c)))?(t.instance=i,nt(i),i):(a=l,(i=Jt.get(c))&&(a=v({},l),Co(a,i)),e=e.ownerDocument||e,i=e.createElement("script"),nt(i),dt(i,"link",a),e.head.appendChild(i),t.instance=i);case"void":return null;default:throw Error(u(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(a=t.instance,t.state.loading|=4,Pi(a,l.precedence,e));return t.instance}function Pi(e,t,l){for(var a=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),i=a.length?a[a.length-1]:null,c=i,h=0;h title"):null)}function ob(e,t,l){if(l===1||t.itemProp!=null)return!1;switch(e){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 e=t.disabled,typeof t.precedence=="string"&&e==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 gh(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function ub(e,t,l,a){if(l.type==="stylesheet"&&(typeof a.media!="string"||matchMedia(a.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var i=Nn(a.href),c=t.querySelector(ws(i));if(c){t=c._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=tr.bind(e),t.then(e,e)),l.state.loading|=4,l.instance=c,nt(c);return}c=t.ownerDocument||t,a=mh(a),(i=Jt.get(i))&&_o(a,i),c=c.createElement("link"),nt(c);var h=c;h._p=new Promise(function(b,S){h.onload=b,h.onerror=S}),dt(c,"link",a),l.instance=c}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(l,t),(t=l.state.preload)&&(l.state.loading&3)===0&&(e.count++,l=tr.bind(e),t.addEventListener("load",l),t.addEventListener("error",l))}}var ko=0;function fb(e,t){return e.stylesheets&&e.count===0&&ar(e,e.stylesheets),0ko?50:800)+t);return e.unsuspend=l,function(){e.unsuspend=null,clearTimeout(a),clearTimeout(i)}}:null}function tr(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)ar(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var lr=null;function ar(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,lr=new Map,t.forEach(db,e),lr=null,tr.call(e))}function db(e,t){if(!(t.state.loading&4)){var l=lr.get(e);if(l)var a=l.get(null);else{l=new Map,lr.set(e,l);for(var i=e.querySelectorAll("link[data-precedence],style[data-precedence]"),c=0;c"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(s)}catch(r){console.error(r)}}return s(),qo.exports=kb(),qo.exports}var tu=Mb();/** * @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 Ob=s=>s.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),Db=s=>s.replace(/^([A-Z])|[\s-_]+(\w)/g,(r,o,u)=>u?u.toUpperCase():o.toLowerCase()),Yh=s=>{const r=Db(s);return r.charAt(0).toUpperCase()+r.slice(1)},kp=(...s)=>s.filter((r,o,u)=>!!r&&r.trim()!==""&&u.indexOf(r)===o).join(" ").trim(),Rb=s=>{for(const r in s)if(r.startsWith("aria-")||r==="role"||r==="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 Ub={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 Hb=O.forwardRef(({color:s="currentColor",size:r=24,strokeWidth:o=2,absoluteStrokeWidth:u,className:f="",children:d,iconNode:m,...x},g)=>O.createElement("svg",{ref:g,...Ub,width:r,height:r,stroke:s,strokeWidth:u?Number(o)*24/Number(r):o,className:kp("lucide",f),...!d&&!Rb(x)&&{"aria-hidden":"true"},...x},[...m.map(([p,y])=>O.createElement(p,y)),...Array.isArray(d)?d:[d]]));/** * @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 _e=(s,r)=>{const o=O.forwardRef(({className:u,...f},d)=>O.createElement(Hb,{ref:d,iconNode:r,className:kp(`lucide-${Ob(Yh(s))}`,`lucide-${s}`,u),...f}));return o.displayName=Yh(s),o};/** * @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 Lb=[["path",{d:"M7 7h10v10",key:"1tivn9"}],["path",{d:"M7 17 17 7",key:"1vkiza"}]],Ll=_e("arrow-up-right",Lb);/** * @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 Bb=[["path",{d:"M2 20v-8a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v8",key:"1k78r4"}],["path",{d:"M4 10V6a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v4",key:"fb3tl2"}],["path",{d:"M12 4v6",key:"1dcgq2"}],["path",{d:"M2 18h20",key:"ajqnye"}]],qb=_e("bed-double",Bb);/** * @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 $b=[["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"}],["path",{d:"m9 16 2 2 4-4",key:"19s6y9"}]],Yb=_e("calendar-check",$b);/** * @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 Gb=[["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"}],["path",{d:"M8 14h.01",key:"6423bh"}],["path",{d:"M12 14h.01",key:"1etili"}],["path",{d:"M16 14h.01",key:"1gbofw"}],["path",{d:"M8 18h.01",key:"lrp35t"}],["path",{d:"M12 18h.01",key:"mhygvu"}],["path",{d:"M16 18h.01",key:"kzsmim"}]],Xb=_e("calendar-days",Gb);/** * @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 Qb=[["path",{d:"M19 17h2c.6 0 1-.4 1-1v-3c0-.9-.7-1.7-1.5-1.9C18.7 10.6 16 10 16 10s-1.3-1.4-2.2-2.3c-.5-.4-1.1-.7-1.8-.7H5c-.6 0-1.1.4-1.4.9l-1.4 2.9A3.7 3.7 0 0 0 2 12v4c0 .6.4 1 1 1h2",key:"5owen"}],["circle",{cx:"7",cy:"17",r:"2",key:"u2ysq9"}],["path",{d:"M9 17h6",key:"r8uit2"}],["circle",{cx:"17",cy:"17",r:"2",key:"axvx0g"}]],Vb=_e("car",Qb);/** * @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 Zb=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],uu=_e("check",Zb);/** * @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 Kb=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],fu=_e("chevron-down",Kb);/** * @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 Jb=[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]],zn=_e("chevron-left",Jb);/** * @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 Fb=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],Ra=_e("chevron-right",Fb);/** * @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 Wb=[["path",{d:"M12 6v6l4 2",key:"mmk7yg"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],Ib=_e("clock",Wb);/** * @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 Pb=[["path",{d:"M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242",key:"1pljnt"}],["path",{d:"M16 14v6",key:"1j4efv"}],["path",{d:"M8 14v6",key:"17c4r9"}],["path",{d:"M12 16v6",key:"c8a4gj"}]],e0=_e("cloud-rain",Pb);/** * @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 t0=[["path",{d:"M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242",key:"1pljnt"}],["path",{d:"M8 15h.01",key:"a7atzg"}],["path",{d:"M8 19h.01",key:"puxtts"}],["path",{d:"M12 17h.01",key:"p32p05"}],["path",{d:"M12 21h.01",key:"h35vbk"}],["path",{d:"M16 15h.01",key:"rnfrdf"}],["path",{d:"M16 19h.01",key:"1vcnzz"}]],l0=_e("cloud-snow",t0);/** * @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 a0=[["path",{d:"M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z",key:"p7xjir"}]],n0=_e("cloud",a0);/** * @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 s0=[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]],i0=_e("copy",s0);/** * @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 r0=[["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"}]],c0=_e("external-link",r0);/** * @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 o0=[["rect",{width:"20",height:"20",x:"2",y:"2",rx:"5",ry:"5",key:"2e1cvw"}],["path",{d:"M16 11.37A4 4 0 1 1 12.63 8 4 4 0 0 1 16 11.37z",key:"9exkf1"}],["line",{x1:"17.5",x2:"17.51",y1:"6.5",y2:"6.5",key:"r4j83e"}]],u0=_e("instagram",o0);/** * @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 f0=[["path",{d:"m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7",key:"132q7q"}],["rect",{x:"2",y:"4",width:"20",height:"16",rx:"2",key:"izxlao"}]],Mp=_e("mail",f0);/** * @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 d0=[["path",{d:"M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0",key:"1r0f0z"}],["circle",{cx:"12",cy:"10",r:"3",key:"ilqhr7"}]],gr=_e("map-pin",d0);/** * @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 m0=[["path",{d:"M4 5h16",key:"1tepv9"}],["path",{d:"M4 12h16",key:"1lakjw"}],["path",{d:"M4 19h16",key:"1djgab"}]],Op=_e("menu",m0);/** * @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 h0=[["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"}]],du=_e("message-circle",h0);/** * @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 p0=[["path",{d:"M5 12h14",key:"1ays0h"}]],x0=_e("minus",p0);/** * @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 g0=[["polygon",{points:"3 11 22 2 13 21 11 13 3 11",key:"1ltx0t"}]],Xo=_e("navigation",g0);/** * @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 b0=[["path",{d:"M13.832 16.568a1 1 0 0 0 1.213-.303l.355-.465A2 2 0 0 1 17 15h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2A18 18 0 0 1 2 4a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-.8 1.6l-.468.351a1 1 0 0 0-.292 1.233 14 14 0 0 0 6.392 6.384",key:"9njp5v"}]],jt=_e("phone",b0);/** * @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 v0=[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]],y0=_e("play",v0);/** * @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 j0=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]],N0=_e("plus",j0);/** * @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 S0=[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]],w0=_e("rotate-ccw",S0);/** * @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 E0=[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]],z0=_e("sun",E0);/** * @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 T0=[["path",{d:"M3 2v7c0 1.1.9 2 2 2h4a2 2 0 0 0 2-2V2",key:"cjf0a3"}],["path",{d:"M7 2v20",key:"1473qp"}],["path",{d:"M21 15V2a5 5 0 0 0-5 5v6c0 1.1.9 2 2 2h3Zm0 0v7",key:"j28e5"}]],A0=_e("utensils",T0);/** * @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 _0=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],br=_e("x",_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. */const C0=[["path",{d:"M2.5 17a24.12 24.12 0 0 1 0-10 2 2 0 0 1 1.4-1.4 49.56 49.56 0 0 1 16.2 0A2 2 0 0 1 21.5 7a24.12 24.12 0 0 1 0 10 2 2 0 0 1-1.4 1.4 49.55 49.55 0 0 1-16.2 0A2 2 0 0 1 2.5 17",key:"1q2vi4"}],["path",{d:"m10 15 5-3-5-3z",key:"1jp15x"}]],k0=_e("youtube",C0),Dp=O.createContext(null);function M0({payload:s,children:r}){return n.jsx(Dp.Provider,{value:s,children:r})}function P(){const s=O.useContext(Dp);if(!s)throw new Error("SiteProvider 밖에서 useSite() 를 불렀습니다. payload 없이는 렌더할 수 없습니다.");return s}function O0(){return n.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.6",children:[n.jsx("rect",{x:"2",y:"5",width:"20",height:"14",rx:"2"}),n.jsxs("g",{className:"w4d-reel",children:[n.jsx("circle",{cx:"8.5",cy:"12",r:"2.6"}),n.jsx("path",{d:"M8.5 9.4v5.2M5.9 12h5.2"})]}),n.jsxs("g",{className:"w4d-reel",children:[n.jsx("circle",{cx:"15.5",cy:"12",r:"2.6"}),n.jsx("path",{d:"M15.5 9.4v5.2M12.9 12h5.2"})]}),n.jsx("path",{d:"M6 19l1.5-2.4h9L18 19"})]})}function D0(){return n.jsx("svg",{viewBox:"0 0 24 24",fill:"currentColor",children:n.jsx("path",{d:"M8 5v14l11-7z"})})}function R0(){return n.jsx("svg",{viewBox:"0 0 24 24",fill:"currentColor",children:n.jsx("path",{d:"M7 5h3.4v14H7zm6.6 0H17v14h-3.4z"})})}function U0(){return n.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",children:[n.jsx("path",{d:"M4 7h11M4 12h11M4 17h7"}),n.jsx("path",{d:"M19 17.5V9l3 1.2"}),n.jsx("circle",{cx:"17.4",cy:"17.6",r:"1.7",fill:"currentColor",stroke:"none"})]})}function H0(){return n.jsx("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:n.jsx("path",{d:"M6 6l12 12M18 6L6 18"})})}function Gh(s){if(typeof s!="number"||!Number.isFinite(s))return"";const r=Math.floor(s/60),o=Math.floor(s%60);return`${r}:${o<10?"0":""}${o}`}function L0(){const s=P(),r=(s.songs??[]).filter(X=>X.audioUrl),[o,u]=O.useState(0),[f,d]=O.useState(!1),[m,x]=O.useState(!1),[g,p]=O.useState({now:0,total:0}),[y,v]=O.useState({}),N=O.useRef(null),w=O.useRef(null),j=O.useRef(null),A=r.length;O.useEffect(()=>{A>1&&u(Math.floor(Math.random()*A))},[A]);const L=O.useCallback(()=>{var W;const X=document.querySelector("header"),V=X==null?void 0:X.getBoundingClientRect(),Y={top:`${V?V.bottom+6:66}px`};if(window.innerWidth<=640)Y.left="8px",Y.right="8px";else{Y.left="auto";const le=(W=w.current)==null?void 0:W.getBoundingClientRect();Y.right=`${Math.max(12,window.innerWidth-((le==null?void 0:le.right)??0))}px`}v(Y)},[]);if(O.useEffect(()=>{if(!m)return;L();const X=()=>L(),V=Y=>{var le,xe;const W=Y.target;(le=j.current)!=null&&le.contains(W)||(xe=w.current)!=null&&xe.contains(W)||x(!1)};return window.addEventListener("resize",X),window.addEventListener("scroll",X,{passive:!0}),document.addEventListener("click",V),()=>{window.removeEventListener("resize",X),window.removeEventListener("scroll",X),document.removeEventListener("click",V)}},[m,L]),O.useEffect(()=>()=>{var X;return(X=N.current)==null?void 0:X.pause()},[]),r.length===0)return null;const H=r[o]??r[0],G=(X=o)=>{const V=N.current,Y=r[X];!V||!Y||(V.getAttribute("src")!==Y.audioUrl&&(V.src=Y.audioUrl),V.play().then(()=>d(!0),()=>d(!1)))},R=()=>{var X;(X=N.current)==null||X.pause(),d(!1)},Z=X=>{const V=(X%r.length+r.length)%r.length;u(V),p({now:0,total:0}),G(V)};return n.jsxs(n.Fragment,{children:[n.jsxs("span",{id:"w4d-mini",ref:w,"data-playing":f?"1":"0",children:[n.jsx("span",{id:"w4d-tape","aria-hidden":!0,title:`${s.place.name}이(가) 만든 노래`,children:n.jsx(O0,{})}),n.jsx("span",{id:"w4d-now","aria-live":"polite",children:H.title}),n.jsx("button",{type:"button",id:"w4d-play","data-playing":f?"1":"0",title:`${f?"멈춤":"재생"} · ${H.title}`,onClick:()=>f?R():G(),children:f?n.jsx(R0,{}):n.jsx(D0,{})}),n.jsx("button",{type:"button",id:"w4d-toggle",title:"노래 목록","aria-expanded":m,onClick:()=>x(X=>!X),children:n.jsx(U0,{})})]}),n.jsx("audio",{ref:N,src:r[0].audioUrl,preload:"none",onTimeUpdate:X=>p({now:X.currentTarget.currentTime,total:X.currentTarget.duration}),onDurationChange:X=>p(V=>({...V,total:X.currentTarget.duration})),onEnded:()=>Z(o+1),onError:()=>d(!1)}),n.jsxs("div",{id:"w4d-panel",ref:j,hidden:!m,style:y,children:[n.jsxs("div",{className:"w4d-head",children:[n.jsxs("span",{className:"w4d-head-t",children:[s.place.name,"이(가) 만든 노래"]}),n.jsxs("span",{className:"w4d-head-n",children:[r.length,"곡"]}),n.jsx("button",{type:"button",id:"w4d-close",title:"닫기","aria-label":"닫기",onClick:()=>x(!1),children:n.jsx(H0,{})})]}),n.jsx("ol",{children:r.map((X,V)=>n.jsx("li",{children:n.jsxs("button",{type:"button",className:"w4d-item","aria-current":V===o,"data-playing":V===o&&f?"1":"0",onClick:()=>Z(V),children:[n.jsxs("span",{className:"w4d-mark",children:[n.jsx("span",{className:"w4d-disc-sm"}),n.jsxs("span",{className:"w4d-eq","aria-hidden":!0,children:[n.jsx("i",{}),n.jsx("i",{}),n.jsx("i",{})]})]}),n.jsxs("span",{className:"w4d-info",children:[n.jsx("span",{className:"w4d-t",children:X.title}),n.jsx("span",{className:"w4d-sub",children:s.place.name})]}),n.jsx("span",{className:"w4d-time",children:V===o&&(f||g.now>0)?`${Gh(g.now)}${g.total?` / ${Gh(g.total)}`:""}`:""})]})},X.songId))}),n.jsx("div",{id:"w4d-lyrics-box",hidden:!H.lyrics,children:(H.lyrics??"").replace(/^\[.*\]$/gm,"").replace(/\n{3,}/g,` `).trim()})]})]})}const da={LODGING:1,CAFE:2,RESTAURANT:3,CLINIC:4},B0={OWNER:1,CRAWL:3,TEMPLATE:5},Xh={UNVERIFIED:1,VERIFIED:3,CORRECTED:4},q0=[Xh.VERIFIED,Xh.CORRECTED];function Rp(s){return q0.includes(s)}const it={YANOLJA:1,GOODCHOICE:2,NAVER_PLACE:3,INSTAGRAM:4,OFFICIAL_SITE:5,BLOG:6,NAVER_BOOKING:7,ETC:99},Sj={PUBLISHED:3};function Tn(s){return s.filter(r=>Rp(r.status)&&r.value!=null&&r.value!=="")}function Up(s){const r=new Map;for(const o of Tn(s))r.set(o.key,o);return r}function ua(s,r){const o=Up(s).get(r);return(o==null?void 0:o.value)??void 0}function Ct(s,r){const o=Up(s).get(r);if(!(o!=null&&o.value))return;const u=o.type==="number"?$0(o.value):o.value;return o.unit?`${u}${o.unit}`:u}function $0(s){const r=Number(s.replace(/,/g,""));return Number.isFinite(r)?r.toLocaleString("ko-KR"):s}function mu(s){return s.type!=="bool"?s.label:s.label.replace(/\s*(가능|여부)$/,"")||s.label}function Y0(s){return s.filter(r=>Rp(r.status)&&r.question&&r.answer).sort((r,o)=>r.sortOrder-o.sortOrder)}function hu(s){return s.map(r=>({...r,facts:Tn(r.facts)})).sort((r,o)=>r.sortOrder-o.sortOrder)}const G0={songs:"title",daily:"title",course:"name",schedule:"name",people:"name",chronicle:"title",reading:"title",literature:"workTitle",postcard:"line",quiz:"question",planner:"name",itinerary:"name",video:"url",event:"title"};function X0(s){const r=(s??"").trim();if(!r)return;const o=/(?:youtube\.com\/(?:watch\?(?:.*&)?v=|shorts\/|embed\/|live\/)|youtu\.be\/)([A-Za-z0-9_-]{6,20})/.exec(r);return o==null?void 0:o[1]}function Q0(s){return/youtube\.com\/shorts\//.test((s??"").trim())}function V0(s){return`https://i.ytimg.com/vi/${s}/hqdefault.jpg`}function Z0(s){return`https://www.youtube-nocookie.com/embed/${s}?autoplay=1&rel=0&modestbranding=1`}const fr={items:[],unverified:0,sourced:0};function K0(s,r){var p,y;const o=v=>{const N=s.slice(0,Math.max(0,v)),w=N.split(` `).length,j=v-N.lastIndexOf(` `);return`${w}번째 줄 ${j}번째 글자`},u=(p=/Unexpected token '(.)'/.exec(r))==null?void 0:p[1],f=u==="}"||u==="]"?"닫는 괄호 바로 앞에 쉼표가 하나 더 있는지 보세요.":"그 앞의 쉼표·따옴표·괄호를 확인해 주세요.",d=/line (\d+) column (\d+)/.exec(r);if(d)return`${d[1]}번째 줄 ${d[2]}번째 글자에서 JSON 이 끊깁니다. ${f}`;const m=/position (\d+)/.exec(r);if(m)return`${o(Number(m[1]))}에서 JSON 이 끊깁니다. ${f}`;const x=(y=/\.\.\."([\s\S]*?)" is not valid JSON/.exec(r))==null?void 0:y[1],g=x?s.indexOf(x):-1;return g>=0?`${o(g+x.length)} 부근에서 JSON 이 끊깁니다. ${f}`:"JSON 이 아닙니다. ChatGPT 가 준 답에서 { 로 시작해 } 로 끝나는 부분만 붙여넣어 주세요."}function J0(s,r){const o=G0[s],u=(r??"").trim();if(!o||!u)return fr;let f;try{f=JSON.parse(u)}catch(v){return{...fr,error:K0(u,v instanceof Error?v.message:"")}}if(typeof f!="object"||f===null||Array.isArray(f))return{...fr,error:"바깥이 { } 로 감싸인 JSON 이어야 합니다."};const d=f,m=typeof d.kind=="string"?d.kind:void 0,x=d.items;if(!Array.isArray(x))return{...fr,error:"items 배열이 없습니다. 프롬프트로 다시 만들어 주세요."};const g=x.filter(v=>typeof v=="object"&&v!==null&&!Array.isArray(v)&&typeof v[o]=="string"&&v[o].trim().length>0);let p=0,y=0;for(const v of g){const N=v;N.verified!=="확인"&&(p+=1),N.source&&typeof N.source=="object"&&(y+=1)}return{items:g,title:typeof d.title=="string"?d.title:void 0,subtitle:typeof d.subtitle=="string"?d.subtitle:void 0,linkUrl:typeof d.linkUrl=="string"&&/^https?:\/\//.test(d.linkUrl)?d.linkUrl:void 0,linkLabel:typeof d.linkLabel=="string"?d.linkLabel:void 0,kindMismatch:m&&m!==s?m:void 0,unverified:p,sourced:y}}const F0=1260,W0=60,I0="10:00",Qh=["봄","여름","가을","겨울"];function Vh(s){const r=/^(\d{1,2}):(\d{2})$/.exec(s.trim());if(!r)return;const o=Number(r[1]),u=Number(r[2]);if(!(o>23||u>59))return o*60+u}function dr(s){const r=(s%1440+1440)%1440;return`${String(Math.floor(r/60)).padStart(2,"0")}:${String(r%60).padStart(2,"0")}`}function P0(s){const r=Vh(s.startTime??"")??Vh(I0)??600,o=[];let u=r,f=0;for(const d of s.stops??[]){const m=Math.max(0,d.moveMinutes??0),x=Math.max(1,d.minutes??W0),g=u+m;if(g+x>F0){f+=1;continue}o.push({stop:d,time:dr(g),until:dr(g+x),move:m}),u=g+x}return{stops:o,from:dr(r),to:dr(u),totalMinutes:u-r,dropped:f}}function ev(s=new Date){const r=s.getMonth()+1,o=Math.floor((r-3+12)%12/3),u=Qh[o];return r%3===0&&s.getDate()<=15?[Qh[(o+3)%4],u]:[u]}function Zh(s){const r=parseInt(s.replace("#",""),16);return[r>>16&255,r>>8&255,r&255]}function Kh(s,r,o){if(!/^#[0-9a-fA-F]{6}$/.test(s)||!/^#[0-9a-fA-F]{6}$/.test(r))return s;const[u,f,d]=Zh(s),[m,x,g]=Zh(r),p=(v,N)=>Math.round(v+(N-v)*o),y=v=>v.toString(16).padStart(2,"0");return`#${y(p(u,m))}${y(p(f,x))}${y(p(d,g))}`}function tv(s){return{surface:Kh(s.bg,s.text,.06),surfaceAlt:s.card,inverse:"#1c1917",border:Kh(s.bg,s.text,.2)}}const Hp={[da.LODGING]:{type:"HotelRoom",path:"rooms",label:"객실"},[da.CAFE]:{type:"MenuItem",path:"menu",label:"메뉴"},[da.RESTAURANT]:{type:"MenuItem",path:"menu",label:"메뉴"},[da.CLINIC]:{type:"Product",path:"programs",label:"시술"}};function lv(s){return s.links.filter(r=>r.confirmed&&/^https?:\/\//i.test(r.url??""))}function Lp(s){var r;for(const[o,u]of[["weekday_price","주중 1박"],["price","1박"],["weekend_price","주말 1박"],["peak_price","성수기 1박"]]){const f=Number((r=ua(s.facts,o))==null?void 0:r.replace(/[^0-9]/g,""));if(Number.isFinite(f)&&f>0)return{price:f,label:u}}}const Jh=[it.NAVER_BOOKING,it.YANOLJA,it.GOODCHOICE,it.NAVER_PLACE];function av(s){return/\/p\/search\/|[?&]query=/.test(s)}function Bp(s){const r=new Map(Jh.map((f,d)=>[f,d])),o=s.links.filter(f=>f.confirmed&&Jh.includes(f.channel)&&!av(f.url)),u=o.some(f=>f.channel===it.NAVER_BOOKING);return o.filter(f=>!(u&&f.channel===it.NAVER_PLACE)).sort((f,d)=>(r.get(f.channel)??99)-(r.get(d.channel)??99))}function pu(s){return s.links.find(r=>r.confirmed&&r.channel===it.OFFICIAL_SITE)??Bp(s)[0]??lv(s)[0]}function xu(s){return Tn(s.facts).filter(r=>r.scope==="place").map(r=>({key:r.key,label:mu(r),value:gu(r,s.facts)})).filter(r=>r.value!=="")}function gu(s,r){var u;if(s.key==="intro"&&((u=s.summary)!=null&&u.trim()))return s.summary.trim();const o=Ct(r,s.key);return o?s.type!=="bool"?o:/여부$/.test(s.label)?o==="true"?"있음":o==="false"?"없음":o:o==="true"?"가능":o==="false"?"불가":o:""}const nv=new Set(["weekday_price","weekend_price","peak_price","price_range"]);function sv(s){const r=new Set;return s.filter(o=>{const u=o.value.trim();return r.has(u)?!1:(r.add(u),!0)})}function hl(s){const r=Hp[s.place.category],o=new Map(s.media.map(u=>[u.mediaId,u]));return hu(s.units).map(u=>{const f=Ct(u.facts,"room_intro")??Ct(u.facts,"description"),d=s.place.category===da.LODGING?["standard_capacity","max_capacity","bed_type","room_size"]:["price","volume","origin"];return{unitId:u.unitId,slug:u.slug,name:u.name,intro:f,chips:d.map(m=>{var p;const x=Ct(u.facts,m),g=((p=u.facts.find(y=>y.key===m))==null?void 0:p.label)??m;return x?{label:g,value:x}:null}).filter(m=>m!==null),rows:sv(u.facts.filter(m=>!nv.has(m.key)).filter(m=>!d.includes(m.key)).filter(m=>m.key!=="room_intro"&&m.key!=="description").map(m=>({label:mu(m),value:gu(m,u.facts)})).filter(m=>m.value!==""&&m.value.trim()!==(f??"").trim())),images:u.mediaIds.map(m=>o.get(m)).filter(m=>{var x;return!!((x=m==null?void 0:m.alt)!=null&&x.trim())}),priceText:iv(u),prices:cv(u),href:`/${r.path}/${u.slug}`}})}function iv(s){var d,m;const r=Ct(s.facts,"price_range");if(r)return r;const o=Number((d=Ct(s.facts,"weekday_price"))==null?void 0:d.replace(/[^0-9]/g,"")),u=Number((m=Ct(s.facts,"price"))==null?void 0:m.replace(/[^0-9]/g,"")),f=Number.isFinite(o)&&o>0?o:u;if(!(!Number.isFinite(f)||f<=0))return`${f.toLocaleString("ko-KR")}원부터`}const rv=[["weekday_price","주중"],["weekend_price","주말"],["peak_price","성수기"]];function cv(s){return Ct(s.facts,"price_range")?[]:Ct(s.facts,"weekday_price")?rv.map(([r,o])=>({label:o,value:Ct(s.facts,r)??"문의"})):[]}function ov(s){const r=s??"";return/눈|설/.test(r)?"눈":/비|우|소나기/.test(r)?"비":/흐림|구름|안개|박무/.test(r)?"흐림":"맑음"}function uv(s){return s>=30?"혹서":s>=25?"더움":s>=20?"선선":s>=10?"쌀쌀":"추움"}function bu(s){return s.media.filter(r=>{var o;return((o=r.alt)==null?void 0:o.trim())&&!r.unitId})}function fv(s){return Y0(s.faqs)}function dv(s){return s.theme.sections.filter(r=>r.enabled)}function Lt(s,r){var o;return((o=s.theme.sections.find(u=>u.id===r))==null?void 0:o.enabled)??!1}function mv(s,r){var u;const o=(u=s.theme.sections.find(f=>f.id===r))==null?void 0:u.body;return(o==null?void 0:o.split(/\n\s*\n/).map(f=>f.trim()).filter(Boolean))??[]}function Wt(s,r){var d;const o=s.theme.sections.find(m=>m.id===r),u=J0(r,o==null?void 0:o.data),f=(d=s.local.story)==null?void 0:d[r];return!Array.isArray(f)||f.length===0?u:{...u,items:[...u.items,...f]}}function ht(s){return Hp[s.place.category]}function $e(s,r,o){var f,d;const u=(d=(f=s.theme.sections.find(m=>m.id===r))==null?void 0:f.name)==null?void 0:d.trim();return u||o}function An(s,r){const o=new Map(Tn(s.facts).filter(u=>u.scope==="place").map(u=>[u.key,u]));return r.map(u=>o.get(u)).filter(u=>u!==void 0).map(u=>({label:mu(u),value:gu(u,s.facts)})).filter(u=>u.value!=="")}function hv(s,r){return An(s,[r])[0]}const pv=["reservation_required","reservation_channel"];function xv(s){return An(s,pv)}const gv=["seat_count","terrace","room_available","group_seat_max","power_outlet","study_allowed","wheelchair_accessible"];function bv(s){return An(s,gv)}const vv=["operating_hours","session_times","closed_days","age_limit","guide_language"];function yv(s){return An(s,vv)}const jv=["check_in_time","check_out_time","operating_hours","closed_days","parking","reservation_required"];function Ua(s){return An(s,jv).slice(0,4)}function _n(s){const r=hl(s).map(u=>u.priceText).filter(u=>!!u);if(r.length===0)return;const o=u=>Number(u.replace(/[^0-9]/g,""))||Number.MAX_SAFE_INTEGER;return r.reduce((u,f)=>o(f)o.confirmed&&r.includes(o.channel))}const Ke=Bp,wv=["check_in_time","check_out_time","cancel_policy","extra_person_fee","reception_hours","cooking_allowed","pet_allowed","smoking"];function Ev(s){return hu(s.units).map(r=>{const o=Ct(r.facts,"standard_capacity"),u=Ct(r.facts,"max_capacity"),f=Lp(r);return{unitId:r.unitId,name:r.name,capacityText:[o&&`기준 ${o}`,u&&`최대 ${u}`].filter(Boolean).join(" · ")||void 0,rateRows:["weekday_price","weekend_price","peak_price"].map(d=>{var g;const m=Ct(r.facts,d),x=((g=r.facts.find(p=>p.key===d))==null?void 0:g.label)??d;return m?{label:x,value:m}:null}).filter(d=>d!==null),baseRateText:f?`${f.label} ${f.price.toLocaleString("ko-KR")}원`:void 0,href:"#units"}})}function $p(s){if(s.place.category!==da.LODGING)return null;const r={offers:Ev(s).filter(u=>u.rateRows.length>0||u.capacityText!==void 0),notices:An(s,wv),links:Ke(s),contacts:Cn(s).filter(u=>!Ke(s).some(f=>f.url===u.url)),phone:s.place.phone};return r.offers.length===0&&r.links.length===0&&r.contacts.length===0&&!r.phone?null:r}function zv(s,r){return s.theme.sections.some(o=>o.id===r)}function Cn(s){return Sv(s,Nv)}function gt(s,r){const o=Bs(s),u=o.endsWith("예약")?o:`${o} 예약`;return r?`${r} ${u}`:u}function vu(s){return s.channel===it.NAVER_BOOKING?"네이버 예약으로 바로 예약하기":`${pl(s)}에서 예약`}function Tv(){var u;const s=P(),r=ht(s),o=[{label:"소개",href:"#about",show:Lt(s,"intro")},{label:r.label,href:"#units",show:s.units.length>0},{label:"이용 정보",href:"#info",show:!0},{label:"오시는 길",href:"#location",show:!0},{label:"축제",href:"#festival",show:(((u=s.local.festivals)==null?void 0:u.length)??0)>0},{label:"주변 정보",href:"#guide",show:Lt(s,"local")},{label:"FAQ",href:"#faq",show:s.faqs.length>0}].filter(f=>f.show);return n.jsx("header",{className:"border-line safe-t sticky top-0 z-40 w-full border-b backdrop-blur-md",style:{backgroundColor:"color-mix(in srgb, var(--tpl-surface, #fff) 88%, transparent)"},children:n.jsxs("div",{className:"shell flex h-16 items-center justify-between gap-3",children:[n.jsxs("a",{href:"#top",className:"flex min-w-0 items-center gap-2.5",children:[n.jsx("span",{className:"serif flex size-8 shrink-0 items-center justify-center rounded-md text-[length:var(--fs-sm)]",style:{backgroundColor:"var(--color-brand)",color:"var(--tpl-bg, #fff)",fontWeight:"var(--tpl-heading-weight, 700)"},"aria-hidden":!0,children:s.place.name.slice(0,1)}),n.jsxs("span",{className:"flex min-w-0 flex-col",children:[n.jsx("span",{className:"serif truncate text-[length:var(--fs-lead)] leading-tight",style:{fontWeight:"var(--tpl-heading-weight, 700)"},children:s.place.name}),s.place.englishName&&n.jsx("span",{className:"text-muted truncate text-[length:var(--fs-xs)] uppercase leading-tight tracking-[0.14em]",children:s.place.englishName})]})]}),n.jsx("nav",{"aria-label":"주요 메뉴",className:"hidden items-center gap-7 lg:flex",children:o.map(f=>n.jsx("a",{href:f.href,className:"text-muted py-1 text-[length:var(--fs-sm)] font-medium transition-colors hover:text-current",children:f.label},f.label))}),n.jsxs("div",{className:"flex shrink-0 items-center gap-1.5",children:[n.jsx(L0,{}),s.place.phone&&n.jsxs("a",{href:`tel:${s.place.phone}`,className:"tap inline-flex items-center gap-1.5 rounded-lg px-3 text-[length:var(--fs-xs)] font-bold transition-opacity hover:opacity-100",style:{backgroundColor:"var(--color-brand)",color:"var(--tpl-bg, #fff)"},children:[n.jsx(jt,{className:"size-4"}),n.jsx("span",{className:"hidden sm:inline",children:s.place.phone}),n.jsx("span",{className:"sr-only sm:hidden",children:"전화"})]}),n.jsxs("details",{className:"relative lg:hidden",children:[n.jsx("summary",{className:"tap flex cursor-pointer items-center justify-center rounded-lg marker:content-none [&::-webkit-details-marker]:hidden","aria-label":"메뉴 열기",children:n.jsx(Op,{className:"size-5"})}),n.jsx("nav",{"aria-label":"전체 메뉴",className:"border-line tpl-border absolute right-0 top-[calc(100%+0.5rem)] z-50 w-52 overflow-hidden rounded-xl border shadow-lg",style:{backgroundColor:"var(--tpl-surface, #fff)"},children:n.jsx("ul",{className:"divide-line divide-y",children:o.map(f=>n.jsx("li",{children:n.jsx("a",{href:f.href,className:"tap flex items-center px-4 text-[length:var(--fs-sm)] font-medium",children:f.label})},f.label))})})]})]})]})})}const Av=["잠시 걸음을 멈추고 온전한 쉼을 마주하는 시간","바쁜 일상을 내려놓고 나를 위한 여유를 담아갑니다","여행의 길목에서 만나는 조용하고 편안한 머무름","아무것도 하지 않아도 편안해지는 오늘의 휴식","낯선 곳에서 느끼는 다정한 온기와 작은 쉼표","지친 하루의 끝에 찾아오는 나만의 따뜻한 여백","천천히 흘러가는 시간 속에서 마주하는 깊은 휴식","스쳐 가는 여행 속에서 오래 기억될 아늑한 순간","복잡한 생각은 잠시 잊고 편안하게 쉬어가세요","작은 쉼이 모여 내일을 살아갈 따뜻한 힘이 됩니다"];function ha({children:s}){var p;const{place:r,narrative:o}=P(),u=r.category===da.LODGING,[f,d]=O.useState(0),m=(((p=o.catchphrases)==null?void 0:p.items)??[]).filter(y=>(y.kind??"general")==="general").map(y=>y.text.trim()).filter(Boolean),x=m.length>0?m:Av;if(O.useEffect(()=>{if(!u)return;const y=window.matchMedia("(prefers-reduced-motion: reduce)"),v=window.setInterval(()=>{!document.hidden&&!y.matches&&d(N=>(N+1)%x.length)},6e3);return()=>window.clearInterval(v)},[u,x.length]),!u)return s;const g=x[f%x.length];return n.jsxs("span",{className:"hero-catchphrase",children:[s&&n.jsx("span",{className:"hero-catchphrase-fixed",children:s}),n.jsx("span",{className:"w4d-line w4d-line--in",children:g.split(/\s+/).map((y,v)=>n.jsxs("span",{children:[v>0&&" ",n.jsx("span",{className:"w4d-w",children:n.jsx("span",{style:{"--w4d-d":`${v*55}ms`},children:y})})]},v))},f)]})}function vr(s){return s.media.find(r=>{var o;return r.isPrimary&&((o=r.alt)==null?void 0:o.trim())})??s.media.find(r=>{var o;return(o=r.alt)==null?void 0:o.trim()})}function _v(s){return Cv(s).join(" ")}function Cv(s){const{place:r,facts:o}=s,u=[],f=r.addressLocality??r.addressRegion??r.roadAddress??r.address;u.push(f?`${f}에 있는 ${r.name}입니다.`:`${r.name}입니다.`);const d=ua(o,"check_in_time"),m=ua(o,"check_out_time");d&&m&&u.push(`체크인 ${d}, 체크아웃 ${m}.`);const x=ua(o,"business_hours")??ua(o,"open_hours");x&&u.push(`영업시간 ${x}.`);const g=ua(o,"pet_allowed");if(g==="false"&&u.push("반려동물 동반 불가."),g==="true"&&u.push("반려동물 동반 가능."),ua(o,"parking")==="true"){const y=ua(o,"parking_capacity");u.push(y?`주차 ${y}대 가능.`:"주차 가능.")}return r.phone&&u.push(`문의 ${r.phone}.`),u}const kv=6e3,Mv=5;function Ov(){const s=P(),{place:r,narrative:o}=s,u=Ua(s),f=_n(s),d=Ke(s),m=r.addressLocality??r.addressRegion,x=[...s.media].filter(j=>{var A;return(A=j.alt)==null?void 0:A.trim()}).sort((j,A)=>Number(A.isPrimary)-Number(j.isPrimary)).slice(0,Mv),[g,p]=O.useState(0),[y,v]=O.useState(!1),N=O.useRef(null),w=O.useCallback(j=>p(A=>(A+j+x.length)%x.length),[x.length]);return O.useEffect(()=>{if(y||x.length<2)return;const j=setInterval(()=>w(1),kv);return()=>clearInterval(j)},[y,w,x.length]),n.jsxs("section",{id:"top",className:"w-full",children:[n.jsxs("div",{className:"relative w-full overflow-hidden",style:{backgroundColor:"var(--tpl-inverse, #1c1917)",color:"var(--tpl-bg, #ffffff)",height:"clamp(24rem, 76vh, 42rem)"},onMouseEnter:()=>v(!0),onMouseLeave:()=>v(!1),onFocusCapture:()=>v(!0),onBlurCapture:()=>v(!1),onTouchStart:j=>{N.current=j.touches[0].clientX},onTouchEnd:j=>{const A=N.current;if(N.current=null,A===null)return;const L=j.changedTouches[0].clientX-A;Math.abs(L)>40&&w(L<0?1:-1)},children:[x.map((j,A)=>n.jsx("img",{src:j.url,alt:j.alt,fetchPriority:A===0?"high":"low",loading:A===0?void 0:"lazy",decoding:"async",className:"absolute inset-0 size-full object-cover object-center transition-opacity duration-700",style:{opacity:A===g?1:0}},j.mediaId)),n.jsx("div",{className:"pointer-events-none absolute inset-0",style:{background:"linear-gradient(to bottom, color-mix(in srgb, var(--tpl-inverse, #1c1917) 34%, transparent) 0%, color-mix(in srgb, var(--tpl-inverse, #1c1917) 16%, transparent) 45%, color-mix(in srgb, var(--tpl-inverse, #1c1917) 60%, transparent) 100%)"}}),n.jsxs("div",{className:"pointer-events-none absolute inset-0 flex flex-col items-center justify-center px-6 text-center",children:[m&&n.jsx("p",{className:"label opacity-100",children:m}),n.jsx("h1",{className:"serif mt-2",style:{fontSize:"var(--fs-display)",fontWeight:"var(--tpl-heading-weight, 700)",lineHeight:1.15},children:r.name}),(o.tagline??o.heroSubline)&&n.jsx("p",{className:"measure mt-3 text-[length:var(--fs-lead)] leading-relaxed opacity-100",children:n.jsx(ha,{children:o.tagline??o.heroSubline})})]}),x.length>1&&n.jsxs(n.Fragment,{children:[n.jsx(Fh,{dir:"prev",onClick:()=>w(-1)}),n.jsx(Fh,{dir:"next",onClick:()=>w(1)}),n.jsx("ul",{className:"absolute inset-x-0 bottom-5 flex items-center justify-center gap-2",children:x.map((j,A)=>n.jsx("li",{children:n.jsx("button",{type:"button",onClick:()=>p(A),"aria-label":`${A+1}번째 사진`,"aria-current":A===g,className:`h-1.5 rounded-full bg-current transition-all ${A===g?"w-7 opacity-100":"w-1.5 opacity-100 hover:opacity-100"}`})},j.mediaId))})]})]}),(f||u.length>0||d.length>0||r.phone)&&n.jsx("div",{className:"border-line paper w-full border-b",style:{backgroundColor:"var(--tpl-surface-alt, #f5f5f4)"},children:n.jsxs("div",{className:"shell flex flex-col items-center gap-4 py-4 lg:flex-row lg:justify-between lg:gap-8",children:[n.jsxs("dl",{className:"divide-line flex flex-wrap justify-center gap-y-2 sm:divide-x",children:[f&&n.jsxs("div",{className:"px-5 text-center sm:first:pl-0",children:[n.jsx("dt",{className:"label",children:"1박 최저가"}),n.jsx("dd",{className:"text-[length:var(--fs-lead)] font-bold tabular-nums",children:f})]}),u.map(j=>n.jsxs("div",{className:"px-5 text-center",children:[n.jsx("dt",{className:"label",children:j.label}),n.jsx("dd",{className:"text-[length:var(--fs-lead)] font-bold",children:j.value})]},j.label))]}),n.jsxs("div",{className:"flex shrink-0 gap-2",children:[r.phone&&n.jsxs("a",{href:`tel:${r.phone}`,className:"tap border-line tpl-border inline-flex items-center gap-1.5 rounded-lg border px-4 text-[length:var(--fs-sm)] font-semibold",children:[n.jsx(jt,{className:"size-4"}),n.jsx("span",{children:r.phone})]}),d.length>0&&n.jsx("a",{href:d[0].url,target:"_blank",rel:"noopener noreferrer",className:"tap inline-flex items-center justify-center rounded-lg px-6 text-[length:var(--fs-sm)] font-bold transition-opacity hover:opacity-100",style:{backgroundColor:"var(--color-brand)",color:"var(--tpl-bg, #fff)"},children:gt(d[0])})]})]})})]})}function Fh({dir:s,onClick:r}){const o=s==="prev"?zn:Ra;return n.jsx("button",{type:"button",onClick:r,"aria-label":s==="prev"?"이전 사진":"다음 사진",className:`tap absolute top-1/2 hidden -translate-y-1/2 items-center justify-center rounded-full bg-current/15 px-3 backdrop-blur-sm transition-colors hover:bg-current/25 sm:inline-flex ${s==="prev"?"left-4":"right-4"}`,children:n.jsx(o,{className:"size-5"})})}function Dv(){const s=P(),{place:r,narrative:o}=s,u=Ua(s).slice(0,3),f=_n(s),d=Ke(s),m=hv(s,"extra_person_fee"),x=[...s.media].filter(p=>{var y;return(y=p.alt)==null?void 0:y.trim()}).sort((p,y)=>Number(y.isPrimary)-Number(p.isPrimary))[0],g=r.addressLocality??r.addressRegion;return n.jsx("section",{id:"top",className:"border-line w-full border-b",children:n.jsxs("div",{className:"grid lg:grid-cols-2",children:[n.jsx("div",{className:"relative order-1 min-h-[16rem] lg:order-none lg:min-h-[34rem]",children:x&&n.jsx("img",{src:x.url,alt:x.alt,fetchPriority:"high",decoding:"async",className:"absolute inset-0 size-full object-cover"})}),n.jsxs("div",{className:"order-2 flex flex-col justify-center gap-6 px-6 py-10 sm:px-10 lg:order-none lg:px-14 lg:py-16",style:{backgroundColor:"var(--tpl-surface-alt, #f5f5f4)"},children:[n.jsxs("div",{children:[g&&n.jsx("p",{className:"label",children:g}),n.jsx("h1",{className:"serif mt-2",style:{fontSize:"var(--fs-display)",fontWeight:"var(--tpl-heading-weight, 700)",lineHeight:1.15},children:r.name}),n.jsx("p",{className:"measure mt-3 text-[length:var(--fs-lead)] leading-relaxed opacity-100",children:n.jsx(ha,{children:o.tagline??o.heroSubline??o.summary})})]}),n.jsxs("div",{className:"panel p-5 sm:p-6",children:[f&&n.jsxs("p",{className:"flex items-baseline gap-2",children:[n.jsx("span",{className:"text-[length:var(--fs-h3)] font-bold tabular-nums",children:f}),n.jsx("span",{className:"text-muted text-[length:var(--fs-xs)]",children:"1박 기준"})]}),u.length>0&&n.jsxs("dl",{className:"divide-line mt-4 divide-y border-t pt-1",children:[u.map(p=>n.jsxs("div",{className:"flex items-baseline justify-between gap-4 py-2 text-[length:var(--fs-sm)]",children:[n.jsx("dt",{className:"text-muted",children:p.label}),n.jsx("dd",{className:"font-semibold",children:p.value})]},p.label)),m&&n.jsxs("div",{className:"flex items-baseline justify-between gap-4 py-2 text-[length:var(--fs-sm)]",children:[n.jsx("dt",{className:"text-muted",children:m.label}),n.jsx("dd",{className:"font-semibold tabular-nums",children:m.value})]})]}),n.jsxs("div",{className:"mt-5 flex flex-col gap-2 sm:flex-row",children:[d.length>0&&n.jsx("a",{href:d[0].url,target:"_blank",rel:"noopener noreferrer",className:"tap flex flex-1 items-center justify-center rounded-lg px-6 text-[length:var(--fs-sm)] font-bold transition-opacity hover:opacity-100",style:{backgroundColor:"var(--color-brand)",color:"var(--tpl-bg, #fff)"},children:gt(d[0])}),r.phone&&n.jsxs("a",{href:`tel:${r.phone}`,className:"tap border-line tpl-border flex items-center justify-center gap-1.5 rounded-lg border px-5 text-[length:var(--fs-sm)] font-semibold",children:[n.jsx(jt,{className:"size-4"}),n.jsx("span",{children:r.phone})]})]})]})]})]})})}const Rv={"stay-reservation":"reservation","stay-oasi":"oasi","stay-studio":"studio","stay-pastel":"pastel","stay-editorial":"editorial"};function Yp(s){return Rv[s??""]??"default"}function yr(){return Yp(P().theme.templateId)}const hr=5,lu=1.8,Uv=3;function Hv(s){const r=s*hr,o=f=>`${(f/r*100).toFixed(3)}%`;return`${s<2?"":` .stay2-hero-slide { animation: stay2-hero-fade ${r}s ease-in-out infinite; } @keyframes stay2-hero-fade { 0% { opacity: 1; } ${o(hr)} { opacity: 1; } ${o(hr+lu)} { opacity: 0; } ${o(r-lu)} { opacity: 0; } 100% { opacity: 1; } }`} .stay2-hero-focus { animation: stay2-hero-focus 1.6s cubic-bezier(0.16, 1, 0.3, 1) both; } @keyframes stay2-hero-focus { 0% { opacity: 0; filter: blur(0.22em); } 40% { opacity: 1; } 100% { opacity: 1; filter: blur(0); } } @media (prefers-reduced-motion: reduce) { .stay2-hero-slide, .stay2-hero-focus { animation: none; } } `}function Lv(s,r){return((r-s)%r*hr+lu).toFixed(1)}function Bv(){const s=P(),{place:r,narrative:o}=s,u=ht(s),f=Ke(s)[0],d=o.tagline??o.heroSubline,m=[...s.media].filter(p=>{var y;return(y=p.alt)==null?void 0:y.trim()}).sort((p,y)=>Number(y.isPrimary)-Number(p.isPrimary)),x=m.length<2?0:Math.min(m.length,Uv),g=f?{href:f.url,label:`${Bs(f)}에서 예약`,external:!0}:r.phone?{href:`tel:${r.phone}`,label:`${r.phone} 예약 문의`,external:!1}:s.units.length>0?{href:"#units",label:`${u.label} 보기`,external:!1}:null;return n.jsxs("section",{id:"top",className:"w-full",children:[n.jsx("style",{dangerouslySetInnerHTML:{__html:Hv(x)}}),n.jsxs("div",{className:"relative flex w-full items-center justify-center overflow-hidden",style:{backgroundColor:"var(--tpl-inverse, #1c1917)",color:"var(--tpl-bg, #ffffff)",height:"100svh"},children:[m.map((p,y)=>n.jsx("img",{src:p.url,alt:p.alt,fetchPriority:y===0?"high":y0?m:xu(s).slice(0,4),g=(u==null?void 0:u.caption)??r.name;return n.jsxs("section",{id:"top","data-oasi":!0,"aria-labelledby":"top-heading",className:"pt-12 lg:pt-16",children:[n.jsx("h1",{id:"top-heading",className:"text-[length:var(--fs-sm)] font-normal tracking-[0.08em] leading-[1.9]",children:r.name}),o.heroHeadline&&n.jsx("p",{className:"text-muted measure mt-3 text-[length:var(--fs-xs)] leading-[1.9]",children:o.heroHeadline}),u&&n.jsxs("figure",{className:"relative mx-auto mt-10 w-full max-w-[34rem]",children:[n.jsx("img",{src:u.url,alt:u.alt,fetchPriority:"high",decoding:"async",width:u.width,height:u.height,className:"block h-[clamp(17rem,27vw,24rem)] w-full object-cover"}),n.jsx("figcaption",{className:"text-muted absolute left-full top-0 ml-5 hidden max-h-full overflow-hidden text-ellipsis whitespace-nowrap text-[length:var(--fs-xs)] tracking-[0.14em] xl:block",style:{writingMode:"vertical-rl"},children:g})]}),(f||x.length>0)&&n.jsxs("dl",{className:"border-line mt-10 flex flex-wrap gap-x-10 gap-y-4 border-t pt-5 text-[length:var(--fs-xs)] leading-[1.9]",children:[f&&n.jsxs("div",{children:[n.jsx("dt",{className:"text-muted",children:"최저가"}),n.jsx("dd",{children:f})]}),x.map(p=>n.jsxs("div",{children:[n.jsx("dt",{className:"text-muted",children:p.label}),n.jsx("dd",{children:p.value})]},p.label))]}),d.length>0&&n.jsx("ul",{className:"mt-6 flex flex-wrap items-center gap-x-8",children:d.map(p=>n.jsx("li",{children:n.jsx("a",{href:p.url,target:"_blank",rel:"noopener noreferrer",className:"tap inline-flex items-center text-[length:var(--fs-sm)] underline underline-offset-[6px]",style:{color:"var(--color-brand)"},children:gt(p)})},p.url))})]})}function $v(){const s=P(),r=bu(s),o=vr(s),u=o&&r.some(f=>f.mediaId===o.mediaId)?[o,...r.filter(f=>f.mediaId!==o.mediaId)]:r;return u.length===0?null:n.jsx("section",{id:"top","aria-label":`${s.place.name} 사진`,className:"w-full",children:n.jsx("div",{className:"columns-1 gap-2 sm:columns-2",children:u.map((f,d)=>n.jsx("figure",{className:"mb-2 break-inside-avoid",children:n.jsx("img",{src:f.url,alt:f.alt,loading:d===0?"eager":"lazy",fetchPriority:d===0?"high":void 0,decoding:"async",width:f.width,height:f.height,className:"block h-auto w-full"})},f.mediaId))})})}function Yv(){const s=P(),{place:r,narrative:o}=s,u=Ua(s),f=_n(s),d=Ke(s),m=o.tagline??o.summary,x=r.addressLocality??r.addressRegion,g=[...s.media].filter(p=>{var y;return(y=p.alt)==null?void 0:y.trim()}).sort((p,y)=>Number(y.isPrimary)-Number(p.isPrimary)).slice(0,3);return n.jsxs("section",{id:"top","data-pastel":"own",className:"w-full",children:[n.jsxs("div",{className:"relative w-full overflow-hidden",style:{backgroundColor:"var(--pastel-1)"},children:[n.jsxs("div",{"aria-hidden":!0,className:"pointer-events-none absolute inset-0",children:[n.jsx("span",{className:"absolute rounded-full",style:{width:"clamp(12rem, 26vw, 22rem)",aspectRatio:"1",backgroundColor:"var(--pastel-2)",right:"-6%",top:"-6%",opacity:.75}}),n.jsx("span",{className:"absolute rounded-full",style:{width:"clamp(8rem, 18vw, 15rem)",aspectRatio:"1",backgroundColor:"var(--pastel-3)",left:"46%",bottom:"-10%",opacity:.7}})]}),n.jsxs("div",{className:"shell relative grid items-center gap-8 lg:grid-cols-2 lg:gap-14",style:{paddingBlock:"var(--section-space)"},children:[n.jsxs("div",{className:"order-2 lg:order-1",children:[x&&n.jsx("p",{className:"inline-flex items-center rounded-full px-3 py-1 text-[length:var(--fs-xs)] font-extrabold",style:{backgroundColor:"var(--tpl-bg, #fff)",color:"var(--pastel-ink)"},children:x}),n.jsx("h1",{className:"mt-4 break-keep",style:{fontSize:"var(--fs-display)",fontWeight:800,lineHeight:1.2,letterSpacing:"var(--tpl-heading-tracking, -0.03em)"},children:r.name}),m&&n.jsx("p",{className:"measure mt-4 text-[length:var(--fs-lead)] font-medium leading-relaxed opacity-100",children:n.jsx(ha,{children:m})}),d.length>0&&n.jsx("a",{href:d[0].url,target:"_blank",rel:"noopener noreferrer",className:"tap mt-7 inline-flex items-center justify-center rounded-full px-8 text-[length:var(--fs-sm)] font-extrabold transition-opacity hover:opacity-100",style:{backgroundColor:"var(--pastel-ink)",color:"var(--tpl-bg, #fff)"},children:gt(d[0])})]}),n.jsxs("div",{className:"order-1 lg:order-2",children:[g[0]&&n.jsx("div",{className:"relative w-full overflow-hidden",style:{aspectRatio:"1 / 1",borderRadius:"calc(var(--tpl-radius, 24px) * 1.6)",boxShadow:"0 0 0 clamp(6px, 1.4vw, 12px) var(--tpl-bg, #fff)"},children:n.jsx("img",{src:g[0].url,alt:g[0].alt,fetchPriority:"high",decoding:"async",className:"size-full object-cover"})}),g.length>1&&n.jsx("ul",{className:"mt-3 grid grid-cols-2 gap-3",children:g.slice(1).map(p=>n.jsx("li",{className:"relative overflow-hidden",style:{aspectRatio:"4 / 3",borderRadius:"var(--tpl-radius, 24px)",boxShadow:"0 0 0 clamp(4px, 1vw, 8px) var(--tpl-bg, #fff)"},children:n.jsx("img",{src:p.url,alt:p.alt,loading:"lazy",decoding:"async",className:"size-full object-cover"})},p.mediaId))})]})]})]}),(f||u.length>0)&&n.jsx("div",{className:"w-full",style:{backgroundColor:"var(--pastel-2)"},children:n.jsxs("dl",{className:"shell flex flex-wrap items-center justify-center gap-x-12 gap-y-5 py-8 text-center",children:[f&&n.jsxs("div",{children:[n.jsx("dt",{className:"text-[length:var(--fs-xs)] font-extrabold",style:{color:"var(--tpl-bg, #fff)",opacity:.85},children:"최저가"}),n.jsx("dd",{className:"mt-1 font-extrabold tabular-nums",style:{fontSize:"var(--fs-h3)",color:"var(--tpl-bg, #fff)"},children:f})]}),u.map(p=>n.jsxs("div",{children:[n.jsx("dt",{className:"text-[length:var(--fs-xs)] font-extrabold",style:{color:"var(--tpl-bg, #fff)",opacity:.85},children:p.label}),n.jsx("dd",{className:"mt-1 font-extrabold",style:{fontSize:"var(--fs-h3)",color:"var(--tpl-bg, #fff)"},children:p.value})]},p.label))]})})]})}const qs="repeating-linear-gradient(90deg, color-mix(in oklab, currentColor 3%, transparent) 0 1px, transparent 1px 6px),repeating-linear-gradient(0deg, color-mix(in oklab, currentColor 2%, transparent) 0 1px, transparent 1px 6px)",Gv={intro:"about",info:"info",rooms:"units",menu:"units",programs:"units",pricing:"pricing",booking:"booking",space:"space",inquiry:"inquiry",exhibition:"exhibition",photos:"gallery",local:"guide",weather:"weather",map:"location",faq:"faq",songs:"songs",daily:"daily",chronicle:"chronicle",reading:"reading",people:"people",quiz:"quiz",postcard:"postcard",video:"video",itinerary:"itinerary"},Xv={about:"소개",info:"이용 정보",pricing:"요금",booking:"예약 안내",space:"공간",inquiry:"문의",exhibition:"관람 안내",gallery:"사진",guide:"주변",weather:"날씨",location:"오시는 길",faq:"자주 묻는 질문",songs:"노래",daily:"일력",chronicle:"연표",reading:"읽기",people:"인물",quiz:"퀴즈",postcard:"엽서",video:"영상",itinerary:"일정"};function Wh(s){return String(s).padStart(2,"0")}function Gp(){var f;const s=P(),r=ht(s),o=new Set,u=[];for(const d of dv(s)){const m=Gv[d.id];if(!m||o.has(m)||m==="units"&&s.units.length===0)continue;o.add(m);const x=(f=d.name)==null?void 0:f.trim();u.push({no:Wh(u.length+1),label:x||Xv[m]||r.label,anchor:m})}return o.has("location")||u.push({no:Wh(u.length+1),label:"오시는 길",anchor:"location"}),u}function yu({id:s,title:r,lead:o,aside:u}){var d;const f=(d=Gp().find(m=>m.anchor===s))==null?void 0:d.no;return n.jsxs("header",{className:"mb-7 sm:mb-10",children:[n.jsx("div",{"aria-hidden":!0,className:"mb-5 h-0.5 w-full bg-current opacity-100"}),n.jsxs("div",{className:"flex flex-col gap-4 lg:flex-row lg:items-end lg:justify-between lg:gap-10",children:[n.jsxs("div",{className:"relative min-w-0 flex-1",children:[f&&n.jsx("span",{"aria-hidden":!0,className:"serif pointer-events-none absolute left-0 top-1/2 -translate-y-1/2 select-none leading-none tabular-nums",style:{fontSize:"clamp(2.5rem, 7vw, 5rem)",fontWeight:800,opacity:.12},children:f}),n.jsx("h2",{id:`${s}-heading`,className:"h2 relative pl-9 sm:pl-14 xl:pl-20",style:{fontWeight:800},children:r}),o&&n.jsx("p",{className:"text-muted measure relative mt-2 pl-9 font-serif text-[length:var(--fs-sm)] leading-relaxed sm:pl-14 xl:pl-20",children:o})]}),u&&n.jsx("div",{className:"shrink-0",children:u})]})]})}function Qv(){const s=P(),{place:r,narrative:o}=s,u=vr(s),f=ht(s),d=hl(s),m=Ua(s),x=_n(s),g=Ke(s)[0],p=Cn(s)[0],y=o.tagline??o.heroSubline,N=[r.addressSubLocality??r.addressLocality??r.addressRegion,d.length>0?`${f.label} ${d.length}개`:void 0,x].filter(w=>!!w);return n.jsx("section",{id:"top",className:"relative w-full",style:{backgroundImage:qs},children:n.jsxs("div",{className:"grid grid-cols-12",children:[u&&n.jsx("div",{className:"relative col-span-12 xl:col-span-8 xl:col-start-5 xl:row-start-1",style:{minHeight:"clamp(15rem, 52vh, 34rem)",backgroundColor:"var(--tpl-inverse)"},children:n.jsx("img",{src:u.url,alt:u.alt,fetchPriority:"high",decoding:"async",width:u.width,height:u.height,className:"absolute inset-0 size-full object-cover"})}),n.jsx("div",{className:"z-10 col-span-12 xl:col-start-1 xl:row-start-1 xl:mb-12 xl:mr-16 xl:self-end",style:{backgroundColor:"color-mix(in srgb, var(--tpl-inverse) 88%, transparent)",color:"var(--tpl-bg)"},children:n.jsx("h1",{className:"serif px-4 py-5 sm:px-6 xl:py-8 xl:pl-10 xl:pr-16",style:{fontSize:"clamp(2.25rem, 7.5vw, 5.5rem)",fontWeight:800,lineHeight:.98,letterSpacing:"-0.035em"},children:r.name})}),n.jsxs("div",{className:"col-span-12 flex flex-col gap-5 px-4 py-8 sm:px-6 xl:col-span-4 xl:col-start-1 xl:row-start-1 xl:py-12 xl:pb-56 xl:pl-10 xl:pr-8",children:[y&&n.jsx("p",{className:"measure font-serif text-[length:var(--fs-lead)] leading-relaxed",children:n.jsx(ha,{children:y})}),N.length>0&&n.jsx("p",{className:"text-[length:var(--fs-sm)] font-semibold tabular-nums",children:N.join(" · ")}),(g||r.phone||p)&&n.jsxs("div",{className:"flex flex-wrap items-center gap-x-6 gap-y-1 text-[length:var(--fs-sm)] font-bold",children:[g&&n.jsx("a",{href:g.url,target:"_blank",rel:"noopener noreferrer",className:"tap inline-flex items-center underline underline-offset-4",children:gt(g)}),r.phone&&n.jsx("a",{href:`tel:${r.phone}`,className:"tap inline-flex items-center underline underline-offset-4",children:r.phone}),p&&n.jsxs("a",{href:p.url,target:"_blank",rel:"noopener noreferrer",className:"tap inline-flex items-center underline underline-offset-4",children:[pl(p)," 문의"]})]}),m.length>0&&n.jsx("dl",{className:"mt-1",children:m.map(w=>n.jsxs("div",{className:"border-line flex items-baseline justify-between gap-4 border-t py-2 text-[length:var(--fs-sm)]",children:[n.jsx("dt",{className:"text-muted shrink-0",children:w.label}),n.jsx("dd",{className:"text-right font-semibold",children:w.value})]},w.label))})]})]})})}function Vv(){var g;const s=P(),r=yr();if(r==="reservation")return n.jsx(Bv,{});if(r==="oasi")return n.jsx(qv,{});if(r==="studio")return n.jsx($v,{});if(r==="pastel")return n.jsx(Yv,{});if(r==="editorial")return n.jsx(Qv,{});const o=(g=s.theme.sections.find(p=>p.id==="hero"))==null?void 0:g.variantId;if(o==="hero.slideshow")return n.jsx(Ov,{});if(o==="hero.split")return n.jsx(Dv,{});const{place:u,narrative:f}=s,d=vr(s),m=ht(s);Ke(s);const x=u.addressLocality??u.addressRegion;return n.jsx("section",{id:"top",className:"w-full",children:n.jsxs("div",{className:"relative flex w-full items-end overflow-hidden",style:{backgroundColor:"var(--tpl-inverse, #1c1917)",color:"var(--tpl-bg, #ffffff)",minHeight:"clamp(24rem, 62vh, 36rem)"},children:[d&&n.jsxs("div",{className:"absolute inset-0 z-0",children:[n.jsx("img",{src:d.url,alt:d.alt,fetchPriority:"high",decoding:"async",width:d.width,height:d.height,className:"size-full object-cover object-center"}),n.jsx("div",{className:"absolute inset-0",style:{background:"linear-gradient(to top, color-mix(in srgb, var(--tpl-inverse, #1c1917) 88%, transparent) 0%, color-mix(in srgb, var(--tpl-inverse, #1c1917) 45%, transparent) 34%, transparent 66%)"}})]}),n.jsxs("div",{className:"shell relative z-10 pb-10 pt-24 sm:pb-12",children:[x&&n.jsxs("p",{className:"mb-3 inline-flex items-center gap-1 text-[length:var(--fs-xs)] opacity-100",children:[n.jsx(gr,{className:"size-3.5"}),n.jsx("span",{children:x})]}),n.jsx("h1",{className:"serif",style:{fontSize:"var(--fs-display)",fontWeight:"var(--tpl-heading-weight, 700)",lineHeight:1.15},children:u.name}),(f.tagline??f.heroSubline??f.summary)&&n.jsx("p",{className:"measure mt-3 text-[length:var(--fs-lead)] leading-relaxed opacity-100",children:n.jsx(ha,{children:f.tagline??f.heroSubline??f.summary})}),s.units.length>0&&n.jsxs("a",{href:"#units",className:"mt-6 inline-flex items-center gap-1 text-[length:var(--fs-sm)] font-medium underline-offset-4 opacity-100 transition-opacity hover:opacity-100",children:[n.jsxs("span",{children:[m.label," 보기"]}),n.jsx(fu,{className:"size-4"})]})]})]})})}function ju(s){if(!s)return"";const r=new Date(s);return Number.isNaN(r.getTime())?"":`${r.getFullYear()}년 ${r.getMonth()+1}월 ${r.getDate()}일`}function Vs(s){if(!s)return"";const r=new Date(s);return Number.isNaN(r.getTime())?"":r.toLocaleDateString("sv-SE",{timeZone:"Asia/Seoul"})}function Zv(s){return`https://search.naver.com/search.naver?query=${encodeURIComponent(s)}`}function Ih(s){return`https://map.naver.com/p/search/${encodeURIComponent(s)}`}function Kv(s){return`https://www.youtube.com/results?search_query=${encodeURIComponent(s)}`}function Nu(s){return s.replace(/,/g," ").replace(/\s+/g," ").trim()}function Jv(s,r,o){return r==null||o==null?`https://map.kakao.com/link/search/${encodeURIComponent(s)}`:`https://map.kakao.com/link/to/${encodeURIComponent(Nu(s))},${r},${o}`}function Fv(s,r){const o=u=>`${u.lng},${u.lat},${encodeURIComponent(Nu(u.name))}`;return`https://map.naver.com/p/directions/${o(s)}/${o(r)}/-/car`}function Xp(s,r,o){return r==null||o==null?`https://map.naver.com/p/search/${encodeURIComponent(s)}`:`https://map.naver.com/p/directions/-/${o},${r},${encodeURIComponent(Nu(s))}/-/transit`}function Wv(s,r,o=16/9,u=.0022){const f=Math.max(Math.cos(s*Math.PI/180),.01),d=o*u/f;return`https://www.openstreetmap.org/export/embed.html?bbox=${[r-d,s-u,r+d,s+u].map(x=>x.toFixed(6)).join(",")}&layer=mapnik&marker=${s},${r}`}function Iv(s,r,o){if(r==null||o==null)return;const u=encodeURIComponent(s);return`tmap://route?goalname=${u}&goalx=${o}&goaly=${r}&rGoName=${u}&rGoX=${o}&rGoY=${r}`}function Su({id:s,title:r,lead:o,aside:u}){return n.jsxs("header",{className:"mb-10 flex flex-col items-center gap-4 text-center sm:mb-14",children:[n.jsx("h2",{id:`${s}-heading`,className:"serif max-w-full",style:{fontSize:"var(--fs-h2)",fontWeight:300,letterSpacing:"0.04em",lineHeight:1.35},children:r}),n.jsx("i",{"aria-hidden":!0,className:"block h-px w-10 bg-current opacity-25"}),o&&n.jsx("p",{className:"text-muted measure text-[length:var(--fs-sm)] leading-loose",children:o}),u&&n.jsx("div",{className:"text-[length:var(--fs-xs)]",children:u})]})}function wu({id:s,title:r,lead:o,aside:u}){return n.jsxs("header",{className:"mb-8 flex flex-col gap-3 sm:flex-row sm:items-baseline sm:justify-between sm:gap-8",children:[n.jsxs("div",{className:"min-w-0",children:[n.jsxs("h2",{id:`${s}-heading`,className:"text-[length:var(--fs-sm)] font-normal tracking-[0.08em]",children:["[",r,"]"]}),o&&n.jsx("p",{className:"text-muted measure mt-3 text-[length:var(--fs-xs)] leading-[1.9]",children:o})]}),u&&n.jsx("div",{className:"shrink-0 text-[length:var(--fs-xs)]",children:u})]})}function Eu({id:s,title:r,lead:o,aside:u}){return n.jsx("header",{className:"mb-7 sm:mb-10",children:n.jsxs("div",{className:"flex flex-col gap-3 sm:flex-row sm:items-baseline sm:justify-between sm:gap-10",children:[n.jsxs("div",{className:"min-w-0",children:[n.jsx("h2",{id:`${s}-heading`,className:"serif min-w-0 font-extrabold",style:{fontSize:"var(--fs-h2)",letterSpacing:"0.01em",lineHeight:1.2,color:"var(--tpl-text)"},children:r}),o&&n.jsx("p",{className:"text-muted measure mt-2 text-[length:var(--fs-sm)]",style:{lineHeight:1.7},children:o})]}),u&&n.jsx("div",{className:"shrink-0 text-[length:var(--fs-xs)]",children:u})]})})}function zu({id:s,title:r,lead:o,aside:u}){return n.jsxs("header",{className:"mb-8 flex flex-col items-center gap-3 text-center sm:mb-10",children:[n.jsx("i",{"aria-hidden":!0,className:"block h-[6px] w-10 rounded-full",style:{backgroundColor:"var(--pastel-2, currentColor)",opacity:.9}}),n.jsx("h2",{id:`${s}-heading`,className:"h2 break-keep",style:{fontSize:"calc(var(--fs-h2) * 1.15)",fontWeight:800},children:r}),o&&n.jsx("p",{className:"measure text-[length:var(--fs-sm)] leading-relaxed opacity-65",children:o}),u&&n.jsx("div",{className:"text-[length:var(--fs-sm)]",children:u})]})}const Pv={base:{backgroundColor:"var(--tpl-surface, #ffffff)"},alt:{backgroundColor:"var(--tpl-surface-alt, #f5f5f4)"},dark:{backgroundColor:"var(--tpl-inverse, #1c1917)",color:"var(--tpl-bg, #ffffff)"}};function rt({id:s,title:r,lead:o,tone:u="base",aside:f,footnote:d,children:m,wide:x,bare:g}){const p=yr(),y=p==="reservation"?Su:p==="oasi"?wu:p==="studio"?Eu:p==="pastel"?zu:p==="editorial"?yu:ey;return n.jsx("section",{id:s,"aria-labelledby":`${s}-heading`,className:"border-line paper w-full border-b",style:{...Pv[u],paddingBlock:"var(--section-space)"},children:n.jsxs("div",{className:x?"w-full":"shell",children:[!g&&n.jsx("div",{className:x?"shell":void 0,children:n.jsx(y,{id:s,title:r,lead:o,aside:f})}),m,d&&n.jsx("p",{className:`text-muted mt-5 text-[length:var(--fs-xs)] ${x?"shell":""}`,children:d})]})})}function ey({id:s,title:r,lead:o,aside:u}){return n.jsx("header",{className:"mb-6 sm:mb-8",children:n.jsxs("div",{className:"flex flex-col gap-2 sm:flex-row sm:items-end sm:justify-between sm:gap-6",children:[n.jsxs("div",{className:"min-w-0",children:[n.jsxs("h2",{id:`${s}-heading`,className:"h2 flex items-center gap-2.5",children:[n.jsx("i",{"aria-hidden":!0,className:"h-[1em] w-[3px] shrink-0 bg-current opacity-25"}),n.jsx("span",{className:"min-w-0",children:r})]}),o&&n.jsx("p",{className:"text-muted measure mt-2 pl-[calc(3px+0.625rem)] text-[length:var(--fs-sm)]",children:o})]}),u&&n.jsx("div",{className:"shrink-0",children:u})]})})}function ty(s){return Object.prototype.toString.call(s)==="[object Object]"}function Ph(s){return ty(s)||Array.isArray(s)}function ly(){return!!(typeof window<"u"&&window.document&&window.document.createElement)}function Tu(s,r){const o=Object.keys(s),u=Object.keys(r);if(o.length!==u.length)return!1;const f=JSON.stringify(Object.keys(s.breakpoints||{})),d=JSON.stringify(Object.keys(r.breakpoints||{}));return f!==d?!1:o.every(m=>{const x=s[m],g=r[m];return typeof x=="function"?`${x}`==`${g}`:!Ph(x)||!Ph(g)?x===g:Tu(x,g)})}function ep(s){return s.concat().sort((r,o)=>r.name>o.name?1:-1).map(r=>r.options)}function ay(s,r){if(s.length!==r.length)return!1;const o=ep(s),u=ep(r);return o.every((f,d)=>{const m=u[d];return Tu(f,m)})}function Au(s){return typeof s=="number"}function au(s){return typeof s=="string"}function jr(s){return typeof s=="boolean"}function tp(s){return Object.prototype.toString.call(s)==="[object Object]"}function Ge(s){return Math.abs(s)}function _u(s){return Math.sign(s)}function Us(s,r){return Ge(s-r)}function ny(s,r){if(s===0||r===0||Ge(s)<=Ge(r))return 0;const o=Us(Ge(s),Ge(r));return Ge(o/s)}function sy(s){return Math.round(s*100)/100}function $s(s){return Ys(s).map(Number)}function al(s){return s[Zs(s)]}function Zs(s){return Math.max(0,s.length-1)}function Cu(s,r){return r===Zs(s)}function lp(s,r=0){return Array.from(Array(s),(o,u)=>r+u)}function Ys(s){return Object.keys(s)}function Qp(s,r){return[s,r].reduce((o,u)=>(Ys(u).forEach(f=>{const d=o[f],m=u[f],x=tp(d)&&tp(m);o[f]=x?Qp(d,m):m}),o),{})}function nu(s,r){return typeof r.MouseEvent<"u"&&s instanceof r.MouseEvent}function iy(s,r){const o={start:u,center:f,end:d};function u(){return 0}function f(g){return d(g)/2}function d(g){return r-g}function m(g,p){return au(s)?o[s](g):s(r,g,p)}return{measure:m}}function Gs(){let s=[];function r(f,d,m,x={passive:!0}){let g;if("addEventListener"in f)f.addEventListener(d,m,x),g=()=>f.removeEventListener(d,m,x);else{const p=f;p.addListener(m),g=()=>p.removeListener(m)}return s.push(g),u}function o(){s=s.filter(f=>f())}const u={add:r,clear:o};return u}function ry(s,r,o,u){const f=Gs(),d=1e3/60;let m=null,x=0,g=0;function p(){f.add(s,"visibilitychange",()=>{s.hidden&&j()})}function y(){w(),f.clear()}function v(L){if(!g)return;m||(m=L,o(),o());const H=L-m;for(m=L,x+=H;x>=d;)o(),x-=d;const G=x/d;u(G),g&&(g=r.requestAnimationFrame(v))}function N(){g||(g=r.requestAnimationFrame(v))}function w(){r.cancelAnimationFrame(g),m=null,x=0,g=0}function j(){m=null,x=0}return{init:p,destroy:y,start:N,stop:w,update:o,render:u}}function cy(s,r){const o=r==="rtl",u=s==="y",f=u?"y":"x",d=u?"x":"y",m=!u&&o?-1:1,x=y(),g=v();function p(j){const{height:A,width:L}=j;return u?A:L}function y(){return u?"top":o?"right":"left"}function v(){return u?"bottom":o?"left":"right"}function N(j){return j*m}return{scroll:f,cross:d,startEdge:x,endEdge:g,measureSize:p,direction:N}}function Da(s=0,r=0){const o=Ge(s-r);function u(p){return pr}function d(p){return u(p)||f(p)}function m(p){return d(p)?u(p)?s:r:p}function x(p){return o?p-o*Math.ceil((p-r)/o):p}return{length:o,max:r,min:s,constrain:m,reachedAny:d,reachedMax:f,reachedMin:u,removeOffset:x}}function Vp(s,r,o){const{constrain:u}=Da(0,s),f=s+1;let d=m(r);function m(N){return o?Ge((f+N)%f):u(N)}function x(){return d}function g(N){return d=m(N),v}function p(N){return y().set(x()+N)}function y(){return Vp(s,x(),o)}const v={get:x,set:g,add:p,clone:y};return v}function oy(s,r,o,u,f,d,m,x,g,p,y,v,N,w,j,A,L,H,G){const{cross:R,direction:Z}=s,X=["INPUT","SELECT","TEXTAREA"],V={passive:!1},Y=Gs(),W=Gs(),le=Da(50,225).constrain(w.measure(20)),xe={mouse:300,touch:400},ce={mouse:500,touch:600},K=j?43:25;let he=!1,Xe=0,ie=0,M=!1,Q=!1,ae=!1,pe=!1;function Ne(te){if(!G)return;function Ce(tt){(jr(G)||G(te,tt))&&fe(tt)}const De=r;Y.add(De,"dragstart",tt=>tt.preventDefault(),V).add(De,"touchmove",()=>{},V).add(De,"touchend",()=>{}).add(De,"touchstart",Ce).add(De,"mousedown",Ce).add(De,"touchcancel",ze).add(De,"contextmenu",ze).add(De,"click",Te,!0)}function E(){Y.clear(),W.clear()}function q(){const te=pe?o:r;W.add(te,"touchmove",oe,V).add(te,"touchend",ze).add(te,"mousemove",oe,V).add(te,"mouseup",ze)}function J(te){const Ce=te.nodeName||"";return X.includes(Ce)}function F(){return(j?ce:xe)[pe?"mouse":"touch"]}function re(te,Ce){const De=v.add(_u(te)*-1),tt=y.byDistance(te,!j).distance;return j||Ge(te)=2,!(Ce&&te.button!==0)&&(J(te.target)||(M=!0,d.pointerDown(te),p.useFriction(0).useDuration(0),f.set(m),q(),Xe=d.readPoint(te),ie=d.readPoint(te,R),N.emit("pointerDown")))}function oe(te){if(!nu(te,u)&&te.touches.length>=2)return ze(te);const De=d.readPoint(te),tt=d.readPoint(te,R),Nt=Us(De,Xe),It=Us(tt,ie);if(!Q&&!pe&&(!te.cancelable||(Q=Nt>It,!Q)))return ze(te);const nl=d.pointerMove(te);Nt>A&&(ae=!0),p.useFriction(.3).useDuration(.75),x.start(),f.add(Z(nl)),te.preventDefault()}function ze(te){const De=y.byDistance(0,!1).index!==v.get(),tt=d.pointerUp(te)*F(),Nt=re(Z(tt),De),It=ny(tt,Nt),nl=K-10*It,Bt=H+It/50;Q=!1,M=!1,W.clear(),p.useDuration(nl).useFriction(Bt),g.distance(Nt,!j),pe=!1,N.emit("pointerUp")}function Te(te){ae&&(te.stopPropagation(),te.preventDefault(),ae=!1)}function at(){return M}return{init:Ne,destroy:E,pointerDown:at}}function uy(s,r){let u,f;function d(v){return v.timeStamp}function m(v,N){const j=`client${(N||s.scroll)==="x"?"X":"Y"}`;return(nu(v,r)?v:v.touches[0])[j]}function x(v){return u=v,f=v,m(v)}function g(v){const N=m(v)-m(f),w=d(v)-d(u)>170;return f=v,w&&(u=v),N}function p(v){if(!u||!f)return 0;const N=m(f)-m(u),w=d(v)-d(u),j=d(v)-d(f)>170,A=N/w;return w&&!j&&Ge(A)>.1?A:0}return{pointerDown:x,pointerMove:g,pointerUp:p,readPoint:m}}function fy(){function s(o){const{offsetTop:u,offsetLeft:f,offsetWidth:d,offsetHeight:m}=o;return{top:u,right:f+d,bottom:u+m,left:f,width:d,height:m}}return{measure:s}}function dy(s){function r(u){return s*(u/100)}return{measure:r}}function my(s,r,o,u,f,d,m){const x=[s].concat(u);let g,p,y=[],v=!1;function N(L){return f.measureSize(m.measure(L))}function w(L){if(!d)return;p=N(s),y=u.map(N);function H(G){for(const R of G){if(v)return;const Z=R.target===s,X=u.indexOf(R.target),V=Z?p:y[X],Y=N(Z?s:u[X]);if(Ge(Y-V)>=.5){L.reInit(),r.emit("resize");break}}}g=new ResizeObserver(G=>{(jr(d)||d(L,G))&&H(G)}),o.requestAnimationFrame(()=>{x.forEach(G=>g.observe(G))})}function j(){v=!0,g&&g.disconnect()}return{init:w,destroy:j}}function hy(s,r,o,u,f,d){let m=0,x=0,g=f,p=d,y=s.get(),v=0;function N(){const V=u.get()-s.get(),Y=!g;let W=0;return Y?(m=0,o.set(u),s.set(u),W=V):(o.set(s),m+=V/g,m*=p,y+=m,s.add(m),W=y-v),x=_u(W),v=y,X}function w(){const V=u.get()-r.get();return Ge(V)<.001}function j(){return g}function A(){return x}function L(){return m}function H(){return R(f)}function G(){return Z(d)}function R(V){return g=V,X}function Z(V){return p=V,X}const X={direction:A,duration:j,velocity:L,seek:N,settled:w,useBaseFriction:G,useBaseDuration:H,useFriction:Z,useDuration:R};return X}function py(s,r,o,u,f){const d=f.measure(10),m=f.measure(50),x=Da(.1,.99);let g=!1;function p(){return!(g||!s.reachedAny(o.get())||!s.reachedAny(r.get()))}function y(w){if(!p())return;const j=s.reachedMin(r.get())?"min":"max",A=Ge(s[j]-r.get()),L=o.get()-r.get(),H=x.constrain(A/m);o.subtract(L*H),!w&&Ge(L){const{min:L,max:H}=d,G=d.constrain(j),R=!A,Z=Cu(o,A);return R?H:Z||p(L,G)?L:p(H,G)?H:G}).map(j=>parseFloat(j.toFixed(3)))}function N(){if(r<=s+f)return[d.max];if(u==="keepSnaps")return m;const{min:j,max:A}=x;return m.slice(j,A)}return{snapsContained:g,scrollContainLimit:x}}function gy(s,r,o){const u=r[0],f=o?u-s:al(r);return{limit:Da(f,u)}}function by(s,r,o,u){const d=r.min+.1,m=r.max+.1,{reachedMin:x,reachedMax:g}=Da(d,m);function p(N){return N===1?g(o.get()):N===-1?x(o.get()):!1}function y(N){if(!p(N))return;const w=s*(N*-1);u.forEach(j=>j.add(w))}return{loop:y}}function vy(s){const{max:r,length:o}=s;function u(d){const m=d-r;return o?m/-o:0}return{get:u}}function yy(s,r,o,u,f){const{startEdge:d,endEdge:m}=s,{groupSlides:x}=f,g=v().map(r.measure),p=N(),y=w();function v(){return x(u).map(A=>al(A)[m]-A[0][d]).map(Ge)}function N(){return u.map(A=>o[d]-A[d]).map(A=>-Ge(A))}function w(){return x(p).map(A=>A[0]).map((A,L)=>A+g[L])}return{snaps:p,snapsAligned:y}}function jy(s,r,o,u,f,d){const{groupSlides:m}=f,{min:x,max:g}=u,p=y();function y(){const N=m(d),w=!s||r==="keepSnaps";return o.length===1?[d]:w?N:N.slice(x,g).map((j,A,L)=>{const H=!A,G=Cu(L,A);if(H){const R=al(L[0])+1;return lp(R)}if(G){const R=Zs(d)-al(L)[0]+1;return lp(R,al(L)[0])}return j})}return{slideRegistry:p}}function Ny(s,r,o,u,f){const{reachedAny:d,removeOffset:m,constrain:x}=u;function g(j){return j.concat().sort((A,L)=>Ge(A)-Ge(L))[0]}function p(j){const A=s?m(j):x(j),L=r.map((G,R)=>({diff:y(G-A,0),index:R})).sort((G,R)=>Ge(G.diff)-Ge(R.diff)),{index:H}=L[0];return{index:H,distance:A}}function y(j,A){const L=[j,j+o,j-o];if(!s)return j;if(!A)return g(L);const H=L.filter(G=>_u(G)===A);return H.length?g(H):al(L)-o}function v(j,A){const L=r[j]-f.get(),H=y(L,A);return{index:j,distance:H}}function N(j,A){const L=f.get()+j,{index:H,distance:G}=p(L),R=!s&&d(L);if(!A||R)return{index:H,distance:j};const Z=r[H]-G,X=j+y(Z,0);return{index:H,distance:X}}return{byDistance:N,byIndex:v,shortcut:y}}function Sy(s,r,o,u,f,d,m){function x(v){const N=v.distance,w=v.index!==r.get();d.add(N),N&&(u.duration()?s.start():(s.update(),s.render(1),s.update())),w&&(o.set(r.get()),r.set(v.index),m.emit("select"))}function g(v,N){const w=f.byDistance(v,N);x(w)}function p(v,N){const w=r.clone().set(v),j=f.byIndex(w.get(),N);x(j)}return{distance:g,index:p}}function wy(s,r,o,u,f,d,m,x){const g={passive:!0,capture:!0};let p=0;function y(w){if(!x)return;function j(A){if(new Date().getTime()-p>10)return;m.emit("slideFocusStart"),s.scrollLeft=0;const G=o.findIndex(R=>R.includes(A));Au(G)&&(f.useDuration(0),u.index(G,0),m.emit("slideFocus"))}d.add(document,"keydown",v,!1),r.forEach((A,L)=>{d.add(A,"focus",H=>{(jr(x)||x(w,H))&&j(L)},g)})}function v(w){w.code==="Tab"&&(p=new Date().getTime())}return{init:y}}function Os(s){let r=s;function o(){return r}function u(g){r=m(g)}function f(g){r+=m(g)}function d(g){r-=m(g)}function m(g){return Au(g)?g:g.get()}return{get:o,set:u,add:f,subtract:d}}function Zp(s,r){const o=s.scroll==="x"?m:x,u=r.style;let f=null,d=!1;function m(N){return`translate3d(${N}px,0px,0px)`}function x(N){return`translate3d(0px,${N}px,0px)`}function g(N){if(d)return;const w=sy(s.direction(N));w!==f&&(u.transform=o(w),f=w)}function p(N){d=!N}function y(){d||(u.transform="",r.getAttribute("style")||r.removeAttribute("style"))}return{clear:y,to:g,toggleActive:p}}function Ey(s,r,o,u,f,d,m,x,g){const y=$s(f),v=$s(f).reverse(),N=H().concat(G());function w(Y,W){return Y.reduce((le,xe)=>le-f[xe],W)}function j(Y,W){return Y.reduce((le,xe)=>w(le,W)>0?le.concat([xe]):le,[])}function A(Y){return d.map((W,le)=>({start:W-u[le]+.5+Y,end:W+r-.5+Y}))}function L(Y,W,le){const xe=A(W);return Y.map(ce=>{const K=le?0:-o,he=le?o:0,Xe=le?"end":"start",ie=xe[ce][Xe];return{index:ce,loopPoint:ie,slideLocation:Os(-1),translate:Zp(s,g[ce]),target:()=>x.get()>ie?K:he}})}function H(){const Y=m[0],W=j(v,Y);return L(W,o,!1)}function G(){const Y=r-m[0]-1,W=j(y,Y);return L(W,-o,!0)}function R(){return N.every(({index:Y})=>{const W=y.filter(le=>le!==Y);return w(W,r)<=.1})}function Z(){N.forEach(Y=>{const{target:W,translate:le,slideLocation:xe}=Y,ce=W();ce!==xe.get()&&(le.to(ce),xe.set(ce))})}function X(){N.forEach(Y=>Y.translate.clear())}return{canLoop:R,clear:X,loop:Z,loopPoints:N}}function zy(s,r,o){let u,f=!1;function d(g){if(!o)return;function p(y){for(const v of y)if(v.type==="childList"){g.reInit(),r.emit("slidesChanged");break}}u=new MutationObserver(y=>{f||(jr(o)||o(g,y))&&p(y)}),u.observe(s,{childList:!0})}function m(){u&&u.disconnect(),f=!0}return{init:d,destroy:m}}function Ty(s,r,o,u){const f={};let d=null,m=null,x,g=!1;function p(){x=new IntersectionObserver(j=>{g||(j.forEach(A=>{const L=r.indexOf(A.target);f[L]=A}),d=null,m=null,o.emit("slidesInView"))},{root:s.parentElement,threshold:u}),r.forEach(j=>x.observe(j))}function y(){x&&x.disconnect(),g=!0}function v(j){return Ys(f).reduce((A,L)=>{const H=parseInt(L),{isIntersecting:G}=f[H];return(j&&G||!j&&!G)&&A.push(H),A},[])}function N(j=!0){if(j&&d)return d;if(!j&&m)return m;const A=v(j);return j&&(d=A),j||(m=A),A}return{init:p,destroy:y,get:N}}function Ay(s,r,o,u,f,d){const{measureSize:m,startEdge:x,endEdge:g}=s,p=o[0]&&f,y=j(),v=A(),N=o.map(m),w=L();function j(){if(!p)return 0;const G=o[0];return Ge(r[x]-G[x])}function A(){if(!p)return 0;const G=d.getComputedStyle(al(u));return parseFloat(G.getPropertyValue(`margin-${g}`))}function L(){return o.map((G,R,Z)=>{const X=!R,V=Cu(Z,R);return X?N[R]+y:V?N[R]+v:Z[R+1][x]-G[x]}).map(Ge)}return{slideSizes:N,slideSizesWithGaps:w,startGap:y,endGap:v}}function _y(s,r,o,u,f,d,m,x,g){const{startEdge:p,endEdge:y,direction:v}=s,N=Au(o);function w(H,G){return $s(H).filter(R=>R%G===0).map(R=>H.slice(R,R+G))}function j(H){return H.length?$s(H).reduce((G,R,Z)=>{const X=al(G)||0,V=X===0,Y=R===Zs(H),W=f[p]-d[X][p],le=f[p]-d[R][y],xe=!u&&V?v(m):0,ce=!u&&Y?v(x):0,K=Ge(le-ce-(W+xe));return Z&&K>r+g&&G.push(R),Y&&G.push(H.length),G},[]).map((G,R,Z)=>{const X=Math.max(Z[R-1]||0);return H.slice(X,G)}):[]}function A(H){return N?w(H,o):j(H)}return{groupSlides:A}}function Cy(s,r,o,u,f,d,m){const{align:x,axis:g,direction:p,startIndex:y,loop:v,duration:N,dragFree:w,dragThreshold:j,inViewThreshold:A,slidesToScroll:L,skipSnaps:H,containScroll:G,watchResize:R,watchSlides:Z,watchDrag:X,watchFocus:V}=d,Y=2,W=fy(),le=W.measure(r),xe=o.map(W.measure),ce=cy(g,p),K=ce.measureSize(le),he=dy(K),Xe=iy(x,K),ie=!v&&!!G,M=v||!!G,{slideSizes:Q,slideSizesWithGaps:ae,startGap:pe,endGap:Ne}=Ay(ce,le,xe,o,M,f),E=_y(ce,K,L,v,le,xe,pe,Ne,Y),{snaps:q,snapsAligned:J}=yy(ce,Xe,le,xe,E),F=-al(q)+al(ae),{snapsContained:re,scrollContainLimit:fe}=xy(K,F,J,G,Y),oe=ie?re:J,{limit:ze}=gy(F,oe,v),Te=Vp(Zs(oe),y,v),at=Te.clone(),Oe=$s(o),te=({dragHandler:bl,scrollBody:Ln,scrollBounds:Bn,options:{loop:sl}})=>{sl||Bn.constrain(bl.pointerDown()),Ln.seek()},Ce=({scrollBody:bl,translate:Ln,location:Bn,offsetLocation:sl,previousLocation:bt,scrollLooper:il,slideLooper:vt,dragHandler:Sr,animation:wr,eventHandler:Fs,scrollBounds:La,options:{loop:pa}},xa)=>{const rl=bl.settled(),Ba=!La.shouldConstrain(),Bl=pa?rl:rl&&Ba,Ws=Bl&&!Sr.pointerDown();Ws&&wr.stop();const Is=Bn.get()*xa+bt.get()*(1-xa);sl.set(Is),pa&&(il.loop(bl.direction()),vt.loop()),Ln.to(sl.get()),Ws&&Fs.emit("settle"),Bl||Fs.emit("scroll")},De=ry(u,f,()=>te(Hn),bl=>Ce(Hn,bl)),tt=.68,Nt=oe[Te.get()],It=Os(Nt),nl=Os(Nt),Bt=Os(Nt),Pt=Os(Nt),gl=hy(It,Bt,nl,Pt,N,tt),Dn=Ny(v,oe,F,ze,Pt),Rn=Sy(De,Te,at,gl,Dn,Pt,m),pt=vy(ze),Ks=Gs(),Js=Ty(r,o,m,A),{slideRegistry:Un}=jy(ie,G,oe,fe,E,Oe),Ha=wy(s,o,Un,Rn,gl,Ks,m,V),Hn={ownerDocument:u,ownerWindow:f,eventHandler:m,containerRect:le,slideRects:xe,animation:De,axis:ce,dragHandler:oy(ce,s,u,f,Pt,uy(ce,f),It,De,Rn,gl,Dn,Te,m,he,w,j,H,tt,X),eventStore:Ks,percentOfView:he,index:Te,indexPrevious:at,limit:ze,location:It,offsetLocation:Bt,previousLocation:nl,options:d,resizeHandler:my(r,m,f,o,ce,R,W),scrollBody:gl,scrollBounds:py(ze,Bt,Pt,gl,he),scrollLooper:by(F,ze,Bt,[It,Bt,nl,Pt]),scrollProgress:pt,scrollSnapList:oe.map(pt.get),scrollSnaps:oe,scrollTarget:Dn,scrollTo:Rn,slideLooper:Ey(ce,K,F,Q,ae,q,oe,Bt,o),slideFocus:Ha,slidesHandler:zy(r,m,Z),slidesInView:Js,slideIndexes:Oe,slideRegistry:Un,slidesToScroll:E,target:Pt,translate:Zp(ce,r)};return Hn}function ky(){let s={},r;function o(p){r=p}function u(p){return s[p]||[]}function f(p){return u(p).forEach(y=>y(r,p)),g}function d(p,y){return s[p]=u(p).concat([y]),g}function m(p,y){return s[p]=u(p).filter(v=>v!==y),g}function x(){s={}}const g={init:o,emit:f,off:m,on:d,clear:x};return g}const My={align:"center",axis:"x",container:null,slides:null,containScroll:"trimSnaps",direction:"ltr",slidesToScroll:1,inViewThreshold:0,breakpoints:{},dragFree:!1,dragThreshold:10,loop:!1,skipSnaps:!1,duration:25,startIndex:0,active:!0,watchDrag:!0,watchResize:!0,watchSlides:!0,watchFocus:!0};function Oy(s){function r(d,m){return Qp(d,m||{})}function o(d){const m=d.breakpoints||{},x=Ys(m).filter(g=>s.matchMedia(g).matches).map(g=>m[g]).reduce((g,p)=>r(g,p),{});return r(d,x)}function u(d){return d.map(m=>Ys(m.breakpoints||{})).reduce((m,x)=>m.concat(x),[]).map(s.matchMedia)}return{mergeOptions:r,optionsAtMedia:o,optionsMediaQueries:u}}function Dy(s){let r=[];function o(d,m){return r=m.filter(({options:x})=>s.optionsAtMedia(x).active!==!1),r.forEach(x=>x.init(d,s)),m.reduce((x,g)=>Object.assign(x,{[g.name]:g}),{})}function u(){r=r.filter(d=>d.destroy())}return{init:o,destroy:u}}function xr(s,r,o){const u=s.ownerDocument,f=u.defaultView,d=Oy(f),m=Dy(d),x=Gs(),g=ky(),{mergeOptions:p,optionsAtMedia:y,optionsMediaQueries:v}=d,{on:N,off:w,emit:j}=g,A=ce;let L=!1,H,G=p(My,xr.globalOptions),R=p(G),Z=[],X,V,Y;function W(){const{container:Oe,slides:te}=R;V=(au(Oe)?s.querySelector(Oe):Oe)||s.children[0];const De=au(te)?V.querySelectorAll(te):te;Y=[].slice.call(De||V.children)}function le(Oe){const te=Cy(s,V,Y,u,f,Oe,g);if(Oe.loop&&!te.slideLooper.canLoop()){const Ce=Object.assign({},Oe,{loop:!1});return le(Ce)}return te}function xe(Oe,te){L||(G=p(G,Oe),R=y(G),Z=te||Z,W(),H=le(R),v([G,...Z.map(({options:Ce})=>Ce)]).forEach(Ce=>x.add(Ce,"change",ce)),R.active&&(H.translate.to(H.location.get()),H.animation.init(),H.slidesInView.init(),H.slideFocus.init(at),H.eventHandler.init(at),H.resizeHandler.init(at),H.slidesHandler.init(at),H.options.loop&&H.slideLooper.loop(),V.offsetParent&&Y.length&&H.dragHandler.init(at),X=m.init(at,Z)))}function ce(Oe,te){const Ce=E();K(),xe(p({startIndex:Ce},Oe),te),g.emit("reInit")}function K(){H.dragHandler.destroy(),H.eventStore.clear(),H.translate.clear(),H.slideLooper.clear(),H.resizeHandler.destroy(),H.slidesHandler.destroy(),H.slidesInView.destroy(),H.animation.destroy(),m.destroy(),x.clear()}function he(){L||(L=!0,x.clear(),K(),g.emit("destroy"),g.clear())}function Xe(Oe,te,Ce){!R.active||L||(H.scrollBody.useBaseFriction().useDuration(te===!0?0:R.duration),H.scrollTo.index(Oe,Ce||0))}function ie(Oe){const te=H.index.add(1).get();Xe(te,Oe,-1)}function M(Oe){const te=H.index.add(-1).get();Xe(te,Oe,1)}function Q(){return H.index.add(1).get()!==E()}function ae(){return H.index.add(-1).get()!==E()}function pe(){return H.scrollSnapList}function Ne(){return H.scrollProgress.get(H.offsetLocation.get())}function E(){return H.index.get()}function q(){return H.indexPrevious.get()}function J(){return H.slidesInView.get()}function F(){return H.slidesInView.get(!1)}function re(){return X}function fe(){return H}function oe(){return s}function ze(){return V}function Te(){return Y}const at={canScrollNext:Q,canScrollPrev:ae,containerNode:ze,internalEngine:fe,destroy:he,off:w,on:N,emit:j,plugins:re,previousScrollSnap:q,reInit:A,rootNode:oe,scrollNext:ie,scrollPrev:M,scrollProgress:Ne,scrollSnapList:pe,scrollTo:Xe,selectedScrollSnap:E,slideNodes:Te,slidesInView:J,slidesNotInView:F};return xe(r,o),setTimeout(()=>g.emit("init"),0),at}xr.globalOptions=void 0;function ku(s={},r=[]){const o=O.useRef(s),u=O.useRef(r),[f,d]=O.useState(),[m,x]=O.useState(),g=O.useCallback(()=>{f&&f.reInit(o.current,u.current)},[f]);return O.useEffect(()=>{Tu(o.current,s)||(o.current=s,g())},[s,g]),O.useEffect(()=>{ay(u.current,r)||(u.current=r,g())},[r,g]),O.useEffect(()=>{if(ly()&&m){xr.globalOptions=ku.globalOptions;const p=xr(m,o.current,u.current);return d(p),()=>p.destroy()}else d(void 0)},[m,d]),[x,f]}ku.globalOptions=void 0;const Kp=4e3;function Jp({box:s,interval:r,advance:o}){const u=O.useRef(o);u.current=o,O.useEffect(()=>{const f=s.current;if(!f||r<=0||window.matchMedia("(prefers-reduced-motion: reduce)").matches)return;let d=0,m=!0;const x=()=>{d+=1},g=()=>{d=Math.max(0,d-1)},p=window.setInterval(()=>{d>0||document.hidden||!m||u.current()||window.clearInterval(p)},r),y=new IntersectionObserver(([A])=>{m=A.isIntersecting},{threshold:.25});y.observe(f);const v=window.matchMedia("(hover: hover) and (pointer: fine)").matches;v&&(f.addEventListener("pointerenter",x),f.addEventListener("pointerleave",g));let N=!1;const w=A=>{const L=A.target;!(L instanceof Element)||!L.matches(":focus-visible")||N||(N=!0,x())},j=()=>{N&&(N=!1,g())};return f.addEventListener("focusin",w),f.addEventListener("focusout",j),f.addEventListener("pointerdown",x,!0),window.addEventListener("pointerup",g,!0),window.addEventListener("pointercancel",g,!0),()=>{window.clearInterval(p),y.disconnect(),v&&(f.removeEventListener("pointerenter",x),f.removeEventListener("pointerleave",g)),f.removeEventListener("focusin",w),f.removeEventListener("focusout",j),f.removeEventListener("pointerdown",x,!0),window.removeEventListener("pointerup",g,!0),window.removeEventListener("pointercancel",g,!0)}},[s,r])}function Ry(s,r=.85){if(!s)return!1;const o=s.scrollWidth-s.clientWidth;if(o<=8||s.scrollLeft>=o-8)return!1;const u=window.matchMedia("(prefers-reduced-motion: reduce)").matches;return s.scrollBy({left:s.clientWidth*r,behavior:u?"auto":"smooth"}),!0}function kn({label:s,children:r,align:o="start",loop:u=!1,dots:f=!0,arrows:d="header",gap:m=1,autoplay:x=Kp,onSelect:g,onReady:p,className:y}){const v=x===!1?0:x,[N,w]=ku({align:o,loop:u,containScroll:"trimSnaps",watchDrag:!0}),[j,A]=O.useState([]),[L,H]=O.useState(0),[G,R]=O.useState(!1),[Z,X]=O.useState(!1),V=O.useRef(null),Y=O.useId();O.useEffect(()=>{var Q;if(!w)return;const ie=()=>{H(w.selectedScrollSnap()),R(w.canScrollPrev()),X(w.canScrollNext())},M=()=>{A(w.scrollSnapList()),ie()};return M(),w.on("select",ie),w.on("reInit",M),(Q=V.current)==null||Q.setAttribute("data-slider","on"),()=>{w.off("select",ie),w.off("reInit",M)}},[w]),O.useEffect(()=>{if(!w)return;const ie=V.current,M=()=>ie==null?void 0:ie.setAttribute("data-dragging","true"),Q=()=>ie==null?void 0:ie.removeAttribute("data-dragging");return w.on("pointerDown",M),w.on("pointerUp",Q),()=>{w.off("pointerDown",M),w.off("pointerUp",Q)}},[w]),Jp({box:V,interval:v,advance:()=>!w||w.scrollSnapList().length<=1?!0:w.canScrollNext()?(w.scrollNext(),!0):!1});const W=O.useCallback(ie=>w==null?void 0:w.scrollTo(ie),[w]),le=O.useRef(g);le.current=g;const xe=O.useRef(p);xe.current=p,O.useEffect(()=>{var M;if(!w)return;const ie=()=>{var Q;return(Q=le.current)==null?void 0:Q.call(le,w.selectedScrollSnap())};return ie(),w.on("select",ie),w.on("reInit",ie),(M=xe.current)==null||M.call(xe,{scrollTo:Q=>w.scrollTo(Q)}),()=>{w.off("select",ie),w.off("reInit",ie)}},[w]);const ce=O.useCallback(()=>w==null?void 0:w.scrollPrev(),[w]),K=O.useCallback(()=>w==null?void 0:w.scrollNext(),[w]),he=j.length>1,Xe=f&&he&&j.length<=12;return n.jsxs("div",{className:y,children:[d==="header"&&he&&n.jsxs("div",{className:"mb-3 flex justify-end gap-2",children:[n.jsx(ap,{dir:"prev",onClick:ce,disabled:!u&&!G,label:s}),n.jsx(ap,{dir:"next",onClick:K,disabled:!u&&!Z,label:s})]}),n.jsxs("div",{className:"relative",children:[n.jsx("div",{ref:ie=>{V.current=ie,N(ie)},className:"slider-viewport",role:"group","aria-roledescription":"캐러셀","aria-label":s,tabIndex:0,onKeyDown:ie=>{ie.key==="ArrowLeft"&&(ie.preventDefault(),ce()),ie.key==="ArrowRight"&&(ie.preventDefault(),K())},children:n.jsx("div",{className:"slider-track",style:{gap:`${m}rem`},id:Y,children:r})}),d==="overlay"&&he&&n.jsxs(n.Fragment,{children:[n.jsx(np,{dir:"prev",onClick:ce,disabled:!u&&!G,label:s}),n.jsx(np,{dir:"next",onClick:K,disabled:!u&&!Z,label:s})]})]}),he&&n.jsxs("div",{className:"mt-4 flex items-center justify-center gap-3",children:[Xe&&n.jsx("ul",{className:"flex items-center gap-1.5",children:j.map((ie,M)=>n.jsx("li",{children:n.jsx("button",{type:"button",onClick:()=>W(M),"aria-label":`${M+1}번째로`,"aria-current":M===L,"aria-controls":Y,className:`h-1.5 rounded-full transition-all ${M===L?"w-6 bg-current opacity-100":"w-1.5 bg-current opacity-20 hover:opacity-100"}`})},M))}),n.jsxs("span",{className:"text-current/80 text-[length:var(--fs-xs)] tabular-nums",children:[L+1," / ",j.length]})]})]})}function Nr({basis:s,children:r}){return n.jsx("div",{className:`min-w-0 shrink-0 grow-0 ${s}`,"aria-roledescription":"슬라이드",children:r})}function ap({dir:s,onClick:r,disabled:o,label:u}){const f=s==="prev"?zn:Ra;return n.jsx("button",{type:"button",onClick:r,disabled:o,"aria-label":`${u} ${s==="prev"?"이전":"다음"}`,className:"tap border-line flex items-center justify-center rounded-full border transition-opacity hover:opacity-100 disabled:opacity-25",children:n.jsx(f,{className:"size-5"})})}function np({dir:s,onClick:r,disabled:o,label:u}){const f=s==="prev"?zn:Ra;return n.jsx("button",{type:"button",onClick:r,disabled:o,"aria-label":`${u} ${s==="prev"?"이전":"다음"}`,className:`tap absolute top-1/2 z-10 hidden -translate-y-1/2 items-center justify-center rounded-full bg-black/55 text-white backdrop-blur transition hover:bg-black/75 disabled:opacity-0 sm:flex ${s==="prev"?"left-2":"right-2"}`,children:n.jsx(f,{className:"size-5"})})}function Mu({children:s,className:r="",as:o="div"}){return n.jsx(o,{className:`panel ${r}`,children:s})}function Ou({children:s}){return n.jsx("span",{className:"border-line tpl-border inline-flex items-center gap-1 rounded-md border bg-current/5 px-2.5 py-1 text-[length:var(--fs-xs)]",children:s})}function Fp({label:s,value:r,note:o}){return n.jsxs("div",{className:"divide-line flex flex-col gap-1 py-3 sm:flex-row sm:items-baseline sm:justify-between sm:gap-6",children:[n.jsx("dt",{className:"text-muted shrink-0 text-[length:var(--fs-sm)] font-medium sm:w-40",children:s}),n.jsxs("dd",{className:"flex-1 text-[length:var(--fs-sm)] font-semibold sm:text-right",children:[r,o&&n.jsx("span",{className:"text-muted mt-0.5 block font-normal",children:o})]})]})}function sp({href:s,children:r,variant:o="solid",external:u,icon:f}){const d=o==="solid";return n.jsxs("a",{href:s,...u?{target:"_blank",rel:"noopener noreferrer"}:{},className:`tap inline-flex items-center justify-center gap-2 rounded-lg px-4 text-[length:var(--fs-sm)] font-semibold transition-opacity hover:opacity-100 ${d?"":"border-line tpl-border border bg-current/5"}`,style:d?{backgroundColor:"var(--color-brand)",color:"var(--tpl-bg, #fff)"}:void 0,children:[f,n.jsx("span",{children:r}),u&&n.jsx(Ll,{className:"size-4 shrink-0"})]})}function Wp({children:s,initial:r=3,label:o}){const[u,f]=O.useState(!1),d=Math.max(0,s.length-r);return n.jsxs(n.Fragment,{children:[s.map((m,x)=>n.jsx("div",{style:{display:u||x0&&n.jsx("button",{type:"button",onClick:()=>f(!0),className:"tap border-line tpl-border mt-3 w-full rounded-lg border text-[length:var(--fs-sm)] font-bold",children:o?o(d):`${d}개 더 보기`})]})}function Xs({open:s,onClose:r,label:o,title:u,children:f,wide:d}){return O.useEffect(()=>{if(!s)return;const m=g=>{g.key==="Escape"&&r()},x=document.body.style.overflow;return document.body.style.overflow="hidden",window.addEventListener("keydown",m),()=>{document.body.style.overflow=x,window.removeEventListener("keydown",m)}},[s,r]),s?n.jsxs("div",{className:"fixed inset-0 z-[60]",children:[n.jsx("button",{type:"button","aria-label":"닫기",onClick:r,className:"absolute inset-0 bg-black/55"}),n.jsxs("div",{role:"dialog","aria-modal":"true","aria-label":o,className:`absolute inset-x-0 bottom-0 max-h-[88svh] overflow-auto rounded-t-2xl p-5 pb-8 sm:bottom-auto sm:left-1/2 sm:top-1/2 sm:max-h-[85vh] sm:w-full sm:-translate-x-1/2 sm:-translate-y-1/2 sm:rounded-2xl ${d?"sm:max-w-3xl":"sm:max-w-lg"}`,style:{backgroundColor:"var(--color-surface)"},children:[n.jsxs("div",{className:"mb-4 flex items-center justify-between gap-3",children:[u&&n.jsx("h3",{className:"h3 min-w-0 truncate",children:u}),n.jsx("button",{type:"button",onClick:r,"aria-label":"닫기",className:"tap ml-auto flex size-10 shrink-0 items-center justify-center rounded-full shadow-md",style:{backgroundColor:"var(--color-surface)",boxShadow:"0 1px 2px rgba(0,0,0,.18), 0 0 0 1px color-mix(in oklab, currentColor 12%, transparent)"},children:n.jsx(br,{className:"size-5"})})]}),f]})]}):null}function Uy(){const s=P(),{narrative:r,place:o}=s,u=mv(s,"intro"),f=u.length>0?u:r.about;if(f.length===0)return null;const d=bu(s).find(x=>!x.isPrimary),m=r.heroSubline??`${o.name} 소개`;return n.jsx(rt,{id:"about",bare:!0,title:m,children:n.jsxs("div",{className:"grid grid-cols-1 items-center gap-8 lg:grid-cols-12 lg:gap-14",children:[d&&n.jsxs("figure",{className:"lg:col-span-7",children:[n.jsx("div",{className:"tpl-border border-line relative aspect-4/3 max-h-[26rem] overflow-hidden rounded-xl border lg:aspect-3/2",children:n.jsx("img",{src:d.url,alt:d.alt,loading:"lazy",decoding:"async",width:d.width,height:d.height,className:"size-full object-cover"})}),d.caption&&n.jsx("figcaption",{className:"text-muted mt-2 text-[length:var(--fs-xs)]",children:d.caption})]}),n.jsxs("div",{className:d?"lg:col-span-5":"lg:col-span-12",children:[n.jsxs("h2",{id:"about-heading",className:"h2 mb-6 flex items-center gap-2.5",children:[n.jsx("i",{"aria-hidden":!0,className:"h-[1em] w-[3px] shrink-0 bg-current opacity-25"}),n.jsx("span",{className:"min-w-0",children:m})]}),n.jsx("div",{className:"measure space-y-4 text-[length:var(--fs-lead)] leading-[1.8]",children:f.map((x,g)=>n.jsx("p",{children:x},g))})]})]})})}const ip=10;function rp(){const s=P(),r=s.posts??[],[o,u]=O.useState(0);if(r.length===0)return null;const f=Math.ceil(r.length/ip);return n.jsxs(rt,{id:"blog",tone:"alt",title:`${s.place.name}의 기록`,lead:"사장님이 띄엄띄엄 남기는 짧은 글입니다.",children:[n.jsx("ul",{className:"divide-line divide-y",children:r.map((d,m)=>n.jsxs("li",{hidden:Math.floor(m/ip)!==o,className:"flex flex-col gap-1.5 py-4",children:[n.jsx("time",{dateTime:d.publishedAt,className:"text-muted text-[length:var(--fs-xs)] tabular-nums",children:ju(d.publishedAt)}),n.jsx("p",{className:"measure whitespace-pre-line break-keep text-[length:var(--fs-body)] leading-relaxed",children:d.body})]},d.postId))}),f>1&&n.jsx("nav",{"aria-label":"글 페이지",className:"mt-5 flex flex-wrap justify-center gap-1.5",children:Array.from({length:f},(d,m)=>n.jsx("button",{type:"button",onClick:()=>u(m),"aria-current":m===o?"page":void 0,className:"border-line tpl-border min-w-9 rounded border px-3 py-1.5 text-[length:var(--fs-sm)] font-semibold tabular-nums",style:m===o?{backgroundColor:"var(--color-brand)",color:"var(--tpl-bg, #fff)"}:void 0,children:m+1},m))})]})}const Hy=new Set(["가능","불가","있음","없음"]),Qo=s=>!s.note&&Hy.has(s.value.trim()),Ly=new Set(["체크인 시간","체크아웃 시간","취소·환불 규정","취사 가능","반려동물 동반","흡연 가능","인원 추가 요금"]);function By(){var N,w;const s=P(),r=xu(s),o=Tn(s.facts).find(j=>j.key==="intro"),u=((N=o==null?void 0:o.summary)==null?void 0:N.trim())||((w=o==null?void 0:o.value)==null?void 0:w.trim())||s.narrative.summary||_v(s),f=s.links.filter(j=>{var A,L,H;return j.confirmed&&[(A=j.stayGuide)==null?void 0:A.policy,(L=j.stayGuide)==null?void 0:L.service,(H=j.stayGuide)==null?void 0:H.reservation].some(G=>G==null?void 0:G.trim())}),d=f.flatMap(j=>{var A;return((A=j.stayGuide)==null?void 0:A.fields)??[]}),m=[...r],x=new Set(r.map(j=>j.key));for(const j of d)x.has(j.key)||(m.push(j),x.add(j.key));const g=j=>Qo(j)?!1:Ly.has(j.label)||d.some(A=>A.key===j.key&&A.group==="rules"),p=f.map(j=>{var A;return((A=j.stayGuide)==null?void 0:A.reservation)??""}).filter(j=>j.trim());if(r.length===0&&d.length===0&&p.length===0)return null;const y=m.filter(g),v=m.filter(j=>!g(j)&&j.key!=="intro");return n.jsx(rt,{id:"info",tone:"alt",title:"이용안내 및 예약",lead:"방문 전 확인이 필요한 운영 규정과 시설 안내입니다.",children:n.jsxs("div",{className:"space-y-8",children:[u&&n.jsx("p",{className:"measure text-[length:var(--fs-body)] leading-relaxed",children:u}),y.length>0&&n.jsx(cp,{title:"예약 전 확인",rows:y,emphasis:!0}),v.length>0&&n.jsx(cp,{title:"시설 · 편의",rows:v.filter(j=>!Qo(j)),children:n.jsx(Yy,{rows:v.filter(Qo)})}),p.map(j=>n.jsx(Gy,{text:j},j.slice(0,32))),n.jsx(Xy,{})]})})}function cp({title:s,rows:r,emphasis:o,children:u}){return n.jsxs("section",{children:[n.jsxs("h3",{className:"border-line mb-3 flex items-center gap-2 border-b pb-2 text-[length:var(--fs-sm)] font-bold",children:[o&&n.jsx("i",{"aria-hidden":!0,className:"h-[1em] w-[3px] shrink-0",style:{backgroundColor:"var(--color-accent)"}}),n.jsx("span",{children:s})]}),u,r.length>0&&n.jsx("dl",{className:"divide-line divide-y",children:r.map((f,d)=>{const m=!f.note&&f.value.length<=24;return n.jsxs("div",{className:m?"flex flex-row items-baseline gap-3 py-2.5 sm:gap-6":"flex flex-col gap-1 py-3 sm:flex-row sm:items-baseline sm:gap-6",children:[n.jsx("dt",{className:`text-muted text-[length:var(--fs-sm)] ${m?"w-24 shrink-0 sm:w-40":"sm:w-40 sm:shrink-0"}`,children:f.label}),n.jsxs("dd",{className:"measure min-w-0 whitespace-pre-line break-words text-[length:var(--fs-sm)] font-semibold",children:[f.value,f.note&&n.jsx("span",{className:"text-muted mt-0.5 block font-normal",children:f.note})]})]},`${f.label}-${d}`)})})]})}const Vo=new Set(["가능","있음"]),qy="#16a34a",$y="#e04b25";function Yy({rows:s}){if(s.length===0)return null;const r=[...s].sort((o,u)=>Number(Vo.has(u.value))-Number(Vo.has(o.value)));return n.jsx("ul",{className:"mb-2 grid grid-cols-2 gap-x-5 sm:grid-cols-3 lg:grid-cols-4",children:r.map(o=>{const u=Vo.has(o.value),f=u?qy:$y;return n.jsxs("li",{className:"flex items-center gap-2 py-2 text-[length:var(--fs-sm)]",children:[u?n.jsx(uu,{className:"size-4 shrink-0",style:{color:f},"aria-hidden":!0}):n.jsx(br,{className:"size-4 shrink-0",style:{color:f},"aria-hidden":!0}),n.jsxs("span",{className:"min-w-0",children:[n.jsx("span",{className:"font-semibold",children:o.label})," ",o.value]})]},o.key??o.label)})})}function Gy({text:s}){return s.trim()?n.jsxs("details",{className:"panel group overflow-hidden",children:[n.jsxs("summary",{className:"tap flex cursor-pointer items-center gap-2 px-4 text-[length:var(--fs-sm)] font-bold marker:content-none [&::-webkit-details-marker]:hidden",children:[n.jsx("i",{"aria-hidden":!0,className:"h-[1em] w-[3px] shrink-0",style:{backgroundColor:"var(--color-accent)"}}),n.jsx("span",{className:"flex-1",children:"예약 공지"}),n.jsx("span",{className:"text-muted shrink-0 transition-transform group-open:rotate-45",children:"+"})]}),n.jsx("div",{className:"border-line whitespace-pre-line border-t px-4 pb-4 pt-3 text-[length:var(--fs-sm)] leading-relaxed",children:s})]}):null}function Xy(){const s=P(),r=Ke(s),o=s.place.phone;return!o&&r.length===0?null:n.jsxs("div",{className:"border-line flex flex-col gap-3 border-t pt-6 sm:flex-row sm:items-center sm:justify-between",children:[n.jsxs("p",{className:"text-[length:var(--fs-sm)] font-semibold",children:[s.place.name," 예약은 아래로 받습니다."]}),n.jsxs("div",{className:"flex flex-wrap gap-2",children:[o&&n.jsxs("a",{href:`tel:${o}`,className:"tap border-line tpl-border inline-flex items-center justify-center gap-1.5 rounded-lg border px-4 text-[length:var(--fs-sm)] font-semibold",children:[n.jsx(jt,{className:"size-4"}),n.jsx("span",{children:o})]}),r.map(u=>n.jsx("a",{href:u.url,target:"_blank",rel:"noopener noreferrer",className:"tap inline-flex items-center justify-center rounded-lg px-6 text-[length:var(--fs-sm)] font-bold transition-opacity hover:opacity-100",style:{backgroundColor:"var(--color-brand)",color:"var(--tpl-bg, #fff)"},children:gt(u)},u.url))]})]})}const Qy="/v1/site/booking-request";function Vy({stay:s,guests:r}){const o=P(),u=O.useRef(Date.now()),[f,d]=O.useState(!1),[m,x]=O.useState(null);O.useEffect(()=>{u.current=Date.now()},[]);async function g(p){if(p.preventDefault(),f)return;const y=new FormData(p.currentTarget);d(!0);try{const N=await(await fetch(Qy,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({place_id:o.site.placeId,name:String(y.get("name")??""),phone:String(y.get("phone")??""),email:String(y.get("email")??"")||null,stay:s??(String(y.get("stay")??"")||null),guests:r??(String(y.get("guests")??"")||null),message:String(y.get("message")??"")||null,consent:y.get("consent")==="on",company:String(y.get("company")??""),elapsed_ms:Date.now()-u.current})})).json();x({ok:!!(N!=null&&N.success),message:String((N==null?void 0:N.message)??"")})}catch{x({ok:!1,message:"지금은 전달하지 못했습니다. 전화로 문의해 주세요."})}finally{d(!1)}}return m!=null&&m.ok?n.jsxs("div",{className:"border-line tpl-border rounded-lg border p-5",children:[n.jsx("p",{className:"text-[length:var(--fs-body)] font-bold",children:m.message}),n.jsx("p",{className:"text-muted mt-1 text-[length:var(--fs-sm)]",children:"예약이 확정된 것은 아닙니다. 사장님이 확인 후 연락드립니다."})]}):n.jsxs("form",{onSubmit:g,className:"border-line tpl-border flex flex-col gap-3 rounded-lg border p-5",children:[n.jsxs("div",{children:[n.jsx("p",{className:"text-[length:var(--fs-body)] font-bold",children:"예약 요청하기"}),n.jsx("p",{className:"text-muted mt-1 text-[length:var(--fs-sm)]",children:"빈 방을 확인해 사장님이 직접 연락드립니다."})]}),s||r?n.jsx("p",{className:"border-line tpl-border rounded-lg border px-4 py-3 text-[length:var(--fs-sm)] font-semibold",children:[s,r].filter(Boolean).join(" · ")}):n.jsxs(n.Fragment,{children:[n.jsx(Ms,{id:"br-stay",label:"날짜",name:"stay",placeholder:"9월 20일 – 21일"}),n.jsx(Ms,{id:"br-guests",label:"인원",name:"guests",placeholder:"성인 2명"})]}),n.jsx(Ms,{id:"br-name",label:"성함",name:"name",placeholder:"이름을 적어 주세요",required:!0}),n.jsx(Ms,{id:"br-phone",label:"연락처",name:"phone",type:"tel",placeholder:"010-0000-0000",required:!0,hint:"사장님이 전화드릴 번호입니다."}),n.jsx(Ms,{id:"br-email",label:"이메일",name:"email",type:"email",placeholder:"선택 — 답변을 메일로도 받습니다"}),n.jsxs("div",{className:"flex flex-col gap-1.5",children:[n.jsx("label",{htmlFor:"br-message",className:"text-[length:var(--fs-sm)] font-bold",children:"요청사항"}),n.jsx("textarea",{id:"br-message",name:"message",rows:3,maxLength:1e3,placeholder:"늦은 도착, 주차 대수 등",className:"border-line w-full rounded border-2 p-3 text-[length:var(--fs-body)]",style:{backgroundColor:"var(--color-surface)"}})]}),n.jsx("input",{type:"text",name:"company",tabIndex:-1,autoComplete:"off","aria-hidden":!0,className:"absolute size-0 overflow-hidden opacity-0"}),n.jsxs("label",{htmlFor:"br-consent",className:"text-muted flex items-start gap-2 text-[length:var(--fs-sm)]",children:[n.jsx("input",{id:"br-consent",name:"consent",type:"checkbox",required:!0,className:"mt-1 size-4 shrink-0"}),n.jsx("span",{children:"예약 상담을 위한 연락처 수집·이용에 동의합니다. 상담이 끝나면 파기합니다."})]}),m&&!m.ok&&n.jsx("p",{className:"text-[length:var(--fs-sm)] font-semibold",style:{color:"var(--color-accent)"},children:m.message}),n.jsx("button",{type:"submit",disabled:f,className:"tap rounded-lg px-6 text-[length:var(--fs-body)] font-bold disabled:opacity-60",style:{backgroundColor:"var(--color-brand)",color:"var(--tpl-bg, #fff)"},children:f?"보내는 중…":"예약 요청 보내기"}),n.jsx("p",{className:"text-muted text-[length:var(--fs-xs)]",children:"예약이 확정되는 것은 아닙니다. 사장님 확인 후 연락드립니다."})]})}function Ms({id:s,label:r,name:o,placeholder:u,type:f="text",required:d,hint:m}){return n.jsxs("div",{className:"flex flex-col gap-1.5",children:[n.jsxs("label",{htmlFor:s,className:"text-[length:var(--fs-sm)] font-bold",children:[r,!d&&n.jsx("span",{className:"text-muted font-normal",children:" (선택)"})]}),n.jsx("input",{id:s,name:o,type:f,required:d,maxLength:60,placeholder:u,className:"border-line w-full rounded border-2 p-3 text-[length:var(--fs-body)]",style:{backgroundColor:"var(--color-surface)"}}),m&&n.jsx("p",{className:"text-muted text-[length:var(--fs-xs)]",children:m})]})}const Zo=["일","월","화","수","목","금","토"],op=2;function up(s){return`${s.getFullYear()}-${String(s.getMonth()+1).padStart(2,"0")}-${String(s.getDate()).padStart(2,"0")}`}function Zy(s,r,o){const u=new Date(s,r,1),f=new Date(s,r+1,0).getDate(),d=up(o),m=Array.from({length:u.getDay()},()=>null);for(let x=1;x<=f;x+=1){const g=new Date(s,r,x),p=up(g);m.push({iso:p,day:x,weekday:g.getDay(),isWeekend:g.getDay()===0||g.getDay()===6,past:po+d).filter(f=>f<=23).map(f=>`${String(f).padStart(2,"0")}:${u}`):[]}function Ko(s){return s.replace(/\s*\(.*\)\s*$/,"").trim()||s}function Jy(s){return hu(s.units).map(r=>{var u;const o=f=>{var m;const d=Number((m=Ct(r.facts,f))==null?void 0:m.replace(/[^0-9]/g,""));return Number.isFinite(d)&&d>0?d:void 0};return{unitId:r.unitId,name:r.name,weekdayPrice:(u=Lp(r))==null?void 0:u.price,weekendPrice:o("weekend_price"),maxCapacity:o("max_capacity")}})}function Ip(){var ce;const s=P(),r=O.useMemo(()=>Jy(s),[s]),o=O.useMemo(()=>{var K;return((K=Tn(s.facts).find(he=>he.key==="check_in_time"))==null?void 0:K.value)??void 0},[s]),u=O.useMemo(()=>Ky(o),[o]),[f,d]=O.useState(null),[m,x]=O.useState(0);O.useEffect(()=>d(new Date),[]);const g=O.useMemo(()=>f?new Date(f.getFullYear(),f.getMonth()+m,1):null,[f,m]),p=O.useMemo(()=>f&&g?Zy(g.getFullYear(),g.getMonth(),f):[],[f,g]),[y,v]=O.useState(null),[N,w]=O.useState(null),[j,A]=O.useState(((ce=r[0])==null?void 0:ce.unitId)??null),[L,H]=O.useState(2),[G,R]=O.useState(!1),[Z,X]=O.useState(!1),V=p.find(K=>K!==null&&K.iso===y)??null,Y=r.find(K=>K.unitId===j)??null,W=(Y==null?void 0:Y.maxCapacity)??8,le=V&&Y?V.isWeekend?Y.weekendPrice??Y.weekdayPrice:Y.weekdayPrice:void 0,xe=!!(y&&Y&&(u.length===0||N));return O.useEffect(()=>{H(K=>Math.min(K,(Y==null?void 0:Y.maxCapacity)??8))},[Y]),r.length===0?null:n.jsxs("div",{className:"mt-4 overflow-hidden rounded-2xl border border-black/8 lg:mt-6",style:{backgroundColor:"var(--color-surface)"},children:[n.jsxs("button",{type:"button",onClick:()=>X(K=>!K),"aria-expanded":Z,className:"tap flex w-full items-center gap-2 border-b border-black/8 px-4 text-[length:var(--fs-sm)] font-bold sm:px-5",children:[n.jsx(Xb,{className:"size-4 opacity-100"}),n.jsx("span",{className:"flex-1 text-left",children:"날짜 · 시간 선택"}),n.jsx("span",{className:"opacity-100",children:Z?"−":"+"})]}),f===null||g===null?n.jsx("p",{className:"px-4 py-6 text-[length:var(--fs-xs)] leading-relaxed opacity-100 sm:px-5",children:"날짜 선택은 브라우저에서 열립니다. 실제 예약 가능 여부와 결제는 아래 예약 창구에서 확인해 주세요."}):!Z&&!G?null:G?n.jsx(Fy,{payload:s,onReset:()=>R(!1),stay:[V?`${g.getMonth()+1}월 ${V.day}일(${Zo[V.weekday]})`:null,N?`도착 ${N}`:null,Y?Ko(Y.name):null].filter(Boolean).join(" · "),guests:`${L}명`,summary:[V?`${g.getMonth()+1}월 ${V.day}일(${Zo[V.weekday]})`:null,N?`도착 ${N}`:null,Y?Ko(Y.name):null,`${L}명`].filter(K=>!!K).join(" · ")}):n.jsxs("div",{className:"space-y-5 p-4 sm:p-5",children:[n.jsxs("div",{children:[n.jsxs("div",{className:"mb-2 flex items-center justify-between",children:[n.jsx("p",{className:"text-[length:var(--fs-xs)] font-semibold opacity-100",children:"날짜"}),n.jsxs("div",{className:"flex items-center gap-1",children:[n.jsx("button",{type:"button",onClick:()=>x(K=>Math.max(0,K-1)),disabled:m===0,"aria-label":"이전 달",className:"flex size-7 items-center justify-center rounded-lg border border-black/10 transition-colors hover:bg-black/5 disabled:cursor-not-allowed disabled:opacity-30",children:n.jsx(zn,{className:"size-3.5"})}),n.jsxs("span",{className:"w-24 text-center text-[length:var(--fs-xs)] font-bold",children:[g.getFullYear(),"년 ",g.getMonth()+1,"월"]}),n.jsx("button",{type:"button",onClick:()=>x(K=>Math.min(op,K+1)),disabled:m>=op,"aria-label":"다음 달",className:"flex size-7 items-center justify-center rounded-lg border border-black/10 transition-colors hover:bg-black/5 disabled:cursor-not-allowed disabled:opacity-30",children:n.jsx(Ra,{className:"size-3.5"})})]})]}),n.jsx("div",{className:"grid grid-cols-7 gap-1 border-b border-black/8 pb-1.5",children:Zo.map((K,he)=>n.jsx("span",{className:"text-center text-[length:var(--fs-xs)] font-semibold",style:{opacity:he===0||he===6?.75:.45},children:K},K))}),n.jsx("div",{className:"mt-1.5 grid grid-cols-7 gap-1",children:p.map((K,he)=>K===null?n.jsx("span",{"aria-hidden":!0},`pad-${he}`):n.jsx("button",{type:"button",disabled:K.past,onClick:()=>v(K.iso),"aria-pressed":K.iso===y,"aria-label":`${g.getMonth()+1}월 ${K.day}일`,className:"flex h-9 items-center justify-center rounded-lg border text-[length:var(--fs-xs)] transition-colors disabled:cursor-not-allowed",style:{borderColor:K.iso===y?"var(--color-brand)":"transparent",backgroundColor:K.iso===y?"var(--color-brand)":"var(--color-surface-alt)",color:K.iso===y?"#fff":void 0,opacity:K.past?.25:1,fontWeight:K.iso===y?700:400},children:K.day},K.iso))}),(V==null?void 0:V.isWeekend)&&n.jsx("p",{className:"mt-2 text-[length:var(--fs-xs)] opacity-100",children:"주말 요금이 적용되는 날짜입니다."})]}),u.length>0&&n.jsxs("div",{children:[n.jsxs("p",{className:"mb-2 flex items-center gap-1.5 text-[length:var(--fs-xs)] font-semibold opacity-100",children:[n.jsx(Ib,{className:"size-3"}),n.jsxs("span",{children:["도착 예정 시간 (체크인 ",o," 이후)"]})]}),n.jsx("ul",{className:"flex flex-wrap gap-1.5",children:u.map(K=>{const he=K===N;return n.jsx("li",{children:n.jsx("button",{type:"button",onClick:()=>w(K),"aria-pressed":he,className:"rounded-lg border px-3 py-1.5 text-[length:var(--fs-xs)] font-medium transition-colors",style:{borderColor:he?"var(--color-brand)":"rgba(0,0,0,0.10)",backgroundColor:he?"var(--color-brand)":"var(--color-surface-alt)",color:he?"#fff":void 0},children:K})},K)})})]}),n.jsxs("div",{children:[n.jsx("p",{className:"mb-2 text-[length:var(--fs-xs)] font-semibold opacity-100",children:"객실"}),n.jsx("ul",{className:"grid gap-1.5 sm:grid-cols-2",children:r.map(K=>{const he=K.unitId===j;return n.jsx("li",{children:n.jsxs("button",{type:"button",onClick:()=>A(K.unitId),"aria-pressed":he,className:"flex w-full items-center justify-between gap-2 rounded-xl border px-3 py-2.5 text-left text-[length:var(--fs-xs)] transition-colors",style:{borderColor:he?"var(--color-brand)":"rgba(0,0,0,0.10)",backgroundColor:"var(--color-surface-alt)"},children:[n.jsx("span",{className:"min-w-0 truncate font-semibold",children:K.name}),K.maxCapacity&&n.jsxs("span",{className:"shrink-0 opacity-100",children:["최대 ",K.maxCapacity,"명"]})]})},K.unitId)})})]}),n.jsxs("div",{className:"flex items-center justify-between",children:[n.jsx("p",{className:"text-[length:var(--fs-xs)] font-semibold opacity-100",children:"인원"}),n.jsxs("div",{className:"flex items-center gap-3",children:[n.jsx("button",{type:"button",onClick:()=>H(K=>Math.max(1,K-1)),"aria-label":"인원 줄이기",className:"flex size-7 items-center justify-center rounded-lg border border-black/10 transition-colors hover:bg-black/5",children:n.jsx(x0,{className:"size-3.5"})}),n.jsxs("span",{className:"w-10 text-center text-[length:var(--fs-sm)] font-bold",children:[L,"명"]}),n.jsx("button",{type:"button",onClick:()=>H(K=>Math.min(W,K+1)),"aria-label":"인원 늘리기",className:"flex size-7 items-center justify-center rounded-lg border border-black/10 transition-colors hover:bg-black/5",children:n.jsx(N0,{className:"size-3.5"})})]})]}),n.jsxs("div",{className:"rounded-xl border border-black/8 p-3",style:{backgroundColor:"var(--color-surface-alt)"},children:[n.jsxs("div",{className:"flex items-baseline justify-between gap-3",children:[n.jsx("span",{className:"text-[length:var(--fs-xs)] opacity-100",children:V?`${g.getMonth()+1}월 ${V.day}일 · ${Y?Ko(Y.name):""} · ${L}명`:"날짜를 골라 주세요"}),le!=null&&n.jsxs("span",{className:"text-[length:var(--fs-sm)] font-bold",style:{color:"var(--color-brand)"},children:[le.toLocaleString("ko-KR"),"원"]})]}),le!=null&&n.jsx("p",{className:"mt-1 text-[length:var(--fs-xs)] opacity-100",children:"1박 기준 안내 요금입니다. 인원 추가·성수기 요금은 예약 창구에서 확인됩니다."})]}),n.jsx("button",{type:"button",disabled:!xe,onClick:()=>R(!0),className:"w-full rounded-xl px-4 py-3 text-[length:var(--fs-sm)] font-bold text-white transition-opacity disabled:cursor-not-allowed disabled:opacity-40",style:{backgroundColor:"var(--color-brand)"},children:"예약 요청 확인하기"})]})]})}function Fy({payload:s,summary:r,stay:o,guests:u,onReset:f}){const d=s.place.phone;return n.jsxs("div",{className:"space-y-4 p-4 sm:p-5",children:[n.jsxs("div",{className:"flex items-start gap-2.5",children:[n.jsx("span",{className:"mt-0.5 flex size-7 shrink-0 items-center justify-center rounded-full text-white",style:{backgroundColor:"var(--color-brand)"},children:n.jsx(uu,{className:"size-4"})}),n.jsxs("div",{className:"min-w-0",children:[n.jsx("p",{className:"text-[length:var(--fs-sm)] font-bold",children:"예약 내용 확인"}),n.jsx("p",{className:"mt-0.5 text-[length:var(--fs-xs)] leading-relaxed opacity-100",children:r})]})]}),n.jsxs("div",{className:"flex flex-col gap-2 sm:flex-row",children:[d&&n.jsxs("a",{href:`tel:${d}`,className:"flex flex-1 items-center justify-center gap-2 rounded-xl px-4 py-3 text-[length:var(--fs-sm)] font-bold text-white transition-opacity hover:opacity-100",style:{backgroundColor:"var(--color-brand)"},children:[n.jsx(jt,{className:"size-4"}),n.jsxs("span",{children:["전화로 예약하기 ",d]})]}),n.jsxs("button",{type:"button",onClick:f,className:"tap flex items-center justify-center gap-1.5 rounded-xl border border-black/10 px-4 text-[length:var(--fs-sm)] font-semibold transition-colors hover:bg-black/5",children:[n.jsx(w0,{className:"size-4"}),n.jsx("span",{children:"다시 고르기"})]})]}),n.jsx(Vy,{stay:o,guests:u})]})}function Wy(){const s=P(),r=ht(s),o=hl(s),u=Ke(s)[0];return o.length===0?null:n.jsx(rt,{id:"units",title:$e(s,r.path,`${r.label} 안내`),children:n.jsx("ul",{className:"mt-2 flex flex-col gap-14 lg:gap-20",children:o.map((f,d)=>n.jsxs("li",{className:"grid items-center gap-7 lg:grid-cols-12 lg:gap-12",children:[n.jsxs("div",{className:`lg:col-span-6 ${d%2===1?"lg:order-2":""}`,children:[f.images[0]&&n.jsx("div",{className:"relative aspect-16/10 rounded-lg overflow-hidden",children:n.jsx("img",{src:f.images[0].url,alt:f.images[0].alt,loading:"lazy",decoding:"async",className:"size-full object-cover"})}),f.images.length>1&&n.jsx("ul",{className:"mt-2 grid grid-cols-3 gap-2",children:f.images.slice(1,4).map(m=>n.jsx("li",{className:"relative aspect-16/10 rounded-md overflow-hidden",children:n.jsx("img",{src:m.url,alt:m.alt,loading:"lazy",decoding:"async",className:"size-full object-cover"})},m.mediaId))})]}),n.jsxs("div",{className:`lg:col-span-6 ${d%2===1?"lg:order-1":""}`,children:[n.jsx("h3",{className:"h2",children:f.name}),f.intro&&n.jsx("p",{className:"measure mt-3 text-[length:var(--fs-body)] leading-relaxed opacity-100",children:f.intro}),f.chips.length>0&&n.jsx("ul",{className:"mt-4 flex flex-wrap items-center gap-1.5",children:f.chips.map(m=>n.jsx("li",{children:n.jsxs(Ou,{children:[n.jsx("span",{className:"text-muted",children:m.label}),n.jsx("span",{className:"font-medium",children:m.value})]})},m.label))}),n.jsxs("div",{className:"mt-5 flex flex-wrap gap-2",children:[u&&n.jsx("a",{href:u.url,target:"_blank",rel:"noopener noreferrer",className:"tap inline-flex flex-1 items-center justify-center rounded-lg px-6 text-[length:var(--fs-sm)] font-bold transition-opacity hover:opacity-100",style:{backgroundColor:"var(--color-brand)",color:"var(--tpl-bg, #fff)"},children:gt(u,f.name)}),s.place.phone&&n.jsxs("a",{href:`tel:${s.place.phone}`,className:"tap border-line tpl-border inline-flex items-center justify-center gap-1.5 rounded-lg border px-4 text-[length:var(--fs-sm)] font-semibold",children:[n.jsx(jt,{className:"size-4"}),n.jsx("span",{children:"전화"})]})]}),f.rows.length>0&&n.jsxs("details",{className:"group border-line mt-4 border-t pt-2",children:[n.jsxs("summary",{className:"tap flex cursor-pointer list-none items-center justify-between gap-2 text-[length:var(--fs-sm)] font-semibold",children:[n.jsxs("span",{children:[f.name," 구성 자세히"]}),n.jsx(fu,{className:"size-4 shrink-0 transition-transform group-open:rotate-180"})]}),n.jsx("dl",{className:"divide-line border-line divide-y border-t",children:f.rows.map(m=>n.jsxs("div",{className:"flex items-baseline justify-between gap-4 py-2.5 text-[length:var(--fs-sm)]",children:[n.jsx("dt",{className:"text-muted shrink-0",children:m.label}),n.jsx("dd",{className:"text-right font-semibold",children:m.value})]},m.label))})]})]})]},f.unitId))})})}function Iy(){const s=P(),r=ht(s),o=hl(s),u=Ke(s)[0],[f,d]=O.useState(0);return o.length===0?null:n.jsxs(rt,{id:"units",title:$e(s,r.path,`${r.label} 안내`),children:[n.jsx("div",{className:"border-line mb-6 flex gap-1 border-b",role:"tablist","aria-label":r.label,children:o.map((m,x)=>n.jsx("button",{type:"button",role:"tab","aria-selected":x===f,"aria-controls":`unit-panel-${m.slug}`,onClick:()=>d(x),className:`tap -mb-px border-b-2 px-5 text-[length:var(--fs-sm)] font-bold transition-colors ${x===f?"opacity-100":"border-transparent opacity-100 hover:opacity-100"}`,style:x===f?{borderColor:"var(--color-brand)"}:void 0,children:m.name},m.unitId))}),o.map((m,x)=>n.jsxs("div",{id:`unit-panel-${m.slug}`,role:"tabpanel",hidden:x!==f,className:"grid gap-6 lg:grid-cols-12 lg:gap-10",children:[n.jsxs("div",{className:"lg:col-span-7",children:[m.images[0]&&n.jsx("div",{className:"relative aspect-16/10 overflow-hidden rounded-lg",children:n.jsx("img",{src:m.images[0].url,alt:m.images[0].alt,loading:"lazy",decoding:"async",className:"size-full object-cover"})}),m.images.length>1&&n.jsx("ul",{className:"mt-2 grid grid-cols-3 gap-2",children:m.images.slice(1,4).map(g=>n.jsx("li",{className:"relative aspect-16/10 overflow-hidden rounded-md",children:n.jsx("img",{src:g.url,alt:g.alt,loading:"lazy",decoding:"async",className:"size-full object-cover"})},g.mediaId))})]}),n.jsxs("div",{className:"lg:col-span-5",children:[n.jsx("h3",{className:"h3",children:m.name}),m.intro&&n.jsx("p",{className:"mt-2 text-[length:var(--fs-sm)] leading-relaxed opacity-100",children:m.intro}),m.chips.length>0&&n.jsx("ul",{className:"mt-4 flex flex-wrap items-center gap-1.5",children:m.chips.map(g=>n.jsx("li",{children:n.jsxs(Ou,{children:[n.jsx("span",{className:"text-muted",children:g.label}),n.jsx("span",{className:"font-medium",children:g.value})]})},g.label))}),m.rows.length>0&&n.jsx("dl",{className:"divide-line border-line mt-4 divide-y border-t",children:m.rows.map(g=>n.jsxs("div",{className:"flex items-baseline justify-between gap-4 py-2 text-[length:var(--fs-sm)]",children:[n.jsx("dt",{className:"text-muted shrink-0",children:g.label}),n.jsx("dd",{className:"text-right font-semibold",children:g.value})]},g.label))}),n.jsxs("div",{className:"mt-5 flex gap-2",children:[u&&n.jsx("a",{href:u.url,target:"_blank",rel:"noopener noreferrer",className:"tap flex flex-1 items-center justify-center rounded-lg px-6 text-[length:var(--fs-sm)] font-bold transition-opacity hover:opacity-100",style:{backgroundColor:"var(--color-brand)",color:"var(--tpl-bg, #fff)"},children:gt(u,m.name)}),s.place.phone&&n.jsxs("a",{href:`tel:${s.place.phone}`,className:"tap border-line tpl-border flex items-center justify-center gap-1.5 rounded-lg border px-4 text-[length:var(--fs-sm)] font-semibold",children:[n.jsx(jt,{className:"size-4"}),n.jsx("span",{children:"전화"})]})]})]})]},m.unitId))]})}function Py(){const s=P(),r=ht(s),o=hl(s),u=Ke(s)[0];if(o.length===0)return null;const f=o.length===1?"grid-cols-1 max-w-2xl mx-auto":o.length===2?"grid-cols-1 sm:grid-cols-2":"grid-cols-1 sm:grid-cols-2 lg:grid-cols-3",d=Lt(s,"info")?[]:xu(s);return n.jsx("section",{id:"units","aria-labelledby":"units-heading",className:"border-line paper w-full border-b",style:{backgroundColor:"var(--tpl-surface, #fff)",paddingBlock:"calc(var(--section-space) * 1.4)"},children:n.jsxs("div",{className:"shell",children:[n.jsx(Su,{id:"units",title:$e(s,r.path,`${r.label} 안내`)}),n.jsx("ul",{className:`grid gap-x-8 gap-y-14 lg:gap-x-12 ${f}`,children:o.map(m=>n.jsxs("li",{className:"flex min-w-0 flex-col",children:[m.images[0]&&n.jsx("div",{className:"relative aspect-4/3 w-full overflow-hidden",children:n.jsx("img",{src:m.images[0].url,alt:m.images[0].alt,loading:"lazy",decoding:"async",className:"size-full object-cover object-center"})}),n.jsx("h3",{className:"serif mt-6",style:{fontSize:"var(--fs-h3)",fontWeight:300,letterSpacing:"0.04em"},children:m.name}),m.intro&&n.jsx("p",{className:"text-muted mt-3 line-clamp-2 text-[length:var(--fs-sm)] font-light leading-loose",children:m.intro}),m.chips.length>0&&n.jsx("ul",{className:"text-muted mt-3 flex flex-wrap items-center gap-x-4 gap-y-1 text-[length:var(--fs-xs)] font-light",children:m.chips.map(x=>n.jsxs("li",{children:[x.label," ",x.value]},x.label))}),(m.rows.length>0||m.images.length>1)&&n.jsxs("details",{className:"border-line mt-5 border-t",children:[n.jsx("summary",{className:"tap flex cursor-pointer list-none items-center text-[length:var(--fs-sm)] font-light opacity-100 marker:content-none [&::-webkit-details-marker]:hidden",children:"자세히 보기"}),n.jsxs("div",{className:"space-y-6 pb-2",children:[m.rows.length>0&&n.jsx("dl",{className:"divide-line divide-y",children:m.rows.map(x=>n.jsxs("div",{className:"flex items-baseline justify-between gap-4 py-2.5 text-[length:var(--fs-sm)] font-light",children:[n.jsx("dt",{className:"text-muted shrink-0",children:x.label}),n.jsx("dd",{className:"text-right",children:x.value})]},x.label))}),m.images.length>1&&n.jsx("ul",{className:"grid grid-cols-2 gap-3",children:m.images.slice(1).map(x=>n.jsx("li",{className:"relative aspect-4/3 overflow-hidden",children:n.jsx("img",{src:x.url,alt:x.alt,loading:"lazy",decoding:"async",className:"size-full object-cover object-center"})},x.mediaId))})]})]})]},m.unitId))}),d.length>0&&n.jsx("dl",{className:"divide-line border-line mx-auto mt-16 max-w-2xl divide-y border-t",children:d.map(m=>n.jsxs("div",{className:"flex items-baseline justify-between gap-4 py-3 text-[length:var(--fs-sm)] font-light",children:[n.jsx("dt",{className:"text-muted shrink-0",children:m.label}),n.jsx("dd",{className:"text-right",children:m.value})]},m.label))}),(u||s.place.phone)&&n.jsxs("div",{className:"mt-14 flex flex-wrap items-center justify-center gap-4",children:[u&&n.jsx("a",{href:u.url,target:"_blank",rel:"noopener noreferrer",className:"tap border-line inline-flex items-center justify-center border px-9 text-[length:var(--fs-sm)] font-light tracking-[0.14em] transition-opacity hover:opacity-100",children:gt(u)}),s.place.phone&&n.jsx("a",{href:`tel:${s.place.phone}`,className:"tap border-line inline-flex items-center justify-center border px-9 text-[length:var(--fs-sm)] font-light tabular-nums tracking-[0.08em] transition-opacity hover:opacity-100",children:s.place.phone})]})]})})}function e1(){const s=P(),r=ht(s),o=hl(s),u=Ke(s)[0];return o.length===0?null:n.jsxs("section",{id:"units","data-oasi":!0,"aria-labelledby":"units-heading",className:"pt-[var(--oasi-gap)]",children:[n.jsx(wu,{id:"units",title:$e(s,r.path,`${r.label} ${o.length}개 안내`)}),n.jsx("ul",{className:"space-y-20 lg:space-y-28",children:o.map(f=>n.jsxs("li",{children:[f.images[0]&&n.jsxs("figure",{className:"relative mx-auto w-full max-w-[34rem]",children:[n.jsx("img",{src:f.images[0].url,alt:f.images[0].alt,loading:"lazy",decoding:"async",className:"block h-[clamp(15rem,24vw,21rem)] w-full object-cover"}),n.jsx("figcaption",{className:"text-muted absolute left-full top-0 ml-5 hidden max-h-full overflow-hidden text-ellipsis whitespace-nowrap text-[length:var(--fs-xs)] tracking-[0.14em] xl:block",style:{writingMode:"vertical-rl"},children:f.name})]}),n.jsx("h3",{className:"mt-8 text-[length:var(--fs-sm)] font-normal tracking-[0.08em]",children:f.name}),f.chips.length>0&&n.jsx("p",{className:"text-muted mt-2 text-[length:var(--fs-xs)] leading-[1.9]",children:f.chips.map(d=>`${d.label} ${d.value}`).join(" · ")}),f.intro&&n.jsx("p",{className:"measure mt-4 text-[length:var(--fs-xs)] leading-[1.9]",children:f.intro}),f.rows.length>0&&n.jsx("dl",{className:"divide-line border-line mt-6 divide-y border-t text-[length:var(--fs-xs)]",children:f.rows.map(d=>n.jsxs("div",{className:"flex items-baseline justify-between gap-6 py-2.5",children:[n.jsx("dt",{className:"text-muted shrink-0",children:d.label}),n.jsx("dd",{className:"text-right",children:d.value})]},d.label))}),f.images.length>1&&n.jsx("ul",{className:"mx-auto mt-6 grid w-full max-w-[34rem] grid-cols-2 gap-2",children:f.images.slice(1).map(d=>n.jsx("li",{children:n.jsx("img",{src:d.url,alt:d.alt,loading:"lazy",decoding:"async",className:"block aspect-[4/3] w-full object-cover"})},d.mediaId))}),(u||s.place.phone)&&n.jsxs("p",{className:"mt-6 flex flex-wrap items-center gap-x-8 text-[length:var(--fs-sm)]",children:[u&&n.jsx("a",{href:u.url,target:"_blank",rel:"noopener noreferrer",className:"tap inline-flex items-center underline underline-offset-[6px]",style:{color:"var(--color-brand)"},children:gt(u)}),s.place.phone&&n.jsx("a",{href:`tel:${s.place.phone}`,className:"tap text-muted inline-flex items-center underline underline-offset-[6px]",children:s.place.phone})]})]},f.unitId))})]})}function t1(){const s=P(),r=ht(s),o=hl(s);return o.length===0?null:n.jsx("section",{id:"units","aria-labelledby":"units-heading",className:"w-full",style:{paddingBlock:"var(--section-space)",backgroundColor:"var(--tpl-bg)"},children:n.jsxs("div",{className:"shell",children:[n.jsx(Eu,{id:"units",title:$e(s,r.path,`${r.label} ${o.length}개 안내`)}),n.jsx("ul",{className:"space-y-16 sm:space-y-24",children:o.map(u=>n.jsxs("li",{className:"grid grid-cols-1 gap-6 lg:grid-cols-12 lg:gap-10",children:[n.jsxs("div",{className:"min-w-0 lg:col-span-7",children:[u.images[0]&&n.jsx("img",{src:u.images[0].url,alt:u.images[0].alt,loading:"lazy",decoding:"async",width:u.images[0].width,height:u.images[0].height,className:"block h-auto w-full"}),u.images.length>1&&n.jsx("ul",{className:"mt-2 grid grid-cols-2 gap-2",children:u.images.slice(1).map(f=>n.jsx("li",{children:n.jsx("img",{src:f.url,alt:f.alt,loading:"lazy",decoding:"async",width:f.width,height:f.height,className:"block h-auto w-full"})},f.mediaId))})]}),n.jsxs("div",{className:"min-w-0 lg:col-span-5",children:[n.jsx("h3",{className:"serif min-w-0 break-keep font-extrabold",style:{fontSize:"var(--fs-h3)",letterSpacing:"0.02em",lineHeight:1.35},children:u.name}),u.chips.length>0&&n.jsx("dl",{className:"mt-4 space-y-1.5",children:u.chips.map(f=>n.jsxs("div",{className:"flex gap-3 text-[length:var(--fs-sm)]",children:[n.jsx("dt",{className:"text-muted w-20 shrink-0",children:f.label}),n.jsx("dd",{className:"min-w-0 font-medium",children:f.value})]},f.label))}),u.intro&&n.jsx("p",{className:"text-muted measure mt-5 text-[length:var(--fs-sm)]",style:{lineHeight:1.8},children:u.intro})]})]},u.unitId))})]})})}function l1(){const s=P(),r=ht(s),o=hl(s),u=Ke(s)[0];return o.length===0?null:n.jsx("section",{id:"units","aria-labelledby":"units-heading","data-pastel":"own",className:"w-full",style:{backgroundColor:"var(--tpl-surface, #fff)",paddingBlock:"var(--section-space)"},children:n.jsxs("div",{className:"shell",children:[n.jsx(zu,{id:"units",title:$e(s,r.path,`${r.label} ${o.length}개 안내`)}),n.jsx("ul",{className:"grid grid-cols-1 gap-6 sm:grid-cols-2 lg:gap-8",children:o.map((f,d)=>n.jsxs("li",{className:"flex flex-col overflow-hidden p-4 sm:p-5",style:{backgroundColor:d%2===0?"var(--pastel-1)":"var(--pastel-2)",borderRadius:"calc(var(--tpl-radius, 0.75rem) * 1.35)"},children:[f.images[0]&&n.jsx("div",{className:"relative aspect-16/10 overflow-hidden",style:{borderRadius:"var(--tpl-radius, 0.75rem)"},children:n.jsx("img",{src:f.images[0].url,alt:f.images[0].alt,loading:"lazy",decoding:"async",className:"size-full object-cover"})}),n.jsxs("div",{className:"flex flex-1 flex-col gap-3 px-1 pt-4",children:[n.jsx("div",{className:"flex flex-wrap items-baseline justify-between gap-x-3 gap-y-1",children:n.jsx("h3",{className:"h3",style:{fontWeight:800},children:f.name})}),f.chips.length>0&&n.jsx("ul",{className:"flex flex-wrap items-center gap-1.5",children:f.chips.map(m=>n.jsxs("li",{className:"inline-flex items-center gap-1 rounded-full px-3 py-1 text-[length:var(--fs-xs)]",style:{backgroundColor:"color-mix(in srgb, var(--tpl-surface, #fff) 70%, transparent)"},children:[n.jsx("span",{className:"opacity-100",children:m.label}),n.jsx("span",{className:"font-bold",children:m.value})]},m.label))}),f.intro&&n.jsx("p",{className:"text-[length:var(--fs-sm)] leading-relaxed opacity-100",children:f.intro})]}),(u||s.place.phone)&&n.jsxs("div",{className:"mt-4 flex gap-2 px-1",children:[u&&n.jsx("a",{href:u.url,target:"_blank",rel:"noopener noreferrer",className:"tap flex flex-1 items-center justify-center rounded-full text-[length:var(--fs-sm)] font-extrabold transition-opacity hover:opacity-100",style:{backgroundColor:"var(--pastel-ink)",color:"var(--tpl-bg, #fff)"},children:gt(u)}),s.place.phone&&n.jsxs("a",{href:`tel:${s.place.phone}`,className:"tap flex items-center justify-center gap-1.5 rounded-full px-5 text-[length:var(--fs-sm)] font-bold",style:{backgroundColor:"color-mix(in srgb, var(--tpl-surface, #fff) 75%, transparent)"},children:[n.jsx(jt,{className:"size-4"}),n.jsx("span",{children:"전화"})]})]}),(f.rows.length>0||f.images.length>1)&&n.jsxs("details",{className:"group mt-3 px-1",children:[n.jsxs("summary",{className:"tap flex cursor-pointer list-none items-center justify-between gap-2 text-[length:var(--fs-sm)] font-bold marker:content-none [&::-webkit-details-marker]:hidden",children:[n.jsxs("span",{children:[f.name," 자세히"]}),n.jsx(fu,{className:"size-4 shrink-0 transition-transform group-open:rotate-180"})]}),n.jsxs("div",{className:"space-y-4 pb-1",children:[f.rows.length>0&&n.jsx("dl",{className:"divide-line divide-y",children:f.rows.map(m=>n.jsxs("div",{className:"flex items-baseline justify-between gap-4 py-2.5 text-[length:var(--fs-sm)]",children:[n.jsx("dt",{className:"shrink-0 opacity-100",children:m.label}),n.jsx("dd",{className:"text-right font-bold",children:m.value})]},m.label))}),f.images.length>1&&n.jsx("ul",{className:"grid grid-cols-2 gap-2",children:f.images.slice(1).map(m=>n.jsx("li",{className:"relative aspect-4/3 overflow-hidden",style:{borderRadius:"calc(var(--tpl-radius, 0.75rem) * 0.7)"},children:n.jsx("img",{src:m.url,alt:m.alt,loading:"lazy",decoding:"async",className:"size-full object-cover"})},m.mediaId))})]})]})]},f.unitId))})]})})}function a1(){const s=P(),r=hl(s),o=ht(s),u=Ke(s)[0];return r.length===0?null:n.jsxs("section",{id:"units","aria-labelledby":"units-heading",className:"border-line w-full border-b",style:{backgroundColor:"var(--tpl-surface)",backgroundImage:qs,paddingBlock:"var(--section-space)"},children:[n.jsx("div",{className:"shell",children:n.jsx(yu,{id:"units",title:$e(s,o.path,`${o.label} ${r.length}개 안내`)})}),r.map((f,d)=>n.jsx(n1,{unit:f,no:String(d+1).padStart(2,"0"),dark:d%2===1,booking:u,phone:s.place.phone},f.unitId))]})}function n1({unit:s,no:r,dark:o,booking:u,phone:f}){return n.jsx("article",{className:"w-full",style:o?{backgroundColor:"var(--tpl-inverse)",color:"var(--tpl-bg)",backgroundImage:qs}:void 0,children:n.jsxs("div",{className:"shell grid grid-cols-12 gap-y-6 py-10 xl:gap-x-10 xl:py-16",children:[n.jsxs("div",{className:"col-span-12 xl:col-span-5 xl:pr-8",children:[n.jsxs("div",{className:"relative",children:[n.jsx("span",{"aria-hidden":!0,className:"serif pointer-events-none absolute -top-1 left-0 select-none leading-none tabular-nums",style:{fontSize:"clamp(3rem, 8vw, 6rem)",fontWeight:800,opacity:.1},children:r}),n.jsx("h3",{className:"serif relative pt-7 xl:pt-12",style:{fontSize:"clamp(1.5rem, 3vw, 2.25rem)",fontWeight:800,lineHeight:1.1,letterSpacing:"-0.02em"},children:s.name})]}),s.intro&&n.jsx("p",{className:"measure mt-4 font-serif text-[length:var(--fs-body)] leading-relaxed opacity-100",children:s.intro}),s.rows.length>0&&n.jsx("dl",{className:"border-line mt-6 border-t",children:s.rows.map(d=>n.jsxs("div",{className:"border-line flex items-baseline justify-between gap-6 border-b py-2.5 text-[length:var(--fs-sm)]",children:[n.jsx("dt",{className:"text-muted shrink-0",children:d.label}),n.jsx("dd",{className:"text-right font-semibold",children:d.value})]},d.label))}),(u||f)&&n.jsxs("div",{className:"mt-6 flex flex-wrap items-center gap-x-6 gap-y-1 text-[length:var(--fs-sm)] font-bold",children:[u&&n.jsx("a",{href:u.url,target:"_blank",rel:"noopener noreferrer",className:"tap inline-flex items-center underline underline-offset-4",children:gt(u)}),f&&n.jsx("a",{href:`tel:${f}`,className:"tap inline-flex items-center underline underline-offset-4",children:f})]})]}),n.jsxs("div",{className:"col-span-12 xl:col-span-7 xl:-ml-10",children:[s.images[0]&&n.jsx("figure",{className:"w-full xl:w-[64%]",children:n.jsx("img",{src:s.images[0].url,alt:s.images[0].alt,loading:"lazy",decoding:"async",width:s.images[0].width,height:s.images[0].height,className:"w-full object-cover",style:{aspectRatio:"4 / 5"}})}),s.images[1]&&n.jsx("figure",{className:"mt-3 w-full xl:-mt-24 xl:ml-auto xl:w-[50%]",children:n.jsx("img",{src:s.images[1].url,alt:s.images[1].alt,loading:"lazy",decoding:"async",width:s.images[1].width,height:s.images[1].height,className:"w-full object-cover",style:{aspectRatio:"4 / 3"}})})]}),s.images.length>2&&n.jsx("ul",{className:"col-span-12 grid grid-cols-3 gap-2 xl:grid-cols-6",children:s.images.slice(2).map(d=>n.jsx("li",{children:n.jsx("img",{src:d.url,alt:d.alt,loading:"lazy",decoding:"async",width:d.width,height:d.height,className:"w-full object-cover",style:{aspectRatio:"3 / 2"}})},d.mediaId))})]})})}function Jo(){var v;const s=P(),r=ht(s),o=$p(s),[u,f]=O.useState(null),[d,m]=O.useState(!1),x=yr();if(x==="reservation")return n.jsx(Py,{});if(x==="oasi")return n.jsx(e1,{});if(x==="studio")return n.jsx(t1,{});if(x==="pastel")return n.jsx(l1,{});if(x==="editorial")return n.jsx(a1,{});const g=(v=s.theme.sections.find(N=>N.id===r.path))==null?void 0:v.variantId;if(g==="rooms.bands")return n.jsx(Wy,{});if(g==="rooms.tabs")return n.jsx(Iy,{});const p=hl(s);if(p.length===0)return null;const y=p.length===1?"grid-cols-1":p.length===2?"grid-cols-1 sm:grid-cols-2":"grid-cols-1 sm:grid-cols-2 xl:grid-cols-3";return n.jsxs(rt,{id:"units",title:$e(s,r.path,`${r.label} ${p.length}개 안내`),children:[n.jsx("ul",{className:`grid gap-5 lg:gap-7 ${y}`,children:p.map(N=>n.jsxs(Mu,{as:"li",className:"flex flex-col overflow-hidden",children:[n.jsxs("div",{className:"flex flex-1 flex-col",children:[N.images.length>0&&n.jsx(s1,{images:N.images,name:N.name}),n.jsxs("div",{className:"flex flex-1 flex-col gap-3 p-5",children:[n.jsx("h3",{className:"h3",children:N.name}),N.chips.length>0&&n.jsx("ul",{className:"flex flex-wrap items-center gap-1.5",children:N.chips.map(w=>n.jsx("li",{children:n.jsxs(Ou,{children:[!w.value.includes(w.label)&&n.jsx("span",{className:"text-muted",children:w.label}),n.jsx("span",{className:"font-medium",children:w.value})]})},w.label))}),N.intro&&n.jsx("p",{className:"text-[length:var(--fs-sm)] leading-relaxed opacity-100",children:N.intro})]})]}),(N.rows.length>0||o)&&n.jsxs("button",{type:"button",onClick:()=>f(N.unitId),className:"tap border-line flex items-center justify-between gap-2 border-t px-5 py-3 text-[length:var(--fs-sm)] font-semibold",children:[n.jsx("span",{children:"자세히 · 예약"}),n.jsx(Ra,{className:"size-4 shrink-0"})]})]},N.unitId))}),p.map(N=>{const w=o==null?void 0:o.offers.find(j=>j.unitId===N.unitId);return n.jsx(Xs,{open:u===N.unitId,onClose:()=>f(null),label:`${N.name} 상세 · 예약`,title:N.name,children:n.jsxs("div",{className:"flex flex-col gap-5",children:[(w==null?void 0:w.baseRateText)&&n.jsx("p",{className:"text-[length:var(--fs-lead)] font-bold",style:{color:"var(--color-brand)"},children:w.baseRateText}),(w==null?void 0:w.capacityText)&&n.jsx("p",{className:"text-muted text-[length:var(--fs-sm)]",children:w.capacityText}),N.intro&&n.jsx("p",{className:"text-[length:var(--fs-sm)] leading-relaxed opacity-100",children:N.intro}),N.rows.length>0&&n.jsx("dl",{className:"divide-line border-line divide-y border-t",children:N.rows.map(j=>n.jsxs("div",{className:"flex items-baseline justify-between gap-4 py-2.5 text-[length:var(--fs-sm)]",children:[n.jsx("dt",{className:"text-muted shrink-0",children:j.label}),n.jsx("dd",{className:"text-right font-semibold",children:j.value})]},j.label))}),w&&w.rateRows.length>0&&n.jsx("dl",{className:"border-line flex flex-wrap gap-x-4 gap-y-1.5 border-t pt-4",children:w.rateRows.map(j=>n.jsxs("div",{className:"flex items-baseline gap-1.5 text-[length:var(--fs-xs)]",children:[n.jsx("dt",{className:"text-muted",children:j.label}),n.jsx("dd",{className:"font-semibold",children:j.value})]},j.label))}),o&&n.jsxs("div",{className:"border-line flex flex-col gap-2 border-t pt-4",children:[n.jsx("p",{className:"text-[length:var(--fs-sm)] font-bold",children:"예약"}),n.jsx("button",{type:"button",onClick:()=>{f(null),m(!0)},className:"tap flex items-center justify-center gap-2 rounded-lg px-4 text-[length:var(--fs-sm)] font-bold",style:{backgroundColor:"var(--color-brand)",color:"var(--tpl-bg, #fff)"},children:n.jsx("span",{children:"날짜 선택하고 예약 요청하기"})}),o.phone&&n.jsxs("a",{href:`tel:${o.phone}`,className:"tap border-line tpl-border flex items-center justify-center gap-2 rounded-lg border px-4 text-[length:var(--fs-sm)] font-semibold",children:[n.jsx(jt,{className:"size-4"}),n.jsxs("span",{children:["전화 예약 ",o.phone]})]}),o.links.map(j=>n.jsxs("a",{href:j.url,target:"_blank",rel:"noopener noreferrer",className:"tap border-line tpl-border flex items-center justify-between gap-2 rounded-lg border px-4 text-[length:var(--fs-sm)] font-semibold",children:[n.jsx("span",{children:vu(j)}),n.jsx(Ll,{className:"size-4 shrink-0"})]},j.url))]})]})},N.unitId)}),o&&n.jsx(Xs,{open:d,onClose:()=>m(!1),label:"예약 요청",title:"예약 요청",wide:!0,children:n.jsx(Ip,{})})]})}function s1({images:s,name:r}){return n.jsx(kn,{label:`${r} 사진`,align:"center",gap:0,arrows:"overlay",children:s.map(o=>n.jsx(Nr,{basis:"basis-full",children:n.jsx("div",{className:"relative aspect-16/10 overflow-hidden",children:n.jsx("img",{src:o.url,alt:o.alt,loading:"lazy",decoding:"async",className:"size-full object-cover"})})},o.mediaId))})}function i1(){const s=P(),r=Ke(s),o=xv(s),u=s.place.phone;return r.length===0&&o.length===0&&!u?null:n.jsx(rt,{id:"booking",tone:"alt",title:$e(s,"booking","예약 안내"),lead:`${s.place.name} 예약은 아래 경로로 받습니다.`,children:n.jsxs("div",{className:"grid gap-6 lg:grid-cols-12 lg:gap-10",children:[o.length>0&&n.jsx("dl",{className:"panel divide-line divide-y overflow-hidden px-5 lg:col-span-7",children:o.map(f=>n.jsx(Fp,{label:f.label,value:f.value},f.label))}),n.jsx("div",{className:o.length>0?"lg:col-span-5":"lg:col-span-12",children:n.jsxs("div",{className:o.length>0?"flex flex-col gap-2.5 sm:flex-row sm:flex-wrap lg:flex-col":"flex flex-col items-start gap-2.5 sm:flex-row sm:flex-wrap",children:[u&&n.jsxs(sp,{href:`tel:${u}`,icon:n.jsx(jt,{className:"size-4"}),children:["전화 예약 ",u]}),r.map(f=>n.jsx(sp,{href:f.url,variant:"outline",external:!0,children:vu(f)},f.url))]})})]})})}function fp(){const s=P(),r=$p(s);if(!r)return null;const{offers:o,links:u,contacts:f,phone:d}=r;return n.jsx("section",{id:"booking","aria-labelledby":"booking-heading",className:"w-full border-b border-black/8 py-16 sm:py-24",style:{backgroundColor:"var(--color-surface-alt)"},children:n.jsxs("div",{className:"shell",children:[n.jsxs("p",{className:"mb-2 flex items-center gap-2 text-[length:var(--fs-xs)] font-semibold uppercase tracking-wider opacity-100",children:[n.jsx(Yb,{className:"size-4"}),n.jsx("span",{children:"Reservation"})]}),n.jsx("h2",{id:"booking-heading",className:"serif mb-2 text-2xl font-bold tracking-tight sm:text-3xl lg:text-4xl",children:$e(s,"booking","예약 안내")}),n.jsx("p",{className:"mb-8 max-w-2xl text-[length:var(--fs-xs)] leading-relaxed opacity-100 sm:text-[length:var(--fs-sm)]",children:"빈 방 확인과 결제는 아래 예약 창구에서 진행됩니다. 이 페이지에서는 요금과 이용 조건만 안내합니다."}),n.jsxs("div",{className:"grid grid-cols-1 gap-4 lg:grid-cols-5 lg:gap-6",children:[o.length>0&&n.jsxs("div",{className:"overflow-hidden rounded-2xl border border-black/8 lg:col-span-3",style:{backgroundColor:"var(--color-surface)"},children:[n.jsxs("p",{className:"flex items-center gap-2 border-b border-black/8 px-4 py-3 text-[length:var(--fs-xs)] font-bold sm:px-5",children:[n.jsx(qb,{className:"size-3.5 opacity-100"}),n.jsx("span",{children:"객실별 요금 · 인원"})]}),n.jsx("ul",{className:"divide-y divide-black/5",children:o.map(m=>n.jsxs("li",{className:"p-4 sm:p-5",children:[n.jsxs("div",{className:"flex flex-wrap items-baseline justify-between gap-x-3 gap-y-1",children:[n.jsx("h3",{className:"serif text-base font-bold sm:text-lg",children:m.name}),m.baseRateText&&n.jsx("span",{className:"text-[length:var(--fs-sm)] font-bold",style:{color:"var(--color-brand)"},children:m.baseRateText})]}),m.capacityText&&n.jsx("p",{className:"mt-1 text-[length:var(--fs-xs)] opacity-100",children:m.capacityText}),m.rateRows.length>0&&n.jsx("dl",{className:"mt-3 flex flex-wrap gap-x-4 gap-y-1.5",children:m.rateRows.map(x=>n.jsxs("div",{className:"flex items-baseline gap-1.5 text-[length:var(--fs-xs)]",children:[n.jsx("dt",{className:"opacity-100",children:x.label}),n.jsx("dd",{className:"font-semibold",children:x.value})]},x.label))}),n.jsx("a",{href:m.href,className:"mt-3 inline-flex items-center gap-1 text-[length:var(--fs-xs)] font-semibold underline decoration-black/20 underline-offset-4 transition-opacity hover:opacity-100",children:n.jsx("span",{children:"사진 · 상세 보기"})})]},m.unitId))})]}),n.jsxs("div",{className:"flex h-fit flex-col gap-3 rounded-2xl border border-black/8 p-4 sm:p-5 lg:col-span-2",style:{backgroundColor:"var(--color-surface)"},children:[n.jsx("p",{className:"text-[length:var(--fs-xs)] font-bold",children:"예약 창구"}),d&&n.jsxs("a",{href:`tel:${d}`,className:"flex items-center justify-center gap-2 rounded-xl px-4 py-3 text-[length:var(--fs-sm)] font-bold text-white transition-opacity hover:opacity-100",style:{backgroundColor:"var(--color-brand)"},children:[n.jsx(jt,{className:"size-4"}),n.jsxs("span",{children:["전화 예약 ",d]})]}),u.map(m=>n.jsxs("a",{href:m.url,target:"_blank",rel:"noopener noreferrer",className:"flex items-center justify-between gap-2 rounded-xl border border-black/10 px-4 py-3 text-[length:var(--fs-xs)] font-semibold transition-colors hover:bg-black/5",style:{backgroundColor:"var(--color-surface-alt)"},children:[n.jsx("span",{children:vu(m)}),n.jsx(Ll,{className:"size-3.5 shrink-0"})]},m.url)),f.length>0&&n.jsxs("div",{className:"mt-1 border-t border-black/8 pt-3",children:[n.jsx("p",{className:"mb-2 text-[length:var(--fs-xs)] opacity-100",children:"문의"}),n.jsx("ul",{className:"flex flex-wrap gap-2",children:f.map(m=>n.jsx("li",{children:n.jsxs("a",{href:m.url,target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-1 rounded-lg border border-black/10 px-2.5 py-1.5 text-[length:var(--fs-xs)] transition-colors hover:bg-black/5",children:[n.jsx("span",{children:pl(m)}),n.jsx(Ll,{className:"size-3"})]})},m.url))})]}),u.length===0&&n.jsx("p",{className:"text-[length:var(--fs-xs)] leading-relaxed opacity-100",children:"온라인 예약 채널은 등록되지 않았습니다. 예약은 전화로 문의해 주세요."})]})]}),n.jsx(Ip,{})]})})}function r1(){const s=P(),r=bv(s);return r.length===0?null:n.jsx(rt,{id:"space",title:$e(s,"space","공간 안내"),lead:"좌석과 이용 환경 안내입니다.",children:n.jsx("dl",{className:"grid grid-cols-2 gap-3 sm:grid-cols-3 lg:grid-cols-4 lg:gap-4",children:r.map(o=>n.jsxs(Mu,{className:"p-4 sm:p-5",children:[n.jsx("dt",{className:"text-muted mb-1 text-[length:var(--fs-xs)] font-medium",children:o.label}),n.jsx("dd",{className:"text-[length:var(--fs-lead)] font-bold",children:o.value})]},o.label))})})}function c1(){const s=P(),{place:r}=s,o=Cn(s);if(!r.phone&&!r.email&&o.length===0)return null;const u=[...r.phone?[{key:"phone",icon:jt,label:"전화",value:r.phone,href:`tel:${r.phone}`}]:[],...r.email?[{key:"email",icon:Mp,label:"이메일",value:r.email,href:`mailto:${r.email}`}]:[],...o.map(f=>({key:f.url,icon:du,label:pl(f),value:"바로 가기",href:f.url,external:!0}))];return n.jsx(rt,{id:"inquiry",title:$e(s,"inquiry","문의 안내"),lead:`궁금한 점은 아래로 연락 주시면 ${r.name}에서 직접 안내해 드립니다.`,children:n.jsx("ul",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3 lg:gap-4",children:u.map(f=>{const d=f.icon,m="external"in f&&f.external;return n.jsx("li",{children:n.jsxs("a",{href:f.href,...m?{target:"_blank",rel:"noopener noreferrer"}:{},className:"panel flex h-full items-center justify-between gap-3 p-5 transition-opacity hover:opacity-100",children:[n.jsxs("span",{className:"flex min-w-0 items-center gap-3",children:[n.jsx(d,{className:"size-5 shrink-0 opacity-40"}),n.jsxs("span",{className:"min-w-0",children:[n.jsx("span",{className:"text-muted block text-[length:var(--fs-xs)] font-medium",children:f.label}),n.jsx("span",{className:"block break-all text-[length:var(--fs-sm)] font-semibold",children:f.value})]})]}),m&&n.jsx(Ll,{className:"size-4 shrink-0 opacity-40"})]})},f.key)})})})}function o1(){const s=P(),r=yv(s);return r.length===0?null:n.jsx(rt,{id:"exhibition",tone:"alt",title:$e(s,"exhibition","관람 안내"),lead:"방문 전 관람 조건을 확인해 주세요.",children:n.jsx("dl",{className:"panel divide-line divide-y overflow-hidden px-5",children:r.map(o=>n.jsx(Fp,{label:o.label,value:o.value},o.label))})})}function u1(){const[s,r]=O.useState([]);return O.useEffect(()=>r(ev()),[]),s}const f1=["봄","여름","가을","겨울"];function d1(){const s=P(),r=s.local.festivals,o=u1(),[u,f]=O.useState(null);if(r.length===0)return null;const d=f1.filter(v=>r.some(N=>N.season===v)),m=r.filter(v=>{var N;return!((N=v.season)!=null&&N.trim())}),x=[...o].reverse().find(v=>d.includes(v)),g="전체",p=u??x??null,y=p===g;return n.jsxs(rt,{id:"festival",title:"계절별 축제",lead:`${s.place.addressLocality??"이 지역"}의 축제와 행사를 계절로 묶었습니다.`,aside:x&&p===x&&!y?n.jsxs("p",{className:"text-muted text-[length:var(--fs-xs)]",children:["지금은 ",x," 축제입니다"]}):void 0,footnote:n.jsx(n.Fragment,{children:"한국관광공사 TourAPI 기준. 일정은 주최 측 사정으로 바뀔 수 있습니다."}),children:[d.length>1&&n.jsx("div",{className:"mb-6 flex flex-wrap gap-1.5",role:"tablist","aria-label":"계절",children:[...d,g].map(v=>{const N=p===v;return n.jsx("button",{type:"button",role:"tab","aria-selected":N,onClick:()=>f(v),className:"border-line rounded-full border px-4 py-1.5 text-[length:var(--fs-sm)] font-bold transition-opacity hover:opacity-100",style:N?{backgroundColor:"var(--color-brand)",color:"var(--tpl-bg, #fff)",borderColor:"transparent"}:void 0,children:v},v)})}),n.jsxs("div",{className:"space-y-8",children:[d.map(v=>{const N=r.filter(w=>w.season===v);return n.jsxs("div",{hidden:!y&&p!==null&&p!==v,children:[n.jsx("h3",{className:"border-line mb-4 border-b pb-2 text-[length:var(--fs-sm)] font-bold",children:v}),n.jsx(dp,{items:N,label:`${v} 축제`,remount:p})]},v)}),m.length>0&&n.jsxs("div",{children:[n.jsx("h3",{className:"border-line mb-4 border-b pb-2 text-[length:var(--fs-sm)] font-bold",children:"계절 없이 열리는 행사"}),n.jsx(dp,{items:m,label:"계절 없이 열리는 행사"})]})]})]})}function dp({items:s,label:r,remount:o}){const[u,f]=O.useState(null);return n.jsxs(n.Fragment,{children:[n.jsx(kn,{label:r,children:s.map(d=>n.jsx(Nr,{basis:"basis-[76%] sm:basis-1/3 lg:basis-1/4",children:n.jsxs("button",{type:"button",onClick:()=>f(d),className:"panel group flex h-full w-full flex-col overflow-hidden text-left transition-opacity hover:opacity-100",children:[n.jsxs("span",{className:"relative block aspect-4/3 overflow-hidden",children:[d.imageUrl?n.jsx("img",{src:d.imageUrl,alt:`${d.name} 사진`,loading:"lazy",decoding:"async",className:"size-full object-cover transition-transform duration-500 group-hover:scale-105"}):n.jsx("span",{className:"serif grid size-full place-items-center px-3 text-center text-[length:var(--fs-lead)] leading-tight",style:{backgroundColor:"color-mix(in oklab, currentColor 9%, transparent)"},"aria-hidden":!0,children:d.name}),n.jsx("span",{className:"absolute bottom-2 left-2 rounded-md px-2 py-0.5 text-[length:var(--fs-xs)] font-bold",style:{backgroundColor:"color-mix(in srgb, var(--tpl-inverse, #1c1917) 78%, transparent)",color:"var(--tpl-bg, #fff)"},children:d.month})]}),n.jsxs("span",{className:"flex min-w-0 flex-1 flex-col gap-1 p-3.5",children:[n.jsx("span",{className:"text-[length:var(--fs-sm)] font-bold",children:d.name}),d.period&&n.jsx("span",{className:"text-[length:var(--fs-xs)] font-medium opacity-100",children:d.period}),d.description&&n.jsx("span",{className:"text-muted line-clamp-2 pt-0.5 text-[length:var(--fs-xs)] leading-relaxed",children:d.description}),n.jsxs("span",{className:"text-muted mt-auto flex items-center gap-0.5 pt-1.5 text-[length:var(--fs-xs)] opacity-100 transition-opacity group-hover:opacity-100",children:[n.jsx("span",{children:"자세히 보기"}),n.jsx(Ll,{className:"size-3.5"})]})]})]})},d.name))},o??"all"),n.jsx(Xs,{open:u!=null,onClose:()=>f(null),label:(u==null?void 0:u.name)??"축제",title:u==null?void 0:u.name,children:u&&n.jsxs("div",{className:"flex flex-col gap-4",children:[u.imageUrl&&n.jsx("img",{src:u.imageUrl,alt:`${u.name} 사진`,className:"aspect-4/3 w-full rounded-lg object-cover"}),u.period&&n.jsx("p",{className:"text-[length:var(--fs-sm)] font-semibold opacity-100",children:u.period}),u.description&&n.jsx("p",{className:"text-[length:var(--fs-sm)] leading-relaxed opacity-100",children:u.description}),n.jsxs("a",{href:Zv(u.searchQuery),target:"_blank",rel:"noopener noreferrer nofollow",className:"tap flex items-center justify-center gap-1.5 rounded-lg px-4 text-[length:var(--fs-sm)] font-bold",style:{backgroundColor:"var(--color-brand)",color:"var(--tpl-bg, #fff)"},children:[n.jsx("span",{children:"검색으로 열기"}),n.jsx(Ll,{className:"size-4"})]})]})})]})}const Hs=80,mp=[{id:"all",label:"전체",test:()=>!0},{id:"w5",label:"걸어서 5분 이내",test:s=>s<=5*Hs},{id:"w10",label:"걸어서 10분 이내",test:s=>s<=10*Hs},{id:"far",label:"걸어서 10분 이상",test:s=>s>10*Hs}];function mr(s){if(Number.isFinite(s))return`도보 약 ${Math.max(1,Math.round(s/Hs))}분`}function m1(s){const r=/^([\d.]+)\s*(km|m)$/i.exec((s??"").trim());return r?Number(r[1])*(r[2].toLowerCase()==="km"?1e3:1):1/0}function fa(s){return s.distanceMeters!=null?Number.isFinite(s.distanceMeters)&&s.distanceMeters>=0?s.distanceMeters:1/0:m1(s.distanceText)}function h1(){const s=P(),{local:r}=s,o=r.restaurants.filter(v=>v.imageUrl),u=o.length>0||r.attractions.length>0,[f,d]=O.useState("all");if(!u)return null;const m=[...o,...r.attractions],x=v=>m.filter(N=>v.test(fa(N))).length,g=mp.filter((v,N)=>N===0||x(v)>0&&x(v)v.id===f)??mp[0],y=v=>p.test(fa(v));return n.jsxs(rt,{id:"guide",tone:"alt",title:"주변 안내",lead:`${s.place.addressLocality??"주변"} 지역의 맛집 · 명소 안내입니다.`,aside:r.syncedAt?n.jsxs("p",{className:"text-muted text-[length:var(--fs-xs)]",children:[ju(r.syncedAt)," 갱신"]}):void 0,footnote:n.jsxs(n.Fragment,{children:["도보 시간은 숙소에서 잰 직선거리를 분속 ",Hs,"m 로 환산한 값입니다. 실제로 걷는 길은 이보다 깁니다."]}),children:[g.length>1&&n.jsx("div",{className:"mb-6 flex flex-wrap gap-1.5",role:"tablist","aria-label":"거리",children:g.map(v=>{const N=v.id===f,w=x(v);return n.jsxs("button",{type:"button",role:"tab","aria-selected":N,onClick:()=>d(v.id),className:"border-line rounded-full border px-4 py-1.5 text-[length:var(--fs-sm)] font-bold transition-opacity hover:opacity-100",style:N?{backgroundColor:"var(--color-brand)",color:"var(--tpl-bg, #fff)",borderColor:"transparent"}:void 0,children:[v.label," ",n.jsx("span",{className:"tabular-nums opacity-100",children:w})]},v.id)})}),n.jsxs("div",{className:"space-y-10",children:[o.length>0&&n.jsx(hp,{title:"주변 맛집",icon:A0,places:o,within:y}),r.attractions.length>0&&n.jsx(hp,{title:"주변 명소",icon:gr,places:r.attractions,within:y})]})]})}function p1({icon:s,children:r}){return n.jsxs("h3",{className:"border-line mb-4 flex items-center gap-2 border-b pb-2 text-[length:var(--fs-sm)] font-bold",children:[n.jsx(s,{className:"size-4 opacity-100"}),n.jsx("span",{children:r})]})}function hp({title:s,icon:r,places:o,within:u}){const f=o.filter(u),[d,m]=O.useState(null);return n.jsxs("div",{children:[n.jsx(p1,{icon:r,children:s}),n.jsx(kn,{label:s,children:f.map(x=>n.jsx(Nr,{basis:"basis-[76%] sm:basis-1/3 lg:basis-1/4",children:n.jsxs("button",{type:"button",onClick:()=>m(x),className:"panel group flex h-full w-full flex-col overflow-hidden text-left transition-opacity hover:opacity-100",children:[n.jsxs("span",{className:"relative block aspect-[16/10] overflow-hidden",children:[x.imageUrl?n.jsx("img",{src:x.imageUrl,alt:`${x.name} 사진`,loading:"lazy",decoding:"async",className:"size-full object-cover transition-transform duration-500 group-hover:scale-105"}):n.jsx("span",{className:"serif grid size-full place-items-center px-3 text-center text-[length:var(--fs-lead)] leading-tight",style:{backgroundColor:"color-mix(in oklab, currentColor 9%, transparent)"},"aria-hidden":!0,children:x.name}),(Number.isFinite(fa(x))||x.distanceText)&&n.jsxs("span",{className:"absolute bottom-2 left-2 rounded-md px-2 py-0.5 text-[length:var(--fs-xs)] font-bold",style:{backgroundColor:"color-mix(in srgb, var(--tpl-inverse, #1c1917) 78%, transparent)",color:"var(--tpl-bg, #fff)"},children:[mr(fa(x))??x.distanceText,n.jsx("span",{className:"ml-1 font-normal opacity-100",children:x.distanceText})]})]}),n.jsxs("span",{className:"flex flex-1 flex-col gap-0.5 p-3",children:[n.jsx("span",{className:"text-[length:var(--fs-sm)] font-bold",children:x.name}),x.location&&n.jsx("span",{className:"text-muted text-[length:var(--fs-xs)] break-words",children:x.location}),x.description&&n.jsx("span",{className:"text-muted line-clamp-2 text-[length:var(--fs-xs)] leading-relaxed",children:x.description}),n.jsxs("span",{className:"text-muted mt-auto flex items-center gap-0.5 pt-1 text-[length:var(--fs-xs)] opacity-100 transition-opacity group-hover:opacity-100",children:[n.jsx("span",{children:"자세히 보기"}),n.jsx(Ll,{className:"size-3.5"})]})]})]})},x.name))},f.length),n.jsx(Xs,{open:d!=null,onClose:()=>m(null),label:(d==null?void 0:d.name)??"장소",title:d==null?void 0:d.name,children:d&&n.jsxs("div",{className:"flex flex-col gap-4",children:[d.imageUrl&&n.jsx("img",{src:d.imageUrl,alt:`${d.name} 사진`,className:"aspect-[16/10] w-full rounded-lg object-cover"}),(Number.isFinite(fa(d))||d.distanceText)&&n.jsxs("p",{className:"text-[length:var(--fs-sm)] font-semibold opacity-100",children:[mr(fa(d))??d.distanceText,d.distanceText&&n.jsx("span",{className:"ml-1 font-normal opacity-70",children:d.distanceText})]}),d.location&&n.jsx("p",{className:"text-muted text-[length:var(--fs-sm)]",children:d.location}),d.description&&n.jsx("p",{className:"text-[length:var(--fs-sm)] leading-relaxed opacity-100",children:d.description}),n.jsxs("a",{href:Ih(d.searchQuery),target:"_blank",rel:"noopener noreferrer nofollow",className:"tap flex items-center justify-center gap-1.5 rounded-lg px-4 text-[length:var(--fs-sm)] font-bold",style:{backgroundColor:"var(--color-brand)",color:"var(--tpl-bg, #fff)"},children:[n.jsx("span",{children:"검색으로 열기"}),n.jsx(Ll,{className:"size-4"})]})]})}),n.jsx("ul",{hidden:!0,children:o.filter(x=>!u(x)).map(x=>n.jsxs("li",{children:[n.jsx("a",{href:Ih(x.searchQuery),rel:"nofollow",children:x.name}),x.distanceText&&n.jsxs("span",{children:[" ",x.distanceText,mr(fa(x))&&` · ${mr(fa(x))}`]}),x.description&&n.jsx("p",{children:x.description}),x.location&&n.jsx("p",{children:x.location})]},x.name))}),f.length===0&&n.jsx("p",{className:"text-muted text-[length:var(--fs-sm)]",children:"이 거리 안에는 없습니다."})]})}function x1(s){return s===0?"맑음":s>=1&&s<=2?"구름많음":s===3?"흐림":s===45||s===48?"안개":s>=51&&s<=57?"이슬비":s>=61&&s<=67?"비":s>=71&&s<=77||s===85||s===86?"눈":s>=80&&s<=82?"소나기":s>=95&&s<=99?"뇌우":"흐림"}function g1({initial:s,regionCode:r,latitude:o,longitude:u}){const[f,d]=O.useState(s);return O.useEffect(()=>{if(!r||o==null||u==null)return;const m=new AbortController;async function x(){var p;try{const y=new URLSearchParams({region_code:r,latitude:String(o),longitude:String(u)}),v=await fetch(`/v1/local/weather?${y}`,{signal:m.signal});if(!v.ok)return;const N=await v.json();if(!((p=N==null?void 0:N.result)!=null&&p.success)||!N.weather)return;d(w=>({temperature:Number(N.weather.temperature),condition:x1(Number(N.weather.weather_code)),note:w==null?void 0:w.note,observedAt:N.weather.observed_at,stale:!!N.stale}))}catch{}}x();const g=window.setInterval(()=>void x(),600*1e3);return()=>{m.abort(),window.clearInterval(g)}},[o,u,r]),f}function pp(s){let r=[],o=-1;return()=>{r.length||(r=s.map((m,x)=>x));const u=r.filter(m=>m!==o),f=u.length?u:r,d=f[Math.floor(Math.random()*f.length)];return r=r.filter(m=>m!==d),o=d,s[d]}}function b1(s,r,o,u){const[f,d]=O.useState({});return O.useEffect(()=>{if(!(s!=null&&s.length)&&!(o!=null&&o.length))return;const m=s!=null&&s.length?pp(s):void 0,x=o!=null&&o.length?pp(o):void 0,g=()=>d({sky:m==null?void 0:m(),temp:x==null?void 0:x()}),p=window.setTimeout(g,0),y=window.setInterval(g,2e4);return()=>{window.clearTimeout(p),window.clearInterval(y)}},[s,o]),[f.sky??(s==null?void 0:s[0])??r,f.temp??(o==null?void 0:o[0])??u]}const v1={맑음:z0,흐림:n0,비:e0,눈:l0};function y1(s){const r=/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2})/.exec(s??"");if(!r)return;const[,,o,u,f,d]=r;return`${Number(o)}월 ${Number(u)}일 ${f}:${d} 관측`}function j1(){var v,N,w,j,A;const s=P(),r=g1({initial:s.local.weather,regionCode:s.place.regionCode,latitude:s.place.latitude,longitude:s.place.longitude}),o=ov((r==null?void 0:r.condition)??""),u=uv((r==null?void 0:r.temperature)??0),f=s.local.weather,d=(r==null?void 0:r.condition)??"",m=(v=f==null?void 0:f.noteSets)!=null&&v[d]?d:o,[x,g]=b1((N=f==null?void 0:f.noteSets)==null?void 0:N[m],((w=f==null?void 0:f.notes)==null?void 0:w[o])??(r==null?void 0:r.note),(j=f==null?void 0:f.tempNoteSets)==null?void 0:j[u],(A=f==null?void 0:f.tempNotes)==null?void 0:A[u]);if(!r)return null;const p=y1(r.observedAt),y=v1[o];return n.jsx(rt,{id:"weather",tone:"alt",title:"오늘의 날씨",children:n.jsxs(Mu,{className:"relative min-h-64 overflow-hidden",children:[n.jsx(y,{"aria-hidden":!0,strokeWidth:1,className:"pointer-events-none absolute -bottom-10 -right-10 size-64 opacity-[0.08]"}),n.jsxs("div",{className:"relative flex flex-col gap-5 p-6 sm:p-8",children:[n.jsxs("div",{className:"flex flex-wrap items-baseline gap-x-4 gap-y-1",children:[n.jsxs("p",{className:"flex items-baseline gap-2.5",children:[n.jsx("span",{className:"serif tabular-nums leading-none",style:{fontSize:"var(--fs-display)"},children:Math.round(r.temperature)}),n.jsx("span",{className:"text-[length:var(--fs-lead)] opacity-100",children:"°C"}),n.jsx("span",{className:"text-[length:var(--fs-lead)] font-semibold",children:r.condition})]}),p&&n.jsxs("span",{className:"text-muted text-[length:var(--fs-xs)] tabular-nums",children:[p,r.stale&&" · 최근 관측값"]})]}),x&&n.jsx("p",{className:"w4-note-fade measure serif text-[length:var(--fs-lead)] leading-loose opacity-100",children:x},x),g&&n.jsxs("p",{className:"w4-note-fade measure flex items-start gap-2.5 text-[length:var(--fs-sm)] leading-relaxed opacity-100",children:[n.jsx("span",{className:"border-line mt-0.5 shrink-0 rounded-full border px-2 py-0.5 text-[length:var(--fs-xs)] font-bold","aria-hidden":!0,children:u}),n.jsx("span",{children:g})]},g)]})]})})}function N1(){const s=P(),r=bu(s),o=s.theme.sections.find(g=>g.id==="photos"),u=(o==null?void 0:o.variantId)??"photos.grid",[f,d]=O.useState(null),m=O.useCallback(()=>d(null),[]),x=O.useCallback(g=>d(p=>p===null?null:(p+g+r.length)%r.length),[r.length]);return O.useEffect(()=>{if(f===null)return;const g=y=>{y.key==="Escape"&&m(),y.key==="ArrowLeft"&&x(-1),y.key==="ArrowRight"&&x(1)},p=document.body.style.overflow;return document.body.style.overflow="hidden",window.addEventListener("keydown",g),()=>{document.body.style.overflow=p,window.removeEventListener("keydown",g)}},[f,m,x]),r.length===0?null:n.jsxs(rt,{id:"gallery",title:(o==null?void 0:o.name)||"공간 갤러리",children:[u==="photos.carousel"?n.jsx(kn,{label:"공간 갤러리",align:"center",gap:0,arrows:"overlay",children:r.map((g,p)=>n.jsx(Nr,{basis:"basis-full",children:n.jsx(Fo,{image:g,onOpen:()=>d(p),className:"aspect-4/3 rounded-lg"})},g.mediaId))}):u==="photos.masonry"?n.jsx("ul",{className:"columns-2 gap-3 sm:columns-3 lg:columns-4 [&>li]:mb-3",children:r.map((g,p)=>n.jsx("li",{className:"break-inside-avoid",children:n.jsx(Fo,{image:g,onOpen:()=>d(p),className:"rounded-lg",free:!0})},g.mediaId))}):n.jsx("ul",{className:"grid grid-cols-2 gap-3 sm:grid-cols-3 lg:grid-cols-4",children:r.map((g,p)=>n.jsx("li",{children:n.jsx(Fo,{image:g,onOpen:()=>d(p),className:"aspect-square rounded-lg"})},g.mediaId))}),f!==null&&n.jsxs("div",{role:"dialog","aria-modal":"true","aria-label":"사진 크게 보기",className:"fixed inset-0 z-50 flex items-center justify-center bg-black/92 p-4 backdrop-blur-md",onClick:m,children:[n.jsx("button",{type:"button",onClick:m,"aria-label":"닫기",className:"tap absolute right-3 top-3 z-10 flex items-center justify-center rounded-full bg-white/10 text-white transition-colors hover:bg-white/25 sm:right-5 sm:top-5",children:n.jsx(br,{className:"size-6"})}),n.jsx(xp,{dir:"prev",onClick:()=>x(-1)}),n.jsx(xp,{dir:"next",onClick:()=>x(1)}),n.jsxs("figure",{className:"flex max-h-[85vh] w-full max-w-5xl flex-col items-center gap-3",onClick:g=>g.stopPropagation(),children:[n.jsx("img",{src:r[f].url,alt:r[f].alt,className:"max-h-[72vh] w-auto max-w-full rounded-lg object-contain"}),n.jsxs("figcaption",{className:"text-center text-[length:var(--fs-xs)] text-white/70",children:[r[f].caption??r[f].alt,n.jsxs("span",{className:"ml-2 tabular-nums",children:[f+1," / ",r.length]})]})]})]})]})}function xp({dir:s,onClick:r}){const o=s==="prev"?zn:Ra;return n.jsx("button",{type:"button",onClick:u=>{u.stopPropagation(),r()},"aria-label":s==="prev"?"이전 사진":"다음 사진",className:`tap absolute top-1/2 z-10 flex -translate-y-1/2 items-center justify-center rounded-full bg-white/10 text-white transition-colors hover:bg-white/25 ${s==="prev"?"left-2 sm:left-6":"right-2 sm:right-6"}`,children:n.jsx(o,{className:"size-6"})})}function Fo({image:s,onOpen:r,className:o,free:u=!1}){return n.jsx("button",{type:"button",onClick:r,className:`border-line tpl-border group relative block w-full cursor-pointer overflow-hidden border ${o}`,"aria-label":`${s.alt} 크게 보기`,children:n.jsx("img",{src:s.url,alt:s.alt,loading:"lazy",decoding:"async",width:s.width,height:s.height,className:u?"h-auto w-full":"size-full object-cover transition-transform duration-500 group-hover:scale-105"})})}function gp(){const s=P(),{place:r,routes:o}=s,[u,f]=O.useState(!1),d=r.roadAddress??r.address;if(!d)return null;const{latitude:m,longitude:x}=r,g=m!=null&&x!=null,p=Iv(r.name,m,x),y=async()=>{try{await navigator.clipboard.writeText(d),f(!0),setTimeout(()=>f(!1),2e3)}catch{}};return n.jsxs(rt,{id:"location",title:"오시는 길",lead:"주소와 주요 거점까지의 이동 시간을 안내합니다.",children:[n.jsxs("div",{className:"grid gap-6 lg:grid-cols-12 lg:gap-8",children:[g&&n.jsx("div",{className:"border-line tpl-border overflow-hidden rounded-xl border lg:col-span-7",children:n.jsx("iframe",{title:`${r.name} 위치 지도`,src:Wv(m,x),loading:"lazy",referrerPolicy:"no-referrer-when-downgrade",className:"block aspect-4/3 w-full border-0 sm:aspect-video lg:aspect-auto lg:h-full lg:min-h-[24rem]"})}),n.jsx("div",{className:g?"lg:col-span-5":"lg:col-span-12",children:n.jsxs("div",{className:"panel p-5 sm:p-6",children:[n.jsx("p",{className:"label mb-2",children:"주소"}),n.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[n.jsx("address",{className:"text-[length:var(--fs-lead)] font-bold not-italic",children:d}),n.jsxs("button",{type:"button",onClick:y,title:"주소 복사",className:"border-line tpl-border inline-flex items-center gap-1 rounded-md border bg-current/8 px-2.5 py-1.5 text-[length:var(--fs-xs)] font-medium transition-opacity hover:opacity-100",children:[u?n.jsx(uu,{className:"size-3.5"}):n.jsx(i0,{className:"size-3.5"}),n.jsx("span",{children:u?"복사완료":"복사"})]})]}),r.phone&&n.jsxs("p",{className:"text-muted mt-2 text-[length:var(--fs-sm)]",children:["문의:"," ",n.jsx("a",{href:`tel:${r.phone}`,className:"underline-offset-2 hover:underline",children:r.phone})]}),n.jsxs("div",{className:"mt-5 flex flex-wrap gap-2.5",children:[n.jsxs("a",{href:Xp(r.name,m,x),target:"_blank",rel:"noopener noreferrer nofollow",className:"tap flex flex-1 basis-40 items-center justify-center gap-2 whitespace-nowrap rounded-lg bg-[#03C75A] px-4 text-[length:var(--fs-sm)] font-bold text-white transition-opacity hover:opacity-100",children:[n.jsx(Xo,{className:"size-4"}),n.jsx("span",{children:"네이버 길찾기"})]}),n.jsxs("a",{href:Jv(r.name,m,x),target:"_blank",rel:"noopener noreferrer nofollow",className:"tap flex flex-1 basis-40 items-center justify-center gap-2 whitespace-nowrap rounded-lg bg-[#FEE500] px-4 text-[length:var(--fs-sm)] font-bold text-[#191600] transition-opacity hover:opacity-100",children:[n.jsx(Xo,{className:"size-4"}),n.jsx("span",{children:"카카오 길찾기"})]}),p&&n.jsxs("a",{href:p,className:"tap only-touch flex-1 basis-40 items-center justify-center gap-2 whitespace-nowrap rounded-lg bg-[#0064FF] px-4 text-[length:var(--fs-sm)] font-bold text-white transition-opacity hover:opacity-100",children:[n.jsx(Xo,{className:"size-4"}),n.jsx("span",{children:"티맵 길찾기"})]})]})]})})]}),o.length>0&&n.jsxs("div",{className:"mt-8",children:[n.jsxs("h3",{className:"mb-3 flex items-center gap-2 text-[length:var(--fs-sm)] font-bold",children:[n.jsx(Vb,{className:"size-4 opacity-100"}),n.jsx("span",{children:"주요 거점 소요시간"})]}),n.jsx("div",{className:"panel overflow-hidden",children:n.jsx("div",{className:"slider-viewport",children:n.jsxs("table",{className:"w-full min-w-[34rem] text-left text-[length:var(--fs-sm)]",children:[n.jsxs("caption",{className:"sr-only",children:[s.place.name,"에서 주요 거점까지의 이동 시간"]}),n.jsx("thead",{className:"panel-sunken border-line border-b font-semibold",children:n.jsxs("tr",{children:[n.jsx("th",{scope:"col",className:"p-4",children:"목적지"}),n.jsx("th",{scope:"col",className:"p-4",children:"차량"}),n.jsx("th",{scope:"col",className:"p-4",children:"도보 / 대중교통"}),n.jsx("th",{scope:"col",className:"p-4",children:"거리"}),n.jsx("th",{scope:"col",className:"hidden p-4 md:table-cell",children:"비고"})]})}),n.jsx("tbody",{className:"divide-line divide-y",children:o.map(v=>n.jsxs("tr",{children:[n.jsx("th",{scope:"row",className:"p-4 text-left font-bold",children:v.destination}),n.jsx("td",{className:"p-4 font-semibold",children:v.byCar??"—"}),n.jsx("td",{className:"p-4 opacity-100",children:v.byTransit??"—"}),n.jsx("td",{className:"text-muted p-4 tabular-nums",children:v.distanceText??"—"}),n.jsx("td",{className:"text-muted hidden p-4 md:table-cell",children:v.note??""})]},v.destination))})]})})})]})]})}function S1(){const s=P(),r=fv(s);if(r.length===0)return null;const o=r.some(u=>u.sourceType===B0.TEMPLATE);return n.jsx(rt,{id:"faq",tone:"alt",title:"자주 묻는 질문",lead:o?void 0:"아래 답변은 모두 사업자가 확인한 내용입니다.",children:n.jsx("div",{className:r.length>4?"grid gap-3 lg:grid-cols-2 lg:gap-4":"space-y-3",children:n.jsx(Wp,{initial:6,label:u=>`질문 ${u}개 더 보기`,children:r.map(u=>n.jsxs("details",{className:"panel group h-fit overflow-hidden",children:[n.jsxs("summary",{className:"tap flex cursor-pointer items-center gap-3 px-5 text-[length:var(--fs-sm)] font-bold marker:content-none [&::-webkit-details-marker]:hidden",children:[n.jsx("span",{className:"serif text-muted shrink-0",children:"Q."}),n.jsx("span",{className:"flex-1",children:u.question}),n.jsx("span",{className:"text-muted shrink-0 transition-transform group-open:rotate-45",children:"+"})]}),n.jsx("div",{className:"border-line border-t px-5 pb-5 pt-4 text-[length:var(--fs-sm)] leading-relaxed opacity-100",children:u.answer})]},u.faqId))})})})}function Pp(){var d,m,x,g;const s=P(),{place:r,site:o}=s,u=pu(s),f=r.roadAddress??r.address;return n.jsx("footer",{className:"w-full pb-28 pt-14 md:pb-14",style:{backgroundColor:"var(--tpl-inverse, #1c1917)",color:"var(--tpl-bg, #ffffff)"},children:n.jsxs("div",{className:"shell",children:[n.jsxs("div",{className:"grid grid-cols-1 gap-8 border-b border-current/15 pb-10 md:grid-cols-12",children:[n.jsxs("div",{className:"space-y-4 md:col-span-7",children:[n.jsx("p",{className:"serif text-[length:var(--fs-lead)] font-bold",children:r.name}),n.jsxs("div",{className:"space-y-2 text-[length:var(--fs-sm)] opacity-100",children:[f&&n.jsxs("p",{className:"flex items-start gap-2",children:[n.jsx(gr,{className:"mt-1 size-4 shrink-0 opacity-100"}),n.jsx("span",{children:f})]}),r.phone&&n.jsxs("p",{className:"flex items-center gap-2",children:[n.jsx(jt,{className:"size-4 shrink-0 opacity-100"}),n.jsx("a",{href:`tel:${r.phone}`,className:"underline-offset-2 hover:underline",children:r.phone})]}),r.email&&n.jsxs("p",{className:"flex items-center gap-2",children:[n.jsx(Mp,{className:"size-4 shrink-0 opacity-100"}),n.jsx("a",{href:`mailto:${r.email}`,className:"underline-offset-2 hover:underline",children:r.email})]})]})]}),u&&n.jsxs("nav",{"aria-label":"공식 채널",className:"md:col-span-5",children:[n.jsx("h2",{className:"label mb-3 !text-current opacity-100",children:"공식 채널"}),n.jsx("ul",{className:"flex flex-wrap gap-2",children:n.jsx("li",{children:n.jsxs("a",{href:u.url,target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-1.5 rounded-lg border border-current/25 px-3 py-2 text-[length:var(--fs-xs)] font-medium transition-colors hover:bg-current/10",children:[n.jsx("span",{children:pl(u)}),n.jsx(c0,{className:"size-3.5"})]})})})]})]}),n.jsxs("div",{className:"flex flex-col gap-3 pt-6 text-[length:var(--fs-xs)] opacity-100 sm:flex-row sm:items-center sm:justify-between",children:[n.jsxs("div",{className:"flex flex-wrap items-center gap-x-3 gap-y-1",children:[n.jsxs("span",{children:["상호: ",r.name]}),((d=r.legal)==null?void 0:d.representative)&&n.jsxs("span",{children:["대표: ",r.legal.representative]}),((m=r.legal)==null?void 0:m.businessRegistrationNumber)&&n.jsxs("span",{children:["사업자등록번호: ",r.legal.businessRegistrationNumber]}),((x=r.legal)==null?void 0:x.mailOrderNumber)&&n.jsxs("span",{children:["통신판매업신고: ",r.legal.mailOrderNumber]}),((g=r.legal)==null?void 0:g.licenseNumber)&&n.jsxs("span",{children:[r.legal.licenseLabel??"인허가번호",": ",r.legal.licenseNumber]})]}),n.jsxs("p",{className:"byline shrink-0",children:[n.jsxs("span",{className:"author",children:["작성·운영 ",r.name]})," · 최종 업데이트: ",n.jsx("time",{dateTime:o.updatedAt,children:Vs(o.updatedAt)})]})]}),n.jsxs("p",{className:"pt-3 text-[length:var(--fs-xs)] opacity-100",children:[n.jsx("a",{href:"https://www.o2osolution.ai/",target:"_blank",rel:"noopener noreferrer",className:"underline-offset-2 hover:underline",children:"AI O2O"}),"의 Web4Ai로 만든 사이트입니다."]})]})})}function Mn(){const s=P(),r=s.place.phone,u=Ke(s)[0],f=s.links.find(d=>d.confirmed&&/kakao/i.test(d.url));return!r&&!u&&!f?null:n.jsxs("nav",{"aria-label":"연락 · 예약",className:"border-line safe-b fixed inset-x-0 bottom-0 z-50 flex items-stretch gap-2 border-t px-3 pt-2 backdrop-blur-md lg:hidden",style:{backgroundColor:"color-mix(in srgb, var(--tpl-surface, #fff) 94%, transparent)"},children:[n.jsxs("a",{href:"#location",className:"tap border-line flex w-12 shrink-0 flex-col items-center justify-center rounded-lg border text-[length:var(--fs-xs)] leading-none font-medium","aria-label":"오시는 길",children:[n.jsx(gr,{className:"size-4"}),n.jsx("span",{className:"mt-0.5",children:"위치"})]}),f&&n.jsxs("a",{href:f.url,target:"_blank",rel:"noopener noreferrer",className:"tap border-line flex w-12 shrink-0 flex-col items-center justify-center rounded-lg border text-[length:var(--fs-xs)] leading-none font-medium","aria-label":pl(f),children:[n.jsx(du,{className:"size-4"}),n.jsx("span",{className:"mt-0.5",children:"문의"})]}),r&&n.jsxs("a",{href:`tel:${r}`,className:"tap border-line flex flex-1 items-center justify-center gap-1.5 rounded-lg border text-[length:var(--fs-sm)] font-bold",children:[n.jsx(jt,{className:"size-4"}),n.jsx("span",{children:"전화"})]}),u&&n.jsx("a",{href:u.url,target:"_blank",rel:"noopener noreferrer",className:"tap flex min-w-0 flex-[1.4] items-center justify-center truncate rounded-lg px-2 text-[length:var(--fs-sm)] font-bold",style:{backgroundColor:"var(--color-brand)",color:"var(--tpl-bg, #fff)"},children:gt(u)})]})}const Ft="var(--tpl-card, #fafafa)",Se="var(--tpl-border, #d6d3d1)",Ze="color-mix(in oklab, var(--tpl-accent, #2563eb) 55%, currentColor)",Ls="var(--tpl-inverse, #1c1917)",ma="var(--tpl-bg, #ffffff)",dl="var(--tpl-text, #09090b)";function w1({n:s}){return n.jsx("span",{className:"mr-1.5 inline-grid size-[22px] shrink-0 place-items-center rounded-full text-[length:var(--fs-xs)] leading-none tabular-nums",style:{backgroundColor:Ze,color:ma},children:s})}function xl({id:s,name:r,subtitle:o,count:u,link:f,children:d,dark:m}){const x=yr(),g=x==="reservation"?Su:x==="oasi"?wu:x==="studio"?Eu:x==="pastel"?zu:x==="editorial"?yu:null,p=f?n.jsxs("a",{href:f.url,target:"_blank",rel:"noopener noreferrer",className:"text-[length:var(--fs-sm)] font-semibold underline-offset-4 opacity-100 transition-opacity hover:opacity-100 hover:underline",children:[f.label," →"]}):void 0;return n.jsx("section",{id:s,"aria-labelledby":`${s}-heading`,className:"border-line paper w-full border-b",style:{backgroundColor:m?Ls:"var(--tpl-surface, #fafafa)",color:m?ma:dl,paddingBlock:"var(--section-space)"},children:n.jsxs("div",{className:"shell",children:[g?n.jsx(g,{id:s,title:r,lead:o,aside:p}):n.jsxs("header",{className:"mb-8 sm:mb-10",children:[n.jsxs("div",{className:"flex flex-wrap items-baseline justify-between gap-x-4 gap-y-2",children:[n.jsx("h2",{id:`${s}-heading`,className:"h2",children:r}),p]}),o&&n.jsx("p",{className:"measure mt-3 text-[length:var(--fs-sm)] opacity-100",children:o})]}),d,u&&n.jsx("p",{className:"mt-6 text-[length:var(--fs-xs)] opacity-100",children:u})]})})}function On({children:s,label:r,arrows:o="header",onSelect:u,onReady:f}){return n.jsx(kn,{label:r,gap:1,arrows:o,onSelect:u,onReady:f,children:s})}function ml({source:s,verified:r,imageCredit:o}){return!(s!=null&&s.name)&&!o?null:n.jsxs("p",{className:"flex flex-wrap items-center gap-x-2 gap-y-1 text-[length:var(--fs-xs)] opacity-100",children:[(s==null?void 0:s.name)&&n.jsxs("span",{children:["출처 ·"," ",s.url?n.jsx("a",{href:s.url,target:"_blank",rel:"noopener noreferrer nofollow",className:"underline underline-offset-2",children:s.name}):s.name]}),o&&n.jsxs("span",{children:["사진 · ",o]})]})}function Qs(s,r,o){return`총 ${s}${o}`}const bp=["#d4551f","#1d3c74","#2a6053","#7a3b52","#a34a2a","#334b6d","#4f6b3a","#6b2f3a","#2b6b7a","#8a4b2a","#4a3f6b","#3a5a4a","#b5603a","#356b8a","#6b4a2a","#2f5b6b","#a3562a","#4a4a6b","#c8873a","#2f6b4f","#7a4a6b","#5a5a4a","#3f5f6b"];function vp(s){if(s.labelColor)return s.labelColor;const r=s.title??"";let o=0;for(let u=0;u>>0;return bp[o%bp.length]}function ex(){const s=P(),r=Wt(s,"songs"),u=new Set(r.items.map(g=>{var p,y;return`${((p=g.source)==null?void 0:p.name)??""}|${((y=g.source)==null?void 0:y.url)??""}`})).size===1&&r.items.length>1,[f,d]=O.useState(0);if(r.items.length===0)return null;const m=r.items[f]??r.items[0],x=g=>[g.artist,g.year?String(g.year):void 0,g.lyricist||g.composer?`작사 ${g.lyricist??"미상"} / 작곡 ${g.composer??"미상"}`:void 0,g.label].filter(Boolean).join(" · ");return n.jsxs(xl,{id:"songs",name:r.title||$e(s,"songs","가요 다방"),subtitle:r.subtitle,count:Qs(r.items.length,r.unverified,"곡"),children:[n.jsxs("div",{className:"tpl-border grid items-center gap-8 border p-6 sm:p-8 md:grid-cols-[240px_minmax(0,1fr)]",style:{backgroundColor:Ls,color:ma,borderColor:"color-mix(in oklab, currentColor 22%, transparent)"},children:[n.jsxs("div",{className:"relative mx-auto size-[220px]",children:[n.jsx("div",{className:"absolute inset-0 rounded-full",style:{backgroundColor:"color-mix(in oklab, currentColor 16%, transparent)"}}),n.jsx("div",{className:"w4-disc w4-spin absolute inset-2 rounded-full",style:{"--lbl":vp(m),"--w4-vinyl":Ls},children:n.jsx("span",{className:"absolute left-1/2 top-1/2 size-2.5 -translate-x-1/2 -translate-y-1/2 rounded-full",style:{backgroundColor:"color-mix(in oklab, currentColor 30%, transparent)"}})}),n.jsxs("div",{"aria-hidden":!0,className:"absolute -right-1 top-3 h-2 w-[110px] origin-right rotate-6",children:[n.jsx("span",{className:"absolute inset-y-[3px] left-0 right-4 rounded-sm",style:{backgroundColor:"color-mix(in oklab, currentColor 65%, transparent)"}}),n.jsx("span",{className:"absolute -top-2 right-0 size-6 rounded-full",style:{backgroundColor:"color-mix(in oklab, currentColor 55%, transparent)"}})]})]}),n.jsx("div",{className:"min-w-0",children:r.items.map((g,p)=>n.jsxs("div",{hidden:p!==f,className:"space-y-3",children:[n.jsxs("p",{className:"text-[length:var(--fs-xs)] tracking-[0.24em]",style:{color:Ze},children:["A면 · ",p+1," / ",r.items.length]}),n.jsx("h3",{className:"serif text-[length:var(--fs-h2)] leading-tight",children:g.title}),n.jsx("p",{className:"text-[length:var(--fs-xs)] opacity-100",children:x(g)}),g.story&&n.jsx("p",{className:"measure text-[length:var(--fs-sm)] leading-relaxed opacity-100",children:g.story}),g.connection&&n.jsx("p",{className:"measure text-[length:var(--fs-sm)] leading-relaxed",style:{color:Ze},children:g.connection}),n.jsxs("a",{href:Kv(`${g.title} ${g.artist??""}`.trim()),target:"_blank",rel:"noopener noreferrer nofollow",className:"inline-flex items-center gap-1.5 text-[length:var(--fs-sm)] font-bold underline-offset-4 hover:underline",style:{color:Ze},children:[n.jsx(k0,{className:"size-4"}),n.jsx("span",{children:"유튜브에서 듣기"})]}),!u&&n.jsx(ml,{source:g.source,verified:g.verified})]},`disc-${g.title}-${p}`))})]}),r.items.length>1&&n.jsx("div",{className:"mt-4 flex flex-wrap justify-center gap-4",children:r.items.map((g,p)=>n.jsxs("button",{type:"button",onClick:()=>d(p),"aria-pressed":p===f,className:"w-24 text-center",children:[n.jsx("span",{className:"w4-disc-mini mx-auto block size-[76px] rounded-full transition-transform hover:scale-105",style:{"--lbl":vp(g),"--w4-vinyl":Ls,boxShadow:p===f?`0 0 0 2px ${Ze}`:void 0}}),n.jsx("span",{className:"mt-2 block truncate text-[length:var(--fs-xs)] leading-tight opacity-100",children:g.title})]},`${g.title}-${p}`))}),n.jsxs("div",{className:"mt-6 flex flex-col items-center gap-2 text-center",children:[n.jsx("span",{className:"block w-fit border border-dashed px-2 py-1 text-[length:var(--fs-xs)] tracking-[0.1em]",style:{borderColor:"color-mix(in oklab, currentColor 35%, transparent)"},children:"◎ 가사 대신 이야기 — 원문은 싣지 않습니다"}),u&&r.items[0]&&n.jsx(ml,{source:r.items[0].source,verified:r.items[0].verified})]})]})}function E1(){const s=P(),r=Wt(s,"daily"),[o,u]=O.useState();if(O.useEffect(()=>{const g=new Date;u(`${String(g.getMonth()+1).padStart(2,"0")}-${String(g.getDate()).padStart(2,"0")}`)},[]),r.items.length===0)return null;const f=[...r.items].sort((g,p)=>g.monthDay.localeCompare(p.monthDay)),d=o===void 0?1:Math.max(0,(()=>{const g=f.findIndex(y=>y.monthDay===o);if(g>=0)return g;const p=f.findIndex(y=>y.monthDay>o);return p>=0?p:0})()),m=g=>f[(d+g+f.length)%f.length],x=f.length===1?[m(0)]:f.length===2?[m(0),m(1)]:[m(-1),m(0),m(1)];return n.jsx(xl,{id:"daily",name:r.title||$e(s,"daily","오늘의 한 장"),subtitle:r.subtitle,count:Qs(f.length,r.unverified,"장"),children:n.jsx("div",{className:"flex items-start justify-center gap-4 sm:gap-6",children:f.map((g,p)=>{const y=x.indexOf(g);return n.jsx(z1,{page:g,hidden:y<0,isToday:x.length===1||y===1,muted:x.length>1&&y!==1},`${g.monthDay}-${p}`)})})})}function z1({page:s,isToday:r,muted:o,hidden:u}){const[f,d]=s.monthDay.split("-");return n.jsxs("article",{hidden:u,className:`w4-paper shrink-0 border transition-opacity ${o?"hidden w-[168px] opacity-100 sm:block":"w-[254px] max-w-full"}`,style:{backgroundColor:Ft,borderColor:r?Ze:Se,boxShadow:r?"5px 6px 0 color-mix(in oklab, currentColor 14%, transparent)":void 0},"aria-current":r?"date":void 0,children:[n.jsx("div",{className:"w4-perf h-3.5 border-b border-dashed",style:{"--tear":Ft,borderColor:Se}}),n.jsxs("div",{className:"border-b px-5 pb-3 pt-5 text-center",style:{borderColor:Se},children:[n.jsxs("p",{className:"text-[length:var(--fs-xs)] tracking-[0.2em] opacity-100",children:[f,"月"]}),n.jsx("p",{className:`serif mt-1 font-bold leading-none ${o?"text-4xl":"text-6xl"}`,style:{color:Ze},children:String(Number(d)||d)}),r&&n.jsx("p",{className:"mt-1.5 text-[length:var(--fs-xs)] tracking-[0.3em]",style:{color:Ze},children:"오늘"})]}),n.jsxs("div",{className:"space-y-2 px-5 pb-5 pt-4",children:[s.category&&n.jsx("p",{className:"text-[length:var(--fs-xs)] tracking-[0.16em] opacity-100",children:s.category}),n.jsx("h3",{className:"serif text-base font-bold leading-snug",children:s.title}),!o&&s.body&&n.jsx("p",{className:"text-[length:var(--fs-sm)] leading-relaxed opacity-100",children:s.body}),!o&&n.jsx("div",{className:"border-t border-dashed pt-2.5",style:{borderColor:Se},children:n.jsx(ml,{source:s.source,verified:s.verified})})]})]})}function tx(){const s=P(),r=Wt(s,"people");return r.items.length===0?null:n.jsx(xl,{id:"people",name:r.title||$e(s,"people","인물 열전"),subtitle:r.subtitle,count:r.items.some(o=>!o.imageUrl)?`${Qs(r.items.length,r.unverified,"명")} · 사진이 없는 인물은 이름 활자로 대신합니다`:Qs(r.items.length,r.unverified,"명"),dark:!0,children:n.jsxs("div",{className:"tpl-border border",style:{backgroundColor:Ls,borderColor:"color-mix(in oklab, currentColor 22%, transparent)"},children:[n.jsx("div",{className:"w4-film-perf h-2.5 opacity-100"}),n.jsx("div",{className:"px-3 py-4",children:n.jsx(On,{label:"인물 목록",arrows:"overlay",children:r.items.map((o,u)=>n.jsxs("article",{className:"w-[210px] shrink-0 snap-center",children:[o.imageUrl?n.jsx("img",{src:o.imageUrl,alt:`${o.name} 사진`,loading:"lazy",decoding:"async",className:"aspect-3/4 w-full border object-cover",style:{borderColor:"color-mix(in oklab, currentColor 28%, transparent)"}}):n.jsx("span",{className:"serif grid aspect-3/4 w-full place-items-center border text-5xl",style:{backgroundColor:"color-mix(in oklab, currentColor 14%, transparent)",borderColor:"color-mix(in oklab, currentColor 28%, transparent)"},"aria-hidden":!0,children:o.name.trim().charAt(0)}),n.jsxs("h3",{className:"serif mt-3 text-base font-bold",children:[o.name,o.aka&&n.jsxs("span",{className:"ml-1.5 text-[length:var(--fs-xs)] opacity-100",children:["호 ",o.aka]})]}),n.jsx("p",{className:"mt-0.5 text-[length:var(--fs-xs)] opacity-100",children:[o.role,o.years].filter(Boolean).join(" · ")}),o.oneLine&&n.jsx("p",{className:"mt-2 text-[length:var(--fs-sm)] leading-relaxed opacity-100",children:o.oneLine}),n.jsx("div",{className:"mt-2",children:n.jsx(ml,{source:o.source,verified:o.verified,imageCredit:o.imageCredit})})]},`${o.name}-${u}`))})}),n.jsx("div",{className:"w4-film-perf h-2.5 opacity-100"})]})})}function lx(){const s=P(),r=Wt(s,"chronicle");if(r.items.length===0)return null;const o=[...r.items].sort((f,d)=>f.year==null?d.year==null?0:1:d.year==null?-1:f.year-d.year),u=o.filter(f=>f.turning===!0).length;return n.jsx(xl,{id:"chronicle",name:r.title||$e(s,"chronicle","시간의 골목"),subtitle:r.subtitle,count:`붉은 점은 도시의 성격이 바뀐 해입니다 · ${u}개 / 전체 ${o.length}개`,children:n.jsx(On,{label:"연표",children:o.map((f,d)=>{const m=f.turning===!0;return n.jsxs("article",{className:"w-[228px] shrink-0 snap-center",children:[n.jsx("p",{className:"serif text-3xl font-bold leading-none",style:{color:m?Ze:void 0},children:f.year??"연도 미상"}),n.jsxs("div",{className:"relative my-3 h-3",children:[n.jsx("i",{"aria-hidden":!0,className:"absolute top-1/2 left-0 border-t",style:{borderColor:Se,right:d===o.length-1?"calc(100% - 12px)":0}}),n.jsx("i",{"aria-hidden":!0,className:"absolute top-1/2 left-0 size-3 -translate-y-1/2 rounded-full border-2",style:{backgroundColor:m?Ze:Ft,borderColor:m?Ze:Se}})]}),n.jsxs("div",{className:"flex gap-2.5 pr-5",children:[f.imageUrl&&n.jsx("img",{src:f.imageUrl,alt:`${f.title} 사진`,loading:"lazy",decoding:"async",className:"size-14 shrink-0 border object-cover",style:{borderColor:Se}}),n.jsxs("div",{className:"min-w-0 flex-1 space-y-1.5",children:[n.jsx("h3",{className:"serif text-base font-bold",children:f.title}),f.summary&&n.jsx("p",{className:"text-[length:var(--fs-sm)] leading-relaxed opacity-100",children:f.summary}),f.place&&n.jsxs("p",{className:"text-[length:var(--fs-xs)] opacity-100",children:["지금 이 자리 · ",f.place]}),n.jsx(ml,{source:f.source,verified:f.verified,imageCredit:f.imageCredit})]})]})]},`${f.year??"x"}-${f.title}-${d}`)})})})}function ax(){const s=P(),r=O.useMemo(()=>Wt(s,"reading"),[s]),o=r.items;if(o.length===0)return null;const u=new Set(o.map(d=>d.group).filter(Boolean)).size>1,f=s.place.addressLocality??"지역";return n.jsx(xl,{id:"reading",name:r.title||$e(s,"reading",`${f} 읽기`),subtitle:r.subtitle,children:n.jsx(On,{label:`${f} 읽기`,children:o.map((d,m)=>n.jsx("article",{className:"w-[86%] shrink-0 grow-0 sm:w-[min(600px,56%)]",children:n.jsxs("div",{className:"h-full border p-5",style:{backgroundColor:Ft,borderColor:Se},children:[(u||d.year!=null)&&n.jsxs("p",{className:"text-[length:var(--fs-xs)] font-bold tracking-[0.18em]",style:{color:Ze},children:[u&&d.group,u&&d.year!=null&&" · ",d.year!=null&&n.jsx("span",{className:"font-normal",children:d.year})]}),n.jsx("h3",{className:"serif text-xl leading-snug font-bold",children:d.title}),n.jsx("span",{"aria-hidden":!0,className:"mt-3 mb-3 block h-px w-10",style:{backgroundColor:Ze}}),n.jsx("p",{className:"text-[length:var(--fs-body)] leading-[1.9] break-keep",children:d.body}),n.jsx("div",{className:"mt-4 border-t border-dashed pt-2.5",style:{borderColor:Se},children:n.jsx(ml,{source:d.source,verified:d.verified})})]})},`${d.title}-${m}`))})})}function nx(){const s=P(),r=Wt(s,"postcard");return r.items.length===0?null:n.jsx(xl,{id:"postcard",name:r.title||$e(s,"postcard","오늘의 엽서"),subtitle:r.subtitle,count:Qs(r.items.length,r.unverified,"장"),children:n.jsx(On,{label:"엽서 목록",children:r.items.map((o,u)=>n.jsxs("article",{className:"w4-paper w-[304px] shrink-0 snap-center border p-4",style:{backgroundColor:Ft,borderColor:dl},children:[o.imageUrl&&n.jsx("img",{src:o.imageUrl,alt:`${o.place||o.postmark||"엽서"} 사진`,loading:"lazy",decoding:"async",className:"block aspect-3/2 w-full border object-cover",style:{borderColor:Se}}),o.imageUrl&&n.jsxs("p",{className:"mt-1 mb-3.5 text-[length:var(--fs-xs)] leading-tight opacity-100",children:["사진 · ",o.imageCredit||"출처 표기 없음"]}),n.jsxs("div",{className:"grid grid-cols-[minmax(0,1fr)_auto] gap-3",children:[n.jsxs("div",{className:"min-w-0 border-r pr-3",style:{borderColor:Se},children:[n.jsxs("p",{className:"serif text-[17px] leading-snug",children:["“",o.line,"”"]}),o.hashtags&&o.hashtags.length>0&&n.jsx("p",{className:"mt-2 text-[length:var(--fs-xs)] opacity-100",children:o.hashtags.join(" ")})]}),n.jsxs("div",{className:"flex w-[62px] flex-col items-center gap-3",children:[n.jsxs("span",{className:"grid h-[56px] w-[44px] place-items-center border border-dashed text-center text-[length:var(--fs-xs)] leading-tight opacity-100",style:{borderColor:Se},children:["郵票",n.jsx("br",{}),"10원"]}),n.jsx("span",{className:"serif grid size-[54px] -rotate-6 place-items-center rounded-full border-2 px-1 text-center text-[length:var(--fs-xs)] leading-tight",style:{borderColor:Ze,color:Ze},children:o.postmark||o.place||"소인"})]})]}),n.jsx("div",{className:"mt-3 border-t border-dashed pt-2.5",style:{borderColor:Se},children:n.jsx(ml,{source:o.source,verified:o.verified})})]},`${o.line}-${u}`))})})}function T1(){const s=P(),r=Wt(s,"quiz"),[o,u]=O.useState(new Set);if(r.items.length===0)return null;const f=d=>u(m=>{const x=new Set(m);return x.has(d)?x.delete(d):x.add(d),x});return n.jsx(xl,{id:"quiz",name:r.title||$e(s,"quiz","뒤집어 보는 질문"),subtitle:r.subtitle,count:`정답은 두지 않습니다 — 힌트와 출처까지만 · 총 ${r.items.length}문항`,children:n.jsx(On,{label:"질문 목록",children:r.items.map((d,m)=>{const x=o.has(m);return n.jsx("button",{type:"button",onClick:()=>f(m),"aria-pressed":x,"aria-label":`${m+1}번 문제 ${x?"앞면 보기":"힌트 보기"}`,className:`w4-flip ${x?"w4-flip-on":""} h-[260px] w-[262px] shrink-0 text-left`,children:n.jsxs("span",{className:"w4-flip-inner block size-full",children:[n.jsxs("span",{className:"w4-flip-face w4-paper flex size-full flex-col gap-3 border p-4",style:{backgroundColor:Ft,borderColor:dl},children:[n.jsxs("span",{className:"text-[length:var(--fs-xs)] tracking-[0.16em] opacity-100",children:["문제 ",m+1,d.level?` · ${d.level}`:""]}),n.jsx("span",{className:"serif text-[17px] font-bold leading-snug",children:d.question}),n.jsx("span",{className:"mt-auto text-[length:var(--fs-xs)] tracking-[0.16em]",style:{color:Ze},children:"눌러서 힌트 보기 →"})]}),n.jsxs("span",{className:"w4-flip-face w4-flip-back w4-paper flex size-full flex-col gap-3 border p-4",style:{backgroundColor:Ft,borderColor:Ze},children:[n.jsx("span",{className:"text-[length:var(--fs-xs)] tracking-[0.16em]",style:{color:Ze},children:"힌트"}),n.jsx("span",{className:"text-[length:var(--fs-sm)] leading-relaxed opacity-100",children:d.hint??"힌트가 아직 없습니다."}),n.jsxs("span",{className:"mt-auto space-y-1 border-t border-dashed pt-2.5",style:{borderColor:Se},children:[d.topic&&n.jsx("span",{className:"block text-[length:var(--fs-xs)] opacity-100",children:d.topic}),n.jsx(ml,{source:d.source,verified:d.verified})]})]})]})},`${d.question}-${m}`)})})})}const Hl=256,Ds=318,En=168,yp=34,A1=16,jp=4;function sx(s,r,o){const u=Hl*2**o,f=s*Math.PI/180;return{x:(r+180)/360*u,y:(1-Math.log(Math.tan(f)+1/Math.cos(f))/Math.PI)/2*u}}function _1(s){if(s.length<2)return 15;for(let r=A1;r>jp;r-=1){const o=s.map(d=>sx(d.lat,d.lng,r)),u=Math.max(...o.map(d=>d.x))-Math.min(...o.map(d=>d.x)),f=Math.max(...o.map(d=>d.y))-Math.min(...o.map(d=>d.y));if(u<=Ds-yp*2&&f<=En-yp*2)return r}return jp}function C1(s,r){const o=d=>d.latitude!=null&&d.longitude!=null?{name:d.searchQuery??d.name,lat:d.latitude,lng:d.longitude}:void 0,u=[];let f=r;return s.forEach((d,m)=>{const x=o(d);x&&(u.push({label:String(m+1),...x,stop:d,from:f&&!k1(f,x)?f:void 0}),f=x)}),u}function k1(s,r){return Math.abs(s.lat-r.lat)<1e-5&&Math.abs(s.lng-r.lng)<1e-5}function M1(s){const o=s.map(u=>({...u}));for(let u=1;uMath.hypot(o[u].x-y.x,o[u].y-y.y)<27);if(!d)break;const m=o[u].x-d.x,x=o[u].y-d.y,g=Math.hypot(m,x)||1,p=(27-g)/g;o[u].x+=(m||1)*p,o[u].y+=x*p}return o}function O1(s){return s.from?Fv(s.from,{name:s.stop.name,lat:s.lat,lng:s.lng}):Xp(s.stop.searchQuery??s.stop.name,s.lat,s.lng)}function D1({stops:s}){const{place:r}=P(),o=r.latitude!=null&&r.longitude!=null?{name:r.name,lat:r.latitude,lng:r.longitude}:void 0,u=s.filter(j=>j.latitude!=null&&j.longitude!=null);if(u.length===0||u.length===1&&s.length>1)return null;const f=C1(s,o),d=_1(f),m=M1(f.map(j=>sx(j.lat,j.lng,d))),x=(Math.min(...m.map(j=>j.x))+Math.max(...m.map(j=>j.x)))/2,g=(Math.min(...m.map(j=>j.y))+Math.max(...m.map(j=>j.y)))/2,p=x-Ds/2,y=g-En/2,v=2**d,N=[];for(let j=Math.floor(p/Hl);j<=Math.floor((p+Ds)/Hl);j+=1)for(let A=Math.floor(y/Hl);A<=Math.floor((y+En)/Hl);A+=1){if(A<0||A>=v)continue;const L=(j%v+v)%v;N.push({key:`${j}-${A}`,url:`https://tile.openstreetmap.org/${d}/${L}/${A}.png`,left:j*Hl-p,top:A*Hl-y})}const w=m.map(j=>`${(j.x-p).toFixed(1)},${(j.y-y).toFixed(1)}`).join(" ");return n.jsxs("div",{className:"relative mt-3.5 overflow-hidden border-y",style:{height:En,borderColor:Se,backgroundColor:"#e8e5df"},children:[N.map(j=>n.jsx("img",{src:j.url,alt:"",width:Hl,height:Hl,loading:"lazy",decoding:"async",className:"pointer-events-none absolute max-w-none",style:{left:j.left,top:j.top,filter:"grayscale(1) contrast(0.95) opacity(0.55)"}},j.key)),n.jsx("svg",{className:"pointer-events-none absolute inset-0",width:Ds,height:En,viewBox:`0 0 ${Ds} ${En}`,children:n.jsx("polyline",{points:w,fill:"none",stroke:Ze,strokeWidth:"2",strokeDasharray:"5 4",strokeLinecap:"round",strokeLinejoin:"round",opacity:"0.85"})}),f.map((j,A)=>{const L=m[A];return n.jsx("a",{href:O1(j),target:"_blank",rel:"noopener noreferrer",title:j.from?`${j.from.name} → ${j.stop.name} 길찾기`:`${j.stop.name} — 네이버 지도`,className:"absolute grid h-[22px] min-w-[22px] -translate-x-1/2 -translate-y-1/2 place-items-center rounded-full px-1.5 text-[length:var(--fs-xs)] font-bold whitespace-nowrap shadow-sm transition-transform hover:scale-110",style:{left:L.x-p,top:L.y-y,backgroundColor:Ze,color:ma,border:`1.5px solid ${ma}`},children:j.label},j.label)}),n.jsx("span",{className:"absolute right-1 bottom-0.5 bg-white/70 px-1 text-[length:var(--fs-xs)] leading-tight text-stone-600",children:"© OpenStreetMap"})]})}function R1(s){const r=Math.floor(s/60),o=s%60;return[r>0?`${r}시간`:"",o>0?`${o}분`:""].filter(Boolean).join(" ")||"0분"}function su(s){var r;return(r=s.days)!=null&&r.length?s.days.map(o=>({label:o.label,startTime:o.startTime,stops:o.stops??[]})):[{startTime:s.startTime,stops:s.stops??[]}]}function U1({item:s,badge:r,startTime:o,stops:u,first:f,placeName:d,continuesFrom:m,continuesTo:x}){const g=P0({name:s.name,startTime:o,stops:u}),[p,y]=O.useState(!1);return O.useEffect(()=>{window.matchMedia("(min-width: 768px)").matches&&y(!0)},[]),n.jsxs("article",{className:`w4-paper w-[320px] shrink-0 snap-center border-y ${m?"-ml-4 border-l-0":"border-l"} ${x?"":"border-r"}`,style:{backgroundColor:Ft,borderColor:Se,...x?{borderRight:`2px dashed ${Se}`}:null},children:[n.jsxs("div",{className:"flex items-center justify-between gap-2 border-b px-4 py-2.5",style:{borderColor:Se},children:[n.jsx("span",{className:"border px-2 py-0.5 text-[length:var(--fs-xs)] font-bold",style:f?{backgroundColor:dl,color:ma,borderColor:dl}:{borderColor:Se},children:r}),n.jsxs("span",{className:"text-[length:var(--fs-xs)] opacity-100",children:[g.from,"–",g.to," · ",R1(g.totalMinutes)]})]}),n.jsxs("div",{className:"space-y-1.5 px-4 pt-3.5",children:[n.jsx("h3",{className:"serif text-lg font-bold",children:s.name}),f&&s.audience&&n.jsx("p",{className:"text-[length:var(--fs-sm)] opacity-100",children:s.audience}),f&&s.why&&n.jsx("p",{className:"text-[length:var(--fs-sm)] leading-relaxed opacity-100",children:s.why}),f&&n.jsxs("p",{className:"text-[length:var(--fs-xs)] opacity-100",children:[d,"에서 출발 · ",g.from]})]}),p&&n.jsx(D1,{stops:g.stops.map(v=>v.stop)}),n.jsx("ol",{className:"mt-3 px-4 pb-3",children:g.stops.map((v,N)=>n.jsxs("li",{className:"grid grid-cols-[46px_minmax(0,1fr)] gap-2.5",children:[n.jsx("span",{className:"serif pt-2 text-[length:var(--fs-sm)] tabular-nums opacity-100",children:v.time}),n.jsxs("div",{className:`border-l pl-3 ${p?"pb-5":"pb-2"}`,style:{borderColor:Se},children:[v.move>0&&n.jsxs("p",{className:"pt-1 text-[length:var(--fs-xs)] opacity-100",children:["↓ ",v.move,"분 이동"]}),n.jsxs("div",{className:"flex items-start gap-2.5 pt-1",children:[v.stop.imageUrl&&p&&n.jsx("img",{src:v.stop.imageUrl,alt:`${v.stop.name} 사진`,loading:"lazy",decoding:"async",className:"size-12 shrink-0 object-cover",style:{border:`1px solid ${Se}`}}),n.jsxs("span",{className:"min-w-0",children:[n.jsxs("span",{className:"block text-[length:var(--fs-sm)] font-bold",children:[n.jsx(w1,{n:N+1}),v.stop.name]}),v.stop.note&&n.jsx("span",{hidden:!p,className:"mt-0.5 block text-[length:var(--fs-sm)] leading-relaxed opacity-100",children:v.stop.note})]})]}),n.jsxs("p",{hidden:!p,className:"mt-0.5 text-[length:var(--fs-xs)] opacity-100",children:[v.time,"–",v.until,v.stop.searchQuery&&` · 지도 검색 ${v.stop.searchQuery}`]})]})]},`${v.stop.name}-${N}`))}),n.jsxs("div",{className:"border-t border-dashed px-4 py-2.5",style:{borderColor:Se},children:[n.jsx("button",{type:"button",onClick:()=>y(v=>!v),className:"tap w-full border text-[length:var(--fs-sm)] font-bold",style:{borderColor:Se},children:p?"접기":"지도 · 설명 보기"}),n.jsx("div",{hidden:!p,className:"pt-2.5",children:n.jsx(ml,{source:s.source,verified:s.verified})})]})]})}const Wo="그 밖의 일정";function H1(){var g;const s=P(),r=Wt(s,"itinerary"),u=(r.items.length>0?r.items:((g=s.local)==null?void 0:g.itineraries)??[]).filter(p=>su(p).some(y=>y.stops.length>0)),f=[...new Set(u.map(p=>{var y;return((y=p.duration)==null?void 0:y.trim())||Wo}))],[d,m]=O.useState(null),x=d??f[0];return u.length===0?null:n.jsxs(xl,{id:"itinerary",name:r.title||$e(s,"itinerary","추천 일정"),subtitle:r.subtitle,count:"시각은 출발 시각과 머무는 시간으로 계산한 것입니다",children:[f.length>1&&n.jsx("div",{className:"mb-6 flex flex-wrap gap-1.5",role:"tablist","aria-label":"묵는 기간",children:f.map(p=>{const y=x===p;return n.jsxs("button",{type:"button",role:"tab","aria-selected":y,onClick:()=>m(p),className:"border-line rounded-full border px-4 py-1.5 text-[length:var(--fs-sm)] font-bold transition-opacity hover:opacity-100",style:y?{backgroundColor:"var(--color-brand)",color:"var(--tpl-bg, #fff)",borderColor:"transparent"}:void 0,children:[p,n.jsx("span",{className:"ml-1.5 font-normal opacity-100",children:u.filter(v=>{var N;return(((N=v.duration)==null?void 0:N.trim())||Wo)===p}).length})]},p)})}),f.map(p=>n.jsx("div",{hidden:p!==x,children:n.jsx(L1,{tab:p,items:u.filter(y=>{var v;return(((v=y.duration)==null?void 0:v.trim())||Wo)===p}),placeName:s.place.name},x)},p))]})}function L1({tab:s,items:r,placeName:o}){const u=O.useMemo(()=>{let p=0;return r.map(y=>{const v=p;return p+=su(y).length,{item:y,start:v}})},[r]),[f,d]=O.useState(0),m=O.useRef(null),x=O.useCallback(p=>{m.current=p},[]),g=u.reduce((p,y)=>y.start<=f?y.start:p,0);return n.jsxs(n.Fragment,{children:[u.length>1&&n.jsx("ul",{className:"border-line mb-5 flex flex-wrap items-center gap-x-4 gap-y-2 border-b pb-3",children:u.map(({item:p,start:y})=>{const v=y===g;return n.jsx("li",{children:n.jsx("button",{type:"button",onClick:()=>{var N;return(N=m.current)==null?void 0:N.scrollTo(y)},"aria-current":v,className:`text-left text-[length:var(--fs-sm)] underline-offset-4 transition-opacity hover:opacity-100 ${v?"font-bold underline":"opacity-100 hover:underline"}`,children:p.name})},`${p.name}-${y}`)})}),n.jsx(On,{label:`${s} 일정`,onSelect:d,onReady:x,children:u.flatMap(({item:p,start:y})=>{const v=su(p);return v.map((N,w)=>n.jsx(U1,{item:p,badge:N.label??p.duration??`${w+1}일차`,startTime:N.startTime,stops:N.stops,first:w===0,placeName:o,continuesFrom:w>0,continuesTo:w{const y=f.current;if(!y)return;const v=y.scrollWidth-y.clientWidth;m({prev:y.scrollLeft>8,next:y.scrollLeft(x(),window.addEventListener("resize",x),()=>window.removeEventListener("resize",x)),[x]);const g=O.useCallback(y=>{const v=f.current;if(!v)return;const N=window.matchMedia("(prefers-reduced-motion: reduce)").matches;v.scrollBy({left:y*v.clientWidth*.85,behavior:N?"auto":"smooth"})},[]);if(Jp({box:f,interval:Kp,advance:()=>Ry(f.current)}),r.items.length===0)return null;const p=r.items.length>1;return n.jsx(xl,{id:"video",name:r.title||$e(s,"video","영상으로 보기"),subtitle:r.subtitle,link:r.linkUrl?{url:r.linkUrl,label:r.linkLabel??"더 보기"}:void 0,children:n.jsxs("div",{className:"relative",children:[n.jsx("ul",{ref:f,onScroll:x,className:p?"flex snap-x snap-mandatory gap-4 overflow-x-auto [touch-action:pan-y_pinch-zoom] pb-2 [scrollbar-width:none] [&::-webkit-scrollbar]:hidden":"grid grid-cols-1 gap-4 sm:max-w-md sm:mx-auto",children:r.items.map((y,v)=>{const N=X0(y.url),w=Q0(y.url),j=o===v;return n.jsx("li",{className:p?"shrink-0 basis-[46%] snap-start sm:basis-[30%] lg:basis-[200px]":"",children:n.jsxs("figure",{className:"space-y-2",children:[n.jsx("div",{className:"tpl-border relative mx-auto overflow-hidden border",style:{borderColor:Se,backgroundColor:Ft,aspectRatio:w?"9 / 16":"16 / 9",width:w?"min(100%, 14rem)":"100%"},children:j&&N?n.jsx("iframe",{src:Z0(N),title:y.caption||"영상",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",allowFullScreen:!0,className:"size-full border-0"}):n.jsxs("a",{href:y.url,target:"_blank",rel:"noopener noreferrer",onClick:A=>{N&&(A.preventDefault(),u(v))},"aria-label":`${y.caption||"영상"} 재생`,className:"group block size-full",children:[N?n.jsx("img",{src:V0(N),alt:"",loading:"lazy",decoding:"async",className:"size-full object-cover"}):n.jsx("span",{className:"text-muted grid size-full place-items-center px-4 text-center text-[length:var(--fs-xs)]",children:"유튜브 영상이 아닙니다 — 눌러서 원본으로 갑니다"}),n.jsx("span",{className:"absolute inset-0 grid place-items-center",children:n.jsx("span",{className:"grid size-14 place-items-center rounded-full backdrop-blur transition-transform group-hover:scale-110",style:{backgroundColor:"color-mix(in srgb, var(--tpl-inverse, #1c1917) 70%, transparent)",color:"var(--tpl-bg, #fff)"},children:n.jsx(y0,{className:"size-6"})})})]})}),y.caption&&n.jsx("figcaption",{className:"text-[length:var(--fs-sm)] leading-relaxed opacity-100",children:y.caption}),n.jsx(ml,{source:y.source,verified:y.verified})]})},`${y.url}-${v}`)})}),p&&n.jsxs(n.Fragment,{children:[n.jsx(Np,{dir:"prev",onClick:()=>g(-1),disabled:!d.prev}),n.jsx(Np,{dir:"next",onClick:()=>g(1),disabled:!d.next})]})]})})}function Np({dir:s,onClick:r,disabled:o}){const u=s==="prev"?zn:Ra;return n.jsx("button",{type:"button",onClick:r,disabled:o,"aria-label":s==="prev"?"이전 영상":"다음 영상",className:`tap absolute top-1/2 z-10 flex -translate-y-1/2 items-center justify-center rounded-full bg-black/55 text-white backdrop-blur transition hover:bg-black/75 disabled:pointer-events-none disabled:opacity-0 ${s==="prev"?"left-1":"right-1"}`,children:n.jsx(u,{className:"size-5"})})}const q1={1:"한",2:"두",3:"세",4:"네",5:"다섯",6:"여섯",7:"일곱"},$1=s=>[{id:"songs",label:"가요 다방",Component:ex},{id:"people",label:"인물 열전",Component:tx},{id:"chronicle",label:"시간의 골목",Component:lx},{id:"reading",label:s,Component:ax},{id:"postcard",label:"오늘의 엽서",Component:nx}];function Y1(){const s=P(),r=s.place.addressLocality??"지역",o=$e(s,"story",`${r} 이야기`),u=Wt(s,"reading").title||`${r} 읽기`,f=$1(u).filter(x=>Wt(s,x.id).items.length>0),[d,m]=O.useState(0);return f.length===0?null:n.jsxs(n.Fragment,{children:[n.jsx("section",{id:"story","aria-labelledby":"story-heading",className:"paper w-full",style:{backgroundColor:"var(--tpl-surface, #fafafa)",color:dl,paddingTop:"var(--section-space)",paddingBottom:"calc(var(--section-space) * 0.55)"},children:n.jsxs("div",{className:"shell",children:[n.jsx("h2",{id:"story-heading",className:"h2",children:o}),n.jsxs("p",{className:"measure mt-3 text-[length:var(--fs-sm)] opacity-100",children:["이 도시를 ",q1[f.length]??`${f.length}`," 갈래로 봅니다. 하나씩 골라 보세요."]}),n.jsx("div",{className:"mt-6 flex flex-wrap gap-1.5",role:"tablist","aria-label":o,children:f.map((x,g)=>{const p=g===d;return n.jsx("button",{type:"button",role:"tab","aria-selected":p,"aria-controls":x.id,onClick:()=>m(g),className:"rounded-full border px-4 py-1.5 text-[length:var(--fs-sm)] font-bold transition-opacity hover:opacity-100",style:p?{backgroundColor:dl,color:ma,borderColor:dl}:{borderColor:Se},children:x.label},x.id)})})]})}),f.map((x,g)=>n.jsx("div",{hidden:g!==d,children:n.jsx(x.Component,{})},x.id))]})}const G1={open:"진행 중",soon:"곧 시작",closed:"종료"};function Sp(s,r){return s.endDate&&s.endDater?"soon":"open"}function Io(s,r){return s.kind==="공지"&&!s.startDate&&!s.endDate?"공지":r&&G1[r]}function Po(s){const r=f=>{const d=/^(\d{4})-(\d{2})-(\d{2})$/.exec(f??"");return d?`${Number(d[2])}월 ${Number(d[3])}일`:void 0},o=r(s.startDate),u=r(s.endDate);if(o&&u)return o===u?o:`${o} – ${u}`;if(o)return`${o}부터`;if(u)return`${u}까지`}function X1(){const s=P(),r=Wt(s,"event"),[o,u]=O.useState();O.useEffect(()=>u(new Date().toLocaleDateString("sv-SE")),[]);const[f,d]=O.useState(null),m=O.useCallback(()=>d(null),[]);if(O.useEffect(()=>{if(f===null)return;const p=v=>{v.key==="Escape"&&m()},y=document.body.style.overflow;return document.body.style.overflow="hidden",window.addEventListener("keydown",p),()=>{document.body.style.overflow=y,window.removeEventListener("keydown",p)}},[f,m]),r.items.length===0)return null;const x=f===null?void 0:r.items[f],g=x&&o?Sp(x,o):void 0;return n.jsxs(xl,{id:"event",name:r.title||$e(s,"event",`${s.place.name} 소식`),subtitle:r.subtitle,link:r.linkUrl?{url:r.linkUrl,label:r.linkLabel??"더 보기"}:void 0,count:"자세한 내용과 최신 소식은 원문에서 확인해 주세요.",children:[n.jsx("ul",{className:"grid gap-5 sm:grid-cols-2 lg:grid-cols-3",children:n.jsx(Wp,{initial:2,label:p=>`소식 ${p}개 더 보기`,children:r.items.map((p,y)=>{const v=o?Sp(p,o):void 0,N=Io(p,v),w=Po(p),j=v==="closed";return n.jsxs("li",{className:"w4-paper relative flex flex-col border-2",style:{backgroundColor:Ft,borderColor:Se,opacity:j?.6:1,boxShadow:j?"none":"3px 3px 0 color-mix(in oklab, currentcolor 12%, transparent)"},children:[n.jsx("button",{type:"button",onClick:()=>d(y),"aria-label":`${p.title} 자세히 보기`,className:"absolute inset-0 z-20 cursor-pointer"}),n.jsx("div",{className:p.imageUrl?"relative overflow-hidden border-b-2":"contents",style:p.imageUrl?{borderColor:Se}:void 0,children:p.imageUrl?n.jsx("img",{src:p.imageUrl,alt:`${p.title} 안내 이미지`,loading:"lazy",decoding:"async",className:"aspect-4/3 w-full object-cover",style:j?{filter:"grayscale(1)"}:void 0}):null}),n.jsxs("div",{className:"flex flex-1 flex-col gap-2.5 p-5",children:[n.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[N&&n.jsx("span",{className:"border-2 px-2 py-0.5 text-[length:var(--fs-xs)] font-bold tracking-[0.08em]",style:{transform:"rotate(-3deg)",backgroundColor:v==="open"&&N!=="공지"?Ze:Ft,color:v==="open"&&N!=="공지"?ma:dl,borderColor:v==="open"&&N!=="공지"?Ze:Se},children:N}),w&&n.jsx("span",{className:"text-[length:var(--fs-xs)] font-semibold tabular-nums opacity-100",children:w})]}),n.jsx("h3",{className:"serif text-lg font-bold leading-snug",children:p.title}),p.summary&&n.jsx("p",{className:"line-clamp-2 text-[length:var(--fs-sm)] leading-relaxed opacity-100",children:p.summary}),p.howTo&&n.jsx("p",{className:"border-2 border-dashed px-3 py-2 text-[length:var(--fs-sm)] leading-relaxed",style:{borderColor:Se},children:p.howTo}),p.body&&n.jsx("p",{className:`whitespace-pre-line text-[length:var(--fs-sm)] leading-relaxed opacity-100 ${p.imageUrl?"line-clamp-3":"line-clamp-[9]"}`,children:p.body}),n.jsx("p",{className:"mt-auto pt-2 text-[length:var(--fs-sm)] font-bold opacity-100",children:"자세히 보기 →"})]})]},`${p.title}-${y}`)})})}),x&&n.jsx("div",{role:"dialog","aria-modal":"true","aria-label":x.title,className:"fixed inset-0 z-50 flex items-end justify-center bg-black/70 p-0 backdrop-blur-sm sm:items-center sm:p-6",onClick:m,children:n.jsxs("article",{onClick:p=>p.stopPropagation(),className:"w4-paper max-h-[88vh] w-full max-w-2xl overflow-y-auto border-2",style:{backgroundColor:Ft,borderColor:Se,color:dl},children:[x.imageUrl&&n.jsx("img",{src:x.imageUrl,alt:`${x.title} 안내 이미지`,className:"max-h-[46vh] w-full object-contain",style:{backgroundColor:"color-mix(in oklab, currentcolor 6%, transparent)"}}),n.jsxs("div",{className:"space-y-4 p-6 sm:p-8",children:[n.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[Io(x,g)&&n.jsx("span",{className:"border-2 px-2.5 py-1 text-[length:var(--fs-xs)] font-bold tracking-[0.08em]",style:{borderColor:Se},children:Io(x,g)}),Po(x)&&n.jsx("span",{className:"text-[length:var(--fs-sm)] font-semibold tabular-nums opacity-100",children:Po(x)})]}),n.jsx("h3",{className:"serif text-[length:var(--fs-h3)] font-bold leading-snug",children:x.title}),x.summary&&n.jsx("p",{className:"text-[length:var(--fs-sm)] leading-relaxed opacity-100",children:x.summary}),x.howTo&&n.jsx("p",{className:"border-2 border-dashed px-4 py-3 text-[length:var(--fs-sm)] leading-relaxed",style:{borderColor:Se},children:x.howTo}),x.body&&n.jsx("p",{className:"whitespace-pre-line text-[length:var(--fs-sm)] leading-relaxed opacity-100",children:x.body}),n.jsxs("div",{className:"flex items-center justify-between gap-4 pt-2",children:[x.postUrl?n.jsx("a",{href:x.postUrl,target:"_blank",rel:"noopener noreferrer",className:"text-[length:var(--fs-sm)] font-bold underline-offset-4 hover:underline",children:"원문 보기 →"}):n.jsx("span",{}),n.jsxs("button",{type:"button",onClick:m,className:"tap inline-flex items-center gap-1.5 border-2 px-4 text-[length:var(--fs-sm)] font-bold",style:{borderColor:Se},children:[n.jsx(br,{className:"size-4"}),n.jsx("span",{children:"닫기"})]})]})]})]})})]})}const Q1={songs:ex,daily:E1,people:tx,chronicle:lx,reading:ax,postcard:nx,quiz:T1,itinerary:H1,video:B1,event:X1,story:Y1},V1="/v1/site/review",Z1="/v1/site/reviews",wp=5,Ep=500;function K1(){const s=P(),[r,o]=O.useState(s.reviews??[]),u=O.useRef(Date.now()),[f,d]=O.useState(0),[m,x]=O.useState(""),[g,p]=O.useState(!1),[y,v]=O.useState(!1),[N,w]=O.useState(null),j=s.site.placeId,A=O.useCallback(async()=>{try{const G=await fetch(`${Z1}?place_id=${encodeURIComponent(j)}`);if(!G.ok)return;const R=await G.json();Array.isArray(R==null?void 0:R.items)&&o(R.items)}catch{}},[j]);O.useEffect(()=>{u.current=Date.now(),A()},[A]),O.useEffect(()=>{y&&(u.current=Date.now())},[y]);async function L(G){if(G.preventDefault(),g)return;const R=new FormData(G.currentTarget);p(!0);try{const X=await(await fetch(V1,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({place_id:s.site.placeId,body:m,nickname:String(R.get("nickname")??"")||null,consent:R.get("consent")==="on",company:String(R.get("company")??""),elapsed_ms:Date.now()-u.current})})).json();w({ok:!!(X!=null&&X.success),message:String((X==null?void 0:X.message)??"")}),X!=null&&X.success&&(x(""),d(0),v(!1),await A())}catch{w({ok:!1,message:"지금은 남기지 못했습니다. 잠시 뒤 다시 시도해 주세요."})}finally{p(!1)}}const H=Math.ceil(r.length/wp);return n.jsxs(rt,{id:"reviews",tone:"alt",title:"다녀오신 이야기",lead:"점수 대신 문장으로 남겨 주세요.",children:[r.length>0&&n.jsx("ul",{className:"mb-7 grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3",children:r.map((G,R)=>n.jsxs("li",{hidden:Math.floor(R/wp)!==f,className:"panel flex flex-col gap-3 p-5",children:[n.jsx("p",{className:"whitespace-pre-line break-keep text-[length:var(--fs-sm)] leading-relaxed line-clamp-6",children:G.body}),n.jsxs("p",{className:"border-line mt-auto flex flex-wrap items-baseline justify-between gap-2 border-t pt-3",children:[n.jsx("span",{className:"text-[length:var(--fs-sm)] font-bold",children:G.nickname||"손님"}),n.jsx("time",{dateTime:G.publishedAt,className:"text-muted text-[length:var(--fs-xs)] tabular-nums",children:ju(G.publishedAt)})]})]},G.reviewId))}),H>1&&n.jsx("nav",{"aria-label":"후기 페이지",className:"mb-7 flex flex-wrap justify-center gap-1.5",children:Array.from({length:H},(G,R)=>n.jsx("button",{type:"button",onClick:()=>d(R),"aria-current":R===f?"page":void 0,className:"border-line tpl-border min-w-9 rounded border px-3 py-1.5 text-[length:var(--fs-sm)] font-semibold tabular-nums",style:R===f?{backgroundColor:"var(--color-brand)",color:"var(--tpl-bg, #fff)"}:void 0,children:R+1},R))}),(N==null?void 0:N.ok)&&n.jsxs("div",{className:"border-line tpl-border mb-5 rounded-lg border p-5",children:[n.jsx("p",{className:"text-[length:var(--fs-body)] font-bold",children:N.message}),n.jsx("p",{className:"text-muted mt-1 text-[length:var(--fs-sm)]",children:"위 목록에 바로 올라갔습니다."})]}),n.jsx("button",{type:"button",onClick:()=>{w(null),v(!0)},className:"tap border-line tpl-border w-full rounded-lg border text-[length:var(--fs-body)] font-bold",children:"후기 남기기"}),n.jsx(Xs,{open:y,onClose:()=>v(!1),label:"후기 남기기",title:"후기 남기기",children:n.jsxs("form",{onSubmit:L,className:"flex flex-col gap-3",children:[n.jsxs("div",{className:"flex flex-col gap-1.5",children:[n.jsx("label",{htmlFor:"review-body",className:"text-[length:var(--fs-sm)] font-bold",children:"후기"}),n.jsx("textarea",{id:"review-body",rows:4,maxLength:Ep,value:m,onChange:G=>x(G.target.value),placeholder:"어떤 점이 좋았는지, 다음 손님이 알면 좋을 것을 적어 주세요",className:"border-line w-full rounded border-2 p-3 text-[length:var(--fs-body)]",style:{backgroundColor:"var(--color-surface)"}}),n.jsxs("p",{className:"text-muted text-[length:var(--fs-xs)] tabular-nums",children:[m.length," / ",Ep,"자"]})]}),n.jsxs("div",{className:"flex flex-col gap-1.5",children:[n.jsxs("label",{htmlFor:"review-nickname",className:"text-[length:var(--fs-sm)] font-bold",children:["표시 이름 ",n.jsx("span",{className:"text-muted font-normal",children:"(선택)"})]}),n.jsx("input",{id:"review-nickname",name:"nickname",maxLength:40,placeholder:"비우면 '손님'으로 올라갑니다",className:"border-line w-full rounded border-2 p-3 text-[length:var(--fs-body)]",style:{backgroundColor:"var(--color-surface)"}})]}),n.jsx("input",{type:"text",name:"company",tabIndex:-1,autoComplete:"off","aria-hidden":!0,className:"absolute size-0 overflow-hidden opacity-0"}),n.jsxs("label",{htmlFor:"review-consent",className:"text-muted flex items-start gap-2 text-[length:var(--fs-sm)]",children:[n.jsx("input",{id:"review-consent",name:"consent",type:"checkbox",required:!0,className:"mt-1 size-4 shrink-0"}),n.jsx("span",{children:"남긴 글이 이 사이트에 공개되는 것에 동의합니다."})]}),N&&!N.ok&&n.jsx("p",{className:"text-[length:var(--fs-sm)] font-semibold",style:{color:"var(--color-accent)"},children:N.message}),n.jsx("button",{type:"submit",disabled:g,className:"tap rounded-lg px-6 text-[length:var(--fs-body)] font-bold disabled:opacity-60",style:{backgroundColor:"var(--color-brand)",color:"var(--tpl-bg, #fff)"},children:g?"보내는 중…":"후기 보내기"})]})})]})}function J1(){const s=P().socialPosts??[];return s.length?n.jsxs("section",{id:"social-posts",className:"mx-auto w-full max-w-5xl px-6 py-12",children:[n.jsx("h2",{className:"mb-3 text-2xl font-semibold",children:"함께 발행한 소식"}),n.jsx("p",{className:"mb-6 text-sm opacity-70",children:"사장님이 승인해 홈페이지와 Threads에 함께 전한 소식입니다."}),n.jsx("div",{className:"grid gap-4 md:grid-cols-3",children:s.map(r=>n.jsxs("article",{className:"rounded-xl border border-current/15 p-5",children:[n.jsxs("time",{dateTime:r.postedAt,className:"text-sm opacity-70",children:[new Date(r.postedAt).toLocaleDateString("sv-SE",{timeZone:"Asia/Seoul"})," (한국시간)"]}),n.jsx("p",{className:"my-4 whitespace-pre-wrap break-words",children:r.body}),r.permalink&&n.jsx("a",{href:r.permalink,target:"_blank",rel:"noopener noreferrer",className:"text-sm underline underline-offset-4",children:"SNS에 올린 글 보기"})]},r.postId))})]}):null}const iu=1080,Rs=4,mt=56,ru=190,eu="#1b1a15",F1="#efe7d3",zp="#bf2f1b";function ix(s=iu){return s-mt-ru-mt-24}function rx(s,r,o){const u=[];return r.split(` `).forEach(f=>{if(f.trim()===""){u.push("");return}let d="";f.split(" ").forEach(m=>{const x=d?`${d} ${m}`:m;if(s.measureText(x).width<=o){d=x;return}if(d&&u.push(d),s.measureText(m).width<=o){d=m;return}let g="";for(const p of m){const y=g+p;s.measureText(y).width>o&&g?(u.push(g),g=p):g=y}d=g}),d&&u.push(d)}),u}function W1(s,r,o){const u=[];let f="";return r.split(/[,\s]+/).filter(Boolean).forEach(d=>{const m=f?`${f} ${d}`:d;if(s.measureText(m).width<=o){f=m;return}if(f&&u.push(f),s.measureText(d).width<=o){f=d;return}let x="";for(const g of d){const p=x+g;s.measureText(p).width>o&&x?(u.push(x),x=g):x=p}f=x}),f&&u.push(f),u}const I1="/v1/image/relay?url=";async function P1(s){const r=(o,u)=>new Promise((f,d)=>{const m=new Image;u&&(m.crossOrigin=u),m.onload=()=>f(m),m.onerror=d,m.src=o});try{return{img:await r(s,"anonymous"),exportable:!0}}catch{}if(/^https?:\/\//i.test(s))try{return{img:await r(`${I1}${encodeURIComponent(s)}`,"anonymous"),exportable:!0}}catch{}return{img:await r(s,null),exportable:!1}}function ej(){const s=document.querySelector(".serif");return(s?getComputedStyle(s).fontFamily:"")||"serif"}async function Tp(s,{photoUrl:r,text:o,placeName:u,region:f}){const d=s.getContext("2d");if(!d)return!1;const m=s.width,x=ej();d.clearRect(0,0,m,m),d.fillStyle=F1,d.fillRect(0,0,m,m);const{img:g,exportable:p}=await P1(r),y=m-mt*2,v=y/1.5,N=Math.max(y/g.width,v/g.height),w=g.width*N,j=g.height*N;d.save(),d.beginPath(),d.rect(mt,mt,y,v),d.clip(),d.drawImage(g,mt+(y-w)/2,mt+(v-j)/2,w,j),d.restore(),d.strokeStyle="rgba(27,26,21,0.25)",d.lineWidth=1,d.strokeRect(mt+.5,mt+.5,y-1,v-1);const A=mt+v+36,L=m-mt-ru,H=ix(m);d.strokeStyle="rgba(27,26,21,0.35)",d.beginPath(),d.moveTo(L,A),d.lineTo(L,m-mt-46),d.stroke(),d.fillStyle=eu,d.font=`600 46px ${x}`,d.textAlign="left",d.textBaseline="alphabetic";const G=rx(d,`“${o.trim()||"오늘, 이 숙소에서 하루를 보냅니다."}”`,H),R=G.slice(0,Rs);if(G.length>Rs){let W=R[Rs-1];for(;W.length&&d.measureText(`${W}…`).width>H;)W=W.slice(0,-1);R[Rs-1]=`${W}…`}R.forEach((W,le)=>d.fillText(W,mt,A+50+le*60));const Z=L+ru/2;d.strokeStyle=eu,d.lineWidth=1.5,d.setLineDash([4,4]),d.strokeRect(Z-44,A,88,108),d.setLineDash([]),d.fillStyle=eu,d.font=`400 20px ${x}`,d.textAlign="center",d.fillText("郵票",Z,A+46),d.fillText("10원",Z,A+78),d.save(),d.translate(Z,A+210),d.rotate(-6*Math.PI/180),d.strokeStyle=zp,d.lineWidth=3,d.beginPath(),d.arc(0,0,62,0,Math.PI*2),d.stroke(),d.fillStyle=zp,d.font=`600 22px ${x}`;const X=W1(d,u,100).slice(0,2),V=8-(X.length-1)*26/2;X.forEach((W,le)=>d.fillText(W,0,V+le*26)),d.restore();const Y=m-mt-30;return d.strokeStyle="rgba(27,26,21,0.3)",d.setLineDash([3,3]),d.beginPath(),d.moveTo(mt,Y-20),d.lineTo(m-mt,Y-20),d.stroke(),d.setLineDash([]),d.fillStyle="rgba(27,26,21,0.6)",d.font=`400 22px ${x}`,d.textAlign="left",d.fillText(`${u} · ${f}`,mt,Y+6),p}const Ap="postcard.png";function tj(){const s=P(),r=(s.media??[]).filter(R=>R.url),o=O.useRef(null),[u,f]=O.useState(0),[d,m]=O.useState(""),[x,g]=O.useState(""),[p,y]=O.useState(!1),[v,N]=O.useState(!0);O.useEffect(()=>{var R;y(((R=window.matchMedia)==null?void 0:R.call(window,"(pointer: coarse)").matches)??!1)},[]);const w=s.place.name,j=String(s.place.address??"").split(" ").slice(0,2).join(" ");if(O.useEffect(()=>{const R=o.current,Z=r[u];if(!R||!(Z!=null&&Z.url))return;const X=window.setTimeout(()=>{Tp(R,{photoUrl:Z.url,text:d,placeName:w,region:j}).then(N)},80);return()=>window.clearTimeout(X)},[u,d,w,j,r]),O.useEffect(()=>{var X;const R=o.current,Z=r[u];!R||!(Z!=null&&Z.url)||!((X=document.fonts)!=null&&X.ready)||document.fonts.ready.then(()=>Tp(R,{photoUrl:Z.url,text:d,placeName:w,region:j}).then(N))},[]),r.length===0)return null;function A(R){var X;const Z=(X=o.current)==null?void 0:X.getContext("2d");return Z?(Z.font="600 46px serif",rx(Z,`“${R}”`,ix()).length<=Rs):!0}function L(){return new Promise(R=>{const Z=o.current;if(!Z)return R(null);Z.toBlob(X=>R(X),"image/png",.95)})}function H(R){const Z=URL.createObjectURL(R),X=document.createElement("a");X.href=Z,X.download=Ap,X.click(),URL.revokeObjectURL(Z)}async function G(){var V,Y;const R=await L();if(!R)return;const Z=((V=document.querySelector('meta[property="og:url"]'))==null?void 0:V.content)??`${location.origin}${location.pathname}`,X=new File([R],Ap,{type:"image/png"});if((Y=navigator.canShare)!=null&&Y.call(navigator,{files:[X]})){await navigator.share({files:[X],title:`${w} 엽서`,text:Z}).catch(()=>{});return}if(navigator.share){await navigator.share({title:`${w} 엽서`,url:Z}).catch(()=>{}),g('이 브라우저는 사진을 같이 못 보내 링크만 보냈습니다. 사진은 "이미지로 저장" 을 눌러 주세요.');return}H(R),g("이 브라우저는 공유 시트를 못 열어 저장으로 대신했습니다.")}return n.jsx(rt,{id:"postcard-maker",title:"엽서 쓰기",lead:`${w}에서 보내는 한 장을 직접 써 봅니다. 사진을 고르고 한 마디를 적으면 그 자리에서 엽서가 되고, 그대로 공유하거나 저장할 수 있습니다.`,children:n.jsxs("div",{className:"mx-auto grid max-w-3xl gap-5 sm:grid-cols-[minmax(0,360px)_minmax(0,1fr)] sm:items-start",children:[n.jsx("canvas",{ref:o,width:iu,height:iu,"aria-label":"내가 만든 엽서 미리보기",className:"border-line mx-auto block aspect-square h-auto w-full max-w-[360px] border"}),n.jsxs("div",{className:"flex min-w-0 flex-col gap-2.5",children:[n.jsx("div",{className:"min-w-0",role:"radiogroup","aria-label":`엽서 사진 고르기(${r.length}장)`,children:n.jsx(kn,{label:"엽서 사진",gap:.5,dots:!1,autoplay:!1,children:r.map((R,Z)=>n.jsx("button",{type:"button",onClick:()=>f(Z),role:"radio","aria-checked":Z===u,"aria-label":`사진 ${Z+1}`,className:"border-line size-10 shrink-0 overflow-hidden rounded border transition-opacity",style:{opacity:Z===u?1:.5},children:n.jsx("img",{src:R.url,alt:"",loading:"lazy",className:"size-full object-cover"})},R.url))})}),n.jsxs("div",{className:"flex flex-col gap-1.5",children:[n.jsx("label",{htmlFor:"postcard-text",className:"text-[length:var(--fs-sm)] font-bold",children:"엽서에 적을 말"}),n.jsx("textarea",{id:"postcard-text",rows:3,maxLength:60,value:d,placeholder:"여기에 적으면 엽서에 바로 나타납니다",onChange:R=>{A(R.target.value)&&m(R.target.value)},className:"border-line w-full rounded border-2 p-3 text-[length:var(--fs-body)]",style:{backgroundColor:"var(--color-surface)"}}),n.jsxs("p",{className:"text-muted text-[length:var(--fs-xs)]",children:["네 줄까지 · ",d.length,"/60"]})]}),v?n.jsxs("div",{className:"flex flex-wrap gap-2",children:[n.jsx("button",{type:"button",onClick:()=>void G(),className:"tap border-line rounded-full border px-3.5 py-1.5 text-[length:var(--fs-sm)] font-bold",children:p?"카카오톡 등으로 공유":"공유하기"}),n.jsx("button",{type:"button",onClick:()=>void L().then(R=>R&&H(R)),className:"tap border-line rounded-full border px-3.5 py-1.5 text-[length:var(--fs-sm)]",children:"이미지로 저장"})]}):n.jsx("p",{className:"text-muted text-[length:var(--fs-sm)]",children:"이 사진은 다른 사이트에 올라와 있어 저장·공유가 막혀 있습니다. 화면으로만 보여 드립니다."}),x&&n.jsx("p",{className:"text-muted text-[length:var(--fs-xs)]",children:x})]})]})})}function lj({children:s}){return n.jsxs("div",{className:"flex min-h-screen w-full flex-col",children:[n.jsx(sj,{}),n.jsx("div",{className:"flex w-full flex-1 flex-col",children:s}),n.jsx(ij,{}),n.jsx(Mn,{})]})}function cx(){const s=P(),r=ht(s);return[{id:"intro",href:"#about",fallback:"소개"},{id:r.path,href:"#units",fallback:r.label},{id:"info",href:"#info",fallback:"이용 정보"},{id:"booking",href:"#booking",fallback:"예약 안내"},{id:"photos",href:"#gallery",fallback:"사진"},{id:"map",href:"#location",fallback:"오시는 길"},{id:"local",href:"#guide",fallback:"주변 정보"},{id:"faq",href:"#faq",fallback:"자주 묻는 질문"}].filter(o=>Lt(s,o.id)).map(o=>({label:$e(s,o.id,o.fallback),href:o.href}))}const aj=24,nj="0 1px 3px color-mix(in srgb, var(--tpl-inverse, #1c1917) 55%, transparent)";function sj(){const s=P(),r=cx(),[o,u]=O.useState(!1);O.useEffect(()=>{const d=()=>u(window.scrollY>aj);return d(),window.addEventListener("scroll",d,{passive:!0}),()=>window.removeEventListener("scroll",d)},[]);const f=o?"opacity-100 transition-opacity hover:opacity-100":"underline-offset-4 hover:underline";return n.jsx("header",{className:`fixed inset-x-0 top-0 z-40 w-full transition-colors duration-300 ${o?"border-line border-b backdrop-blur-md":""}`,style:o?{backgroundColor:"color-mix(in srgb, var(--tpl-surface, #fff) 92%, transparent)"}:{color:"var(--tpl-bg, #ffffff)",textShadow:nj},children:n.jsxs("div",{className:"shell grid h-20 grid-cols-[1fr_auto] items-center gap-4 lg:grid-cols-[1fr_auto_1fr]",children:[n.jsx("a",{href:"#top",className:"min-w-0",children:n.jsx("span",{className:"serif block truncate",style:{fontSize:"var(--fs-lead)",fontWeight:300,letterSpacing:"0.12em"},children:s.place.name})}),n.jsx("nav",{"aria-label":"주요 메뉴",className:"hidden items-center justify-center gap-10 lg:flex",children:r.map(d=>n.jsx("a",{href:d.href,className:`py-1 text-[length:var(--fs-sm)] font-light ${f}`,children:d.label},d.href))}),n.jsxs("div",{className:"flex items-center justify-end gap-2",children:[s.place.phone&&n.jsx("a",{href:`tel:${s.place.phone}`,className:`tap hidden items-center text-[length:var(--fs-sm)] font-light tabular-nums sm:inline-flex ${f}`,children:s.place.phone}),r.length>0&&n.jsxs("details",{className:"lg:hidden",children:[n.jsx("summary",{className:"tap flex cursor-pointer list-none items-center justify-center px-2 text-[length:var(--fs-sm)] font-light marker:content-none [&::-webkit-details-marker]:hidden","aria-label":"메뉴 열기",children:"메뉴"}),n.jsx("nav",{"aria-label":"전체 메뉴",className:"border-line absolute inset-x-0 top-full border-b border-t",style:{backgroundColor:"var(--tpl-surface, #fff)",color:"var(--tpl-text)",textShadow:"none"},children:n.jsx("ul",{className:"divide-line shell divide-y",children:r.map(d=>n.jsx("li",{children:n.jsx("a",{href:d.href,className:"tap flex items-center text-[length:var(--fs-sm)] font-light",children:d.label})},d.href))})})]})]})]})})}function ij(){var p,y,v,N;const s=P(),{place:r,site:o,narrative:u}=s,f=cx(),d=r.roadAddress??r.address,m=Ke(s)[0],x=Cn(s),g=u.about[0]??u.summary;return n.jsx("footer",{className:"border-line paper w-full border-t pb-28 md:pb-16",style:{backgroundColor:"var(--tpl-surface-alt, #f5f5f4)",paddingTop:"var(--section-space)"},children:n.jsxs("div",{className:"shell",children:[n.jsxs("div",{className:"grid gap-10 md:grid-cols-3 md:gap-12",children:[n.jsxs("div",{className:"min-w-0",children:[n.jsx("p",{className:"serif",style:{fontSize:"var(--fs-lead)",fontWeight:300,letterSpacing:"0.1em"},children:r.name}),g&&n.jsx("p",{className:"text-muted measure mt-4 text-[length:var(--fs-sm)] leading-loose",children:g})]}),n.jsxs("dl",{className:"min-w-0 space-y-5",children:[d&&n.jsxs("div",{children:[n.jsx("dt",{className:"label",children:"주소"}),n.jsx("dd",{className:"mt-1 text-[length:var(--fs-sm)] font-light",children:d})]}),r.phone&&n.jsxs("div",{children:[n.jsx("dt",{className:"label",children:"전화"}),n.jsx("dd",{className:"mt-1 text-[length:var(--fs-sm)] font-light tabular-nums",children:n.jsx("a",{href:`tel:${r.phone}`,className:"underline-offset-4 hover:underline",children:r.phone})})]}),r.email&&n.jsxs("div",{children:[n.jsx("dt",{className:"label",children:"이메일"}),n.jsx("dd",{className:"mt-1 text-[length:var(--fs-sm)] font-light",children:n.jsx("a",{href:`mailto:${r.email}`,className:"underline-offset-4 hover:underline",children:r.email})})]}),m&&n.jsxs("div",{children:[n.jsx("dt",{className:"label",children:"예약"}),n.jsx("dd",{className:"mt-1 text-[length:var(--fs-sm)] font-light",children:n.jsx("a",{href:m.url,target:"_blank",rel:"noopener noreferrer",className:"underline-offset-4 hover:underline",children:Bs(m)})})]})]}),f.length>0&&n.jsx("nav",{"aria-label":"사이트 메뉴",className:"min-w-0",children:n.jsx("ul",{className:"space-y-3",children:f.map(w=>n.jsx("li",{children:n.jsx("a",{href:w.href,className:"text-muted text-[length:var(--fs-sm)] font-light underline-offset-4 hover:underline",children:w.label})},w.href))})})]}),n.jsx("hr",{className:"border-line mt-12 border-t"}),x.length>0&&n.jsx("ul",{className:"mt-8 flex flex-wrap items-center justify-center gap-x-6 gap-y-2",children:x.map(w=>n.jsx("li",{children:n.jsx("a",{href:w.url,target:"_blank",rel:"noopener noreferrer",className:"text-muted text-[length:var(--fs-xs)] font-light underline-offset-4 hover:underline",children:Bs(w)})},w.url))}),n.jsxs("div",{className:"text-muted mt-8 flex flex-wrap items-center justify-center gap-x-4 gap-y-1 text-center text-[length:var(--fs-xs)] font-light",children:[n.jsxs("span",{children:["상호 ",r.name]}),((p=r.legal)==null?void 0:p.representative)&&n.jsxs("span",{children:["대표 ",r.legal.representative]}),((y=r.legal)==null?void 0:y.businessRegistrationNumber)&&n.jsxs("span",{children:["사업자등록번호 ",r.legal.businessRegistrationNumber]}),((v=r.legal)==null?void 0:v.mailOrderNumber)&&n.jsxs("span",{children:["통신판매업신고 ",r.legal.mailOrderNumber]}),((N=r.legal)==null?void 0:N.licenseNumber)&&n.jsxs("span",{children:[r.legal.licenseLabel??"인허가번호"," ",r.legal.licenseNumber]}),n.jsxs("span",{className:"byline",children:[n.jsxs("span",{className:"author",children:["작성·운영 ",r.name]})," · 최종 업데이트: ",n.jsx("time",{dateTime:o.updatedAt,children:Vs(o.updatedAt)})]})]})]})})}const rj=` .oasi-page main > section:not([data-oasi]) { background-color: transparent !important; background-image: none !important; border-color: transparent !important; color: var(--tpl-text) !important; padding-block: var(--oasi-gap) 0 !important; } .oasi-page main > section:not([data-oasi]) .shell { max-width: none; padding-inline: 0; } .oasi-page main > section#about > .shell > .grid { display: block; } .oasi-page main > section#about > .shell > .grid > * + * { margin-top: 2.5rem; } .oasi-page main > section#summary dl { grid-template-columns: minmax(0, 1fr); } /* * 붙여넣기 아이템 카드 — 소식 · 영상 · 추천 일정 (2026-09-04, 사장님: "1,2,3안 다 맞추세요") * * ★ 이 카드들은 .panel 이 아니라 제 인라인 style 로 면을 그린다(items/common.tsx 의 * ITEM_CARD·ITEM_BORDER). 그래서 위 .panel 규칙이 안 닿았고, 섹션 띠를 다 지운 3안에서 * **소식 카드만 갱지 결에 2px 테두리를 두른 상자로 혼자 서 있었다.** * ★ w4-paper 의 결은 1안(레트로 갱지)의 것이다. 여기서는 결을 지우고 테두리를 실선 한 겹으로 * 낮춘다. 상자를 아예 없애지는 않는다 — 전단 여섯 장이 경계 없이 붙으면 어디까지가 한 장인지 * 안 보인다. 면은 빼고 테두리만 남기는 게 이 안의 타협점이다. * ★ 배경은 transparent 로 두지 않는다. 사진 없는 공지 카드가 종이에 바로 얹히면 * 본문과 구분이 사라진다 — 아주 옅은 틴트 한 겹만 남긴다. * ★ 영상은 뺐다 (2026-09-04, 사장님: "영상 border 안 예쁘다") * 영상 카드는 상자가 아니라 **표지 사진 한 장**이고, 쇼츠라 9:16 세로다. li 에 틴트를 깔면 * 영상보다 넓은 회색 판이 뒤에 깔려 액자처럼 보인다. 사진은 제 테두리가 곧 경계다. */ .oasi-page section#event li, .oasi-page section#itinerary article { background-image: none !important; background-color: color-mix(in oklab, currentcolor 3%, transparent) !important; border-width: 1px !important; box-shadow: none !important; } .oasi-page .panel, .oasi-page .panel-sunken { background-color: transparent; border-width: 0; border-radius: 0; box-shadow: none; } .oasi-page main > section#faq > .shell > div:last-of-type { row-gap: 0; column-gap: 2.5rem; } .oasi-page main > section#faq details { margin-block: 0; border-top: 1px solid var(--site-line); } .oasi-page main > section#faq summary { padding-inline: 0; } .oasi-page main > section#faq summary > span:first-child { width: 1.125rem; } .oasi-page main > section#faq summary + div { border-top-width: 0; padding-inline: 1.875rem 0; padding-top: 0.5rem; } .oasi-page main > section#info dl.panel > div { padding-inline: 0; } .oasi-page main > section#info dl > div.panel { border-top: 1px solid var(--site-line); padding-inline: 0; } .oasi-page main > section#location .panel { border-top: 1px solid var(--site-line); padding-inline: 0; } .oasi-page main > section#location :is(thead, tbody) :is(th, td):first-child { padding-left: 0; } .oasi-page main > section#location :is(thead, tbody) :is(th, td):last-child { padding-right: 0; } .oasi-page main > section#weather .panel { padding-inline: 0; } .oasi-page main > section#guide .panel > span:last-child { padding-inline: 0; } @media (min-width: 40rem) { .oasi-page main > section#festival .panel > span:last-child { padding-inline: 0; } } `,cj={"--oasi-gap":"clamp(3.5rem, 7vw, var(--tpl-section-space, 4rem))",backgroundColor:"var(--tpl-bg)",color:"var(--tpl-text)"};function oj({children:s}){var y,v,N,w;const r=P(),{place:o}=r,u=ht(r),f=Ke(r)[0],d=Cn(r),m=[{label:"처음",href:"#top",show:!0},{label:"소개",href:"#about",show:Lt(r,"intro")},{label:u.label,href:"#units",show:r.units.length>0},{label:"이용 정보",href:"#info",show:!0},{label:"주변",href:"#guide",show:Lt(r,"local")},{label:"오시는 길",href:"#location",show:!0},{label:"자주 묻는 질문",href:"#faq",show:r.faqs.length>0}].filter(j=>j.show),x=[...Ua(r).map(j=>`${j.label} ${j.value}`),...r.theme.sections.filter(j=>{var A;return j.enabled&&((A=j.name)==null?void 0:A.trim())}).map(j=>j.name.trim())].slice(0,3),g=r.narrative.tagline??r.narrative.heroSubline,p=o.roadAddress??o.address;return n.jsxs("div",{className:"oasi-page flex min-h-screen w-full flex-col",style:cj,children:[n.jsx("style",{dangerouslySetInnerHTML:{__html:rj}}),n.jsxs("div",{className:"mx-auto flex w-full max-w-[72rem] flex-col gap-10 px-5 pb-16 pt-10 lg:flex-row lg:gap-14 lg:px-10 lg:pb-24 lg:pt-16",children:[n.jsxs("header",{className:"lg:sticky lg:top-12 lg:h-fit lg:w-[18.75rem] lg:shrink-0",children:[n.jsxs("a",{href:"#top",className:"block",children:[n.jsx("span",{className:"serif block leading-none",style:{fontSize:"var(--fs-display)",fontWeight:300,letterSpacing:"0.14em"},children:o.name}),o.englishName&&n.jsx("span",{className:"text-muted mt-3 block text-[length:var(--fs-xs)] tracking-[0.24em]",children:o.englishName})]}),n.jsx("nav",{"aria-label":"주요 메뉴",className:"mt-12 lg:mt-24",children:n.jsx("ul",{className:"flex flex-wrap items-center gap-x-6 gap-y-1 lg:block",children:m.map((j,A)=>n.jsx("li",{children:n.jsx("a",{href:j.href,"aria-current":A===0?"true":void 0,className:`tap inline-flex items-center text-[length:var(--fs-sm)] transition-opacity hover:opacity-100 ${A===0?"":"text-muted"}`,children:j.label})},j.label))})}),f&&n.jsx("a",{href:f.url,target:"_blank",rel:"noopener noreferrer",className:"tap mt-2 inline-flex items-center text-[length:var(--fs-sm)] underline underline-offset-[6px]",style:{color:"var(--color-brand)"},children:gt(f)})]}),n.jsxs("div",{className:"flex min-w-0 flex-1 flex-col",children:[(x.length>0||g)&&n.jsxs("div",{className:"border-line flex flex-col gap-3 border-y py-4 sm:flex-row sm:items-center sm:justify-between sm:gap-6",children:[x.length>0&&n.jsx("ul",{className:"text-muted flex min-w-0 flex-wrap items-center gap-x-4 gap-y-1 text-[length:var(--fs-xs)]",children:x.map((j,A)=>n.jsxs("li",{className:"flex items-center gap-4",children:[A>0&&n.jsx("span",{"aria-hidden":!0,className:"opacity-40",children:"|"}),n.jsx("span",{children:j})]},j))}),g&&n.jsx("p",{className:"text-muted measure shrink-0 text-[length:var(--fs-xs)] leading-[1.9] sm:max-w-[18rem] sm:text-right",children:n.jsx(ha,{children:g})})]}),s]})]}),n.jsx("footer",{className:"border-line mt-auto w-full border-t",children:n.jsxs("div",{className:"mx-auto grid w-full max-w-[72rem] grid-cols-1 gap-8 px-5 pb-28 pt-10 text-[length:var(--fs-xs)] leading-[1.9] sm:grid-cols-3 lg:px-10 lg:pb-14",children:[n.jsxs("p",{children:["[",o.name,"]"]}),d.length>0?n.jsx("ul",{className:"space-y-1",children:d.map(j=>n.jsx("li",{children:n.jsx("a",{href:j.url,target:"_blank",rel:"noopener noreferrer",className:"underline underline-offset-[5px]",children:Bs(j)})},j.url))}):n.jsx("span",{}),n.jsxs("div",{className:"text-muted space-y-1 sm:text-right",children:[p&&n.jsx("p",{children:p}),o.phone&&n.jsx("p",{children:n.jsx("a",{href:`tel:${o.phone}`,className:"underline underline-offset-[5px]",children:o.phone})}),o.email&&n.jsx("p",{children:o.email}),((y=o.legal)==null?void 0:y.representative)&&n.jsxs("p",{children:["대표 ",o.legal.representative]}),((v=o.legal)==null?void 0:v.businessRegistrationNumber)&&n.jsxs("p",{children:["사업자등록번호 ",o.legal.businessRegistrationNumber]}),((N=o.legal)==null?void 0:N.mailOrderNumber)&&n.jsxs("p",{children:["통신판매업신고 ",o.legal.mailOrderNumber]}),((w=o.legal)==null?void 0:w.licenseNumber)&&n.jsxs("p",{children:[o.legal.licenseLabel??"인허가번호"," ",o.legal.licenseNumber]}),n.jsxs("p",{className:"byline",children:[n.jsxs("span",{className:"author",children:["작성·운영 ",o.name]})," · 최종 업데이트: ",n.jsx("time",{dateTime:r.site.updatedAt,children:Vs(r.site.updatedAt)})]})]})]})}),n.jsx(Mn,{})]})}function uj({children:s}){var N,w,j,A;const r=P(),{place:o,narrative:u,site:f}=r,d=ht(r),m=_n(r),x=Ua(r),g=Ke(r)[0],p=pu(r),y=o.roadAddress??o.address,v=[{label:"소개",href:"#about",show:Lt(r,"intro")},{label:d.label,href:"#units",show:r.units.length>0},{label:"이용 정보",href:"#info",show:!0},{label:"주변 정보",href:"#guide",show:Lt(r,"local")},{label:"오시는 길",href:"#location",show:!0},{label:"자주 묻는 질문",href:"#faq",show:r.faqs.length>0}].filter(L=>L.show);return n.jsxs("div",{className:"flex min-h-screen w-full flex-col lg:flex-row",style:{backgroundColor:"var(--tpl-bg)",color:"var(--tpl-text)"},children:[n.jsx("aside",{className:"w-full shrink-0 px-6 pb-8 pt-8 lg:sticky lg:top-0 lg:h-screen lg:w-[260px] lg:overflow-y-auto lg:px-7 lg:py-10",style:{backgroundColor:"var(--tpl-bg)"},children:n.jsxs("div",{className:"flex h-full min-w-0 flex-col",children:[n.jsx("a",{href:"#top",className:"block min-w-0",children:n.jsx("h1",{className:"serif min-w-0 break-keep font-black",style:{fontSize:"var(--fs-h2)",letterSpacing:"0.12em",lineHeight:1.25},children:o.name})}),(u.tagline??u.heroSubline)&&n.jsx("p",{className:"text-muted mt-3 text-[length:var(--fs-sm)]",style:{lineHeight:1.7},children:n.jsx(ha,{children:u.tagline??u.heroSubline})}),(m||x.length>0)&&n.jsxs("dl",{className:"mt-7 space-y-2.5",children:[m&&n.jsxs("div",{children:[n.jsx("dt",{className:"label",children:"최저가"}),n.jsx("dd",{className:"text-[length:var(--fs-lead)] font-bold tabular-nums",children:m})]}),x.map(L=>n.jsxs("div",{children:[n.jsx("dt",{className:"label",children:L.label}),n.jsx("dd",{className:"text-[length:var(--fs-sm)] font-semibold",children:L.value})]},L.label))]}),g&&n.jsx("a",{href:g.url,target:"_blank",rel:"noopener noreferrer",className:"tap mt-5 inline-flex w-full items-center justify-center px-4 text-[length:var(--fs-sm)] font-bold transition-opacity hover:opacity-100",style:{backgroundColor:"var(--color-brand)",color:"var(--tpl-bg)"},children:gt(g)}),o.phone&&n.jsxs("a",{href:`tel:${o.phone}`,className:"tap mt-2 inline-flex w-full items-center justify-center px-4 text-[length:var(--fs-sm)] font-bold",style:{backgroundColor:"var(--tpl-surface-alt)",color:"var(--tpl-text)"},children:["전화 ",o.phone]}),n.jsx("nav",{"aria-label":"주요 메뉴",className:"mt-10",children:n.jsx("ul",{className:"space-y-0.5",children:v.map(L=>n.jsx("li",{children:n.jsx("a",{href:L.href,className:"text-muted flex min-h-[2rem] items-center text-[length:var(--fs-sm)] transition-colors hover:text-current",children:L.label})},L.label))})}),p&&n.jsx("nav",{"aria-label":"공식 채널",className:"mt-12",children:n.jsx("ul",{className:"space-y-0.5",children:n.jsx("li",{children:n.jsx("a",{href:p.url,target:"_blank",rel:"noopener noreferrer",className:"text-muted flex min-h-[2rem] items-center text-[length:var(--fs-xs)] underline-offset-4 transition-colors hover:text-current hover:underline",children:pl(p)})})})}),n.jsxs("div",{className:"text-muted mt-14 space-y-1 pb-2 text-[length:var(--fs-xs)] lg:mt-auto lg:pt-14",children:[y&&n.jsx("p",{className:"break-keep",children:y}),o.phone&&n.jsx("p",{children:o.phone}),o.email&&n.jsx("p",{children:n.jsx("a",{href:`mailto:${o.email}`,className:"underline-offset-2 hover:underline",children:o.email})}),n.jsxs("div",{className:"flex flex-wrap gap-x-2 gap-y-0.5 pt-3",children:[n.jsxs("span",{children:["상호: ",o.name]}),((N=o.legal)==null?void 0:N.representative)&&n.jsxs("span",{children:["대표: ",o.legal.representative]}),((w=o.legal)==null?void 0:w.businessRegistrationNumber)&&n.jsxs("span",{children:["사업자등록번호: ",o.legal.businessRegistrationNumber]}),((j=o.legal)==null?void 0:j.mailOrderNumber)&&n.jsxs("span",{children:["통신판매업신고: ",o.legal.mailOrderNumber]}),((A=o.legal)==null?void 0:A.licenseNumber)&&n.jsxs("span",{children:[o.legal.licenseLabel??"인허가번호",": ",o.legal.licenseNumber]})]}),n.jsxs("p",{className:"byline pt-1",children:[n.jsxs("span",{className:"author",children:["작성·운영 ",o.name]})," · 최종 업데이트: ",n.jsx("time",{dateTime:f.updatedAt,children:Vs(f.updatedAt)})]})]})]})}),n.jsx("div",{className:"flex min-w-0 flex-1 flex-col pb-24 lg:pb-0",children:s}),n.jsx(Mn,{})]})}const fj=` .pastel-page > main > section:not([data-pastel]) { border-color: transparent; background-image: none; color: var(--pastel-ink) !important; } .pastel-page > main > section:not([data-pastel]):nth-of-type(4n+1) { background-color: var(--pastel-1) !important; } .pastel-page > main > section:not([data-pastel]):nth-of-type(4n+2) { background-color: var(--pastel-soft) !important; } .pastel-page > main > section:not([data-pastel]):nth-of-type(4n+3) { background-color: var(--pastel-2) !important; } .pastel-page > main > section:not([data-pastel]):nth-of-type(4n) { background-color: var(--pastel-3) !important; } `,dj={"--pastel-1":"var(--tpl-card)","--pastel-2":"var(--tpl-accent)","--pastel-3":"var(--tpl-secondary)","--pastel-soft":"var(--tpl-bg)","--pastel-ink":"var(--tpl-text)","--section-space":"clamp(2.75rem, 8vw, calc(var(--tpl-section-space, 4rem) * 1.4))",backgroundColor:"var(--pastel-soft)",color:"var(--pastel-ink)"};function mj({children:s}){const r=P(),o=ht(r),u=Cn(r),f=[{label:"소개",href:"#about",show:Lt(r,"intro")},{label:o.label,href:"#units",show:r.units.length>0},{label:"이용 정보",href:"#info",show:!0},{label:"주변",href:"#guide",show:Lt(r,"local")},{label:"오시는 길",href:"#location",show:!0},{label:"FAQ",href:"#faq",show:r.faqs.length>0}].filter(d=>d.show);return n.jsxs("div",{className:"pastel-page flex min-h-screen w-full flex-col",style:dj,children:[n.jsx("style",{dangerouslySetInnerHTML:{__html:fj}}),n.jsx("header",{className:"sticky top-0 z-40 w-full",style:{backgroundColor:"color-mix(in srgb, var(--tpl-surface, #fff) 92%, transparent)"},children:n.jsxs("div",{className:"shell flex h-16 items-center justify-between gap-3",children:[n.jsx("a",{href:"#top",className:"flex min-w-0 items-center gap-2",children:n.jsx("span",{className:"serif truncate italic",style:{fontSize:"var(--fs-lead)",fontWeight:800,display:"inline-block",transform:"rotate(-1.5deg)"},children:r.place.name})}),n.jsx("nav",{"aria-label":"주요 메뉴",className:"hidden items-center gap-8 lg:flex",children:f.map(d=>n.jsx("a",{href:d.href,className:"py-1 text-[length:var(--fs-xs)] font-bold tracking-[0.2em] opacity-100 transition-opacity hover:opacity-100",children:d.label},d.label))}),n.jsxs("div",{className:"flex shrink-0 items-center gap-1",children:[r.place.phone&&n.jsx("a",{href:`tel:${r.place.phone}`,"aria-label":"전화",className:"tap flex items-center justify-center rounded-full",style:{backgroundColor:"var(--pastel-1)"},children:n.jsx(jt,{className:"size-4"})}),u.map(d=>n.jsx("a",{href:d.url,target:"_blank",rel:"noopener noreferrer","aria-label":pl(d),className:"tap flex items-center justify-center rounded-full",style:{backgroundColor:"var(--pastel-2)"},children:/instagram/i.test(d.url)?n.jsx(u0,{className:"size-4"}):n.jsx(du,{className:"size-4"})},d.url)),n.jsxs("details",{className:"relative lg:hidden",children:[n.jsx("summary",{className:"tap flex cursor-pointer items-center justify-center rounded-full marker:content-none [&::-webkit-details-marker]:hidden","aria-label":"메뉴 열기",children:n.jsx(Op,{className:"size-5"})}),n.jsx("nav",{"aria-label":"전체 메뉴",className:"absolute right-0 top-[calc(100%+0.5rem)] z-50 w-48 overflow-hidden rounded-2xl",style:{backgroundColor:"var(--tpl-surface, #fff)",boxShadow:"0 10px 30px rgb(0 0 0 / 0.12)"},children:n.jsx("ul",{children:f.map(d=>n.jsx("li",{children:n.jsx("a",{href:d.href,className:"tap flex items-center px-4 text-[length:var(--fs-sm)] font-bold tracking-[0.08em]",children:d.label})},d.label))})})]})]})]})}),s,n.jsx("div",{style:{"--tpl-inverse":"var(--pastel-3)","--tpl-bg":"var(--pastel-ink)"},children:n.jsx(Pp,{})}),n.jsx(Mn,{})]})}function hj({children:s}){var p,y,v,N;const r=P(),{place:o,site:u}=r,f=Gp(),d=pj(f),m=Ke(r)[0],x=pu(r),g=o.roadAddress??o.address;return n.jsxs("div",{className:"flex min-h-screen w-full flex-col",style:{backgroundColor:"var(--tpl-bg)",color:"var(--tpl-text)"},children:[n.jsx("header",{className:"sticky top-0 z-40 w-full border-b-2 backdrop-blur-md",style:{backgroundColor:"color-mix(in srgb, var(--tpl-bg) 90%, transparent)",borderColor:"var(--tpl-text)"},children:n.jsxs("div",{className:"flex h-14 items-center justify-between gap-4 px-4 sm:px-6 xl:px-8",children:[n.jsx("a",{href:"#top",className:"serif min-w-0 truncate text-[length:var(--fs-lead)] font-extrabold",children:o.name}),n.jsxs("div",{className:"flex shrink-0 items-center gap-4 text-[length:var(--fs-sm)]",children:[o.phone&&n.jsx("a",{href:`tel:${o.phone}`,className:"tap inline-flex items-center underline underline-offset-4",children:o.phone}),m&&n.jsx("a",{href:m.url,target:"_blank",rel:"noopener noreferrer",className:"tap inline-flex items-center font-bold underline underline-offset-4",children:gt(m)})]})]})}),n.jsxs("div",{className:"flex w-full flex-1",children:[f.length>0&&n.jsx("aside",{className:"border-line sticky top-14 hidden h-[calc(100vh-3.5rem)] w-44 shrink-0 self-start border-r xl:block",style:{backgroundImage:qs},children:n.jsx("nav",{"aria-label":"차례",className:"flex h-full flex-col justify-center gap-0.5 py-8 pl-6 pr-3",children:f.map(w=>{const j=w.anchor===d;return n.jsxs("a",{href:`#${w.anchor}`,"aria-current":j?"true":void 0,className:"flex items-baseline gap-2 py-2 text-[length:var(--fs-sm)] leading-tight motion-safe:transition-opacity",style:{opacity:j?1:.35},children:[n.jsx("span",{className:"shrink-0 text-[length:var(--fs-xs)] font-bold tabular-nums",children:w.no}),n.jsx("span",{className:"truncate",style:{fontWeight:j?700:400},children:w.label})]},w.anchor)})})}),n.jsx("div",{className:"flex min-w-0 flex-1 flex-col",children:s})]}),n.jsx("footer",{className:"w-full pb-28 pt-12 md:pb-16",style:{backgroundColor:"var(--tpl-inverse)",color:"var(--tpl-bg)",backgroundImage:qs},children:n.jsxs("div",{className:"shell",children:[n.jsx("div",{"aria-hidden":!0,className:"h-0.5 w-full bg-current opacity-100"}),n.jsxs("div",{className:"grid grid-cols-1 gap-8 pt-8 md:grid-cols-12",children:[n.jsxs("div",{className:"md:col-span-5",children:[n.jsx("p",{className:"serif",style:{fontSize:"clamp(1.5rem, 4vw, 2.5rem)",fontWeight:800,lineHeight:1.05},children:o.name}),o.englishName&&n.jsx("p",{className:"mt-2 text-[length:var(--fs-xs)] uppercase tracking-[0.18em] opacity-100",children:o.englishName})]}),n.jsxs("address",{className:"space-y-2 font-serif text-[length:var(--fs-sm)] not-italic opacity-100 md:col-span-4",children:[g&&n.jsx("p",{children:g}),o.phone&&n.jsx("p",{children:n.jsx("a",{href:`tel:${o.phone}`,className:"underline underline-offset-4",children:o.phone})}),o.email&&n.jsx("p",{children:n.jsx("a",{href:`mailto:${o.email}`,className:"underline underline-offset-4",children:o.email})})]}),x&&n.jsx("nav",{"aria-label":"공식 채널",className:"md:col-span-3",children:n.jsx("ul",{className:"space-y-1.5 text-[length:var(--fs-sm)]",children:n.jsx("li",{children:n.jsx("a",{href:x.url,target:"_blank",rel:"noopener noreferrer",className:"underline underline-offset-4 opacity-80 transition-opacity hover:opacity-100",children:pl(x)})})})})]}),n.jsxs("div",{className:"mt-10 flex flex-col gap-2 border-t border-current/20 pt-5 text-[length:var(--fs-xs)] opacity-100 sm:flex-row sm:items-center sm:justify-between",children:[n.jsxs("div",{className:"flex flex-wrap items-center gap-x-3 gap-y-1",children:[n.jsxs("span",{children:["상호: ",o.name]}),((p=o.legal)==null?void 0:p.representative)&&n.jsxs("span",{children:["대표: ",o.legal.representative]}),((y=o.legal)==null?void 0:y.businessRegistrationNumber)&&n.jsxs("span",{children:["사업자등록번호: ",o.legal.businessRegistrationNumber]}),((v=o.legal)==null?void 0:v.mailOrderNumber)&&n.jsxs("span",{children:["통신판매업신고: ",o.legal.mailOrderNumber]}),((N=o.legal)==null?void 0:N.licenseNumber)&&n.jsxs("span",{children:[o.legal.licenseLabel??"인허가번호",": ",o.legal.licenseNumber]})]}),n.jsxs("p",{className:"byline shrink-0",children:[n.jsxs("span",{className:"author",children:["작성·운영 ",o.name]})," · 최종 업데이트: ",n.jsx("time",{dateTime:u.updatedAt,children:Vs(u.updatedAt)})]})]})]})}),n.jsx(Mn,{})]})}function pj(s){const r=s.map(f=>f.anchor).join(","),[o,u]=O.useState("");return O.useEffect(()=>{if(typeof IntersectionObserver>"u")return;const f=r.split(",").map(m=>document.getElementById(m)).filter(m=>m!==null);if(f.length===0)return;const d=new IntersectionObserver(m=>{const x=m.find(g=>g.isIntersecting);x&&u(x.target.id)},{rootMargin:"-45% 0px -50% 0px"});return f.forEach(m=>d.observe(m)),()=>d.disconnect()},[r]),o}function xj(){const s=P(),r=s.place.category===da.LODGING,o={intro:Uy,info:By,rooms:Jo,menu:Jo,programs:Jo,booking:r?fp:i1,space:r1,inquiry:c1,exhibition:o1,photos:N1,festival:d1,local:h1,weather:j1,map:gp,faq:S1,...Q1},u=new Set;return n.jsxs("main",{className:"w-full flex-1",children:[n.jsx(Vv,{}),s.theme.sections.filter(f=>f.enabled&&f.id!=="hero"&&f.id!=="social").map(f=>{const d=o[f.id];if(!d)return null;const m=d.name;return u.has(m)?null:(u.add(m),n.jsxs("div",{"data-editor-id":f.id,style:{display:"contents"},children:[n.jsx(d,{}),f.id==="intro"&&n.jsx(rp,{})]},f.id))}),!Lt(s,"map")&&n.jsx(gp,{}),r&&!zv(s,"booking")&&n.jsx(fp,{}),!Lt(s,"intro")&&n.jsx(rp,{}),n.jsx(K1,{}),n.jsx(tj,{}),Lt(s,"social")&&n.jsx("div",{"data-editor-id":"social",children:n.jsx(J1,{})})]})}function cu({payload:s}){const r=Yp(s.theme.templateId),o=r==="reservation"?lj:r==="oasi"?oj:r==="studio"?uj:r==="pastel"?mj:r==="editorial"?hj:gj;return n.jsx(M0,{payload:s,children:n.jsx(o,{children:n.jsx(xj,{})})})}function gj({children:s}){return n.jsxs("div",{className:"flex min-h-screen w-full flex-col",children:[n.jsx(Tv,{}),n.jsx("div",{className:"flex w-full flex-1 flex-col",children:s}),n.jsx(Pp,{}),n.jsx(Mn,{})]})}function bj(s){const{colors:r,look:o}=s.theme,u=tv(r),f={"--tpl-primary":r.primary,"--tpl-secondary":r.secondary,"--tpl-bg":r.bg,"--tpl-card":r.card,"--tpl-text":r.text,"--tpl-accent":r.accent,"--tpl-surface":u.surface,"--tpl-surface-alt":u.surfaceAlt,"--tpl-inverse":u.inverse,"--tpl-border":u.border};if(o){const d=x=>x&&!/[<>{};]/.test(x)?x:void 0,m=[["--tpl-font-heading",d(o.fontHeading)],["--tpl-font-body",d(o.fontBody)],["--tpl-heading-tracking",d(o.headingTracking)],["--tpl-heading-weight",d(o.headingWeight)],["--tpl-section-space",d(o.sectionSpace)],["--tpl-border-width",d(o.borderWidth)],["--tpl-radius",d(o.radius)],["--tpl-shadow",d(o.shadow)],["--tpl-texture",d(o.texture)]];for(const[x,g]of m)g&&(f[x]=g)}return f}const vj=[[/Noto Sans KR/i,"family=Noto+Sans+KR:wght@300..900"],[/Noto Serif KR/i,"family=Noto+Serif+KR:wght@300..700"],[/Gugi/i,"family=Gugi"],[/Gowun Batang/i,"family=Gowun+Batang:wght@400;700"],[/Nanum Pen Script/i,"family=Nanum+Pen+Script"]];function yj(s){var u,f;const r=["Noto Sans KR","Noto Serif KR",((u=s.theme.look)==null?void 0:u.fontHeading)??"",((f=s.theme.look)==null?void 0:f.fontBody)??""].join(" ");return`https://fonts.googleapis.com/css2?${vj.filter(([d])=>d.test(r)).map(([,d])=>d).join("&")}&display=swap`}const pr=document.getElementById("root"),_p=window.__SITE_PAYLOAD__;function Du(s){if(window.parent===window)return;const r=()=>window.parent.postMessage({type:"o2o:preview-painted",ok:s},window.location.origin);requestAnimationFrame(()=>requestAnimationFrame(r))}function jj(){return O.useEffect(()=>Du(!0),[]),null}async function Nj(s){const r=(()=>{try{return localStorage.getItem("o2o-web4ai.accessToken")}catch{return null}})(),o=await fetch(`/v1/place/${s}/site/preview`,{headers:r?{Authorization:`Bearer ${r}`}:{}});if(!o.ok)throw new Error(`HTTP ${o.status}`);const u=await o.json();for(const[d,m]of Object.entries(bj(u)))document.documentElement.style.setProperty(d,m);const f=document.createElement("link");f.rel="stylesheet",f.href=yj(u),document.head.appendChild(f),await new Promise(d=>{f.addEventListener("load",()=>d(),{once:!0}),f.addEventListener("error",()=>d(),{once:!0}),setTimeout(d,2500)});try{await document.fonts.ready}catch{}tu.createRoot(pr).render(n.jsxs(O.StrictMode,{children:[n.jsx(cu,{payload:u}),n.jsx(jj,{})]})),Du(!0)}const Cp=new URLSearchParams(window.location.search).get("placeId");_p?tu.hydrateRoot(pr,n.jsx(O.StrictMode,{children:n.jsx(cu,{payload:_p})})):Cp?Nj(Cp).catch(s=>{pr.textContent=`미리보기를 불러오지 못했습니다 — ${s instanceof Error?s.message:String(s)}`,Du(!1)}):Sb(async()=>{const{MOONLIGHT_STAY_PAYLOAD:s}=await import("./moonlight-stay-4KfEHhu-.js");return{MOONLIGHT_STAY_PAYLOAD:s}},[]).then(({MOONLIGHT_STAY_PAYLOAD:s})=>{tu.createRoot(pr).render(n.jsx(O.StrictMode,{children:n.jsx(cu,{payload:s})}))});export{Xh as F,it as L,da as P,B0 as S,Sj as a};