@ihabdevteam/core 0.206.0 → 0.207.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +62 -0
- package/dist/components.cjs.js +14 -14
- package/dist/components.esm.css +1 -1
- package/dist/hooks.cjs.js +1 -1
- package/dist/i18n.cjs.js +1 -1
- package/dist/ihabdevteam-core.cjs.js +16 -16
- package/dist/ihabdevteam-core.d.ts +7 -2
- package/dist/packages/core/src/components/FilterPanel.css +24 -0
- package/dist/packages/core/src/components/FilterPanel.d.ts +6 -1
- package/dist/packages/core/src/components/FilterPanel.js +10 -3
- package/dist/packages/core/src/components/Word/WordSearchResultBlock.js +7 -2
- package/dist/packages/core/src/utils/filterPanelSummary.d.ts +14 -0
- package/dist/packages/core/src/utils/filterPanelSummary.js +57 -0
- package/dist/packages/core/src/version.d.ts +1 -1
- package/dist/packages/core/src/version.js +1 -1
- package/dist/utils.cjs.js +1 -1
- package/package.json +1 -1
package/dist/components.cjs.js
CHANGED
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
*
|
|
29
29
|
* This source code is licensed under the ISC license.
|
|
30
30
|
* See the LICENSE file in the root directory of this source tree.
|
|
31
|
-
*/const Nu=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1},Eu=o.createContext({}),Du=()=>o.useContext(Eu),Su=o.forwardRef(({color:e,size:t,strokeWidth:a,absoluteStrokeWidth:r,className:s="",children:i,iconNode:l,...c},d)=>{const{size:u=24,strokeWidth:p=2,absoluteStrokeWidth:m=!1,color:
|
|
31
|
+
*/const Nu=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1},Eu=o.createContext({}),Du=()=>o.useContext(Eu),Su=o.forwardRef(({color:e,size:t,strokeWidth:a,absoluteStrokeWidth:r,className:s="",children:i,iconNode:l,...c},d)=>{const{size:u=24,strokeWidth:p=2,absoluteStrokeWidth:m=!1,color:f="currentColor",className:g=""}=Du()??{},y=r??m?Number(a??p)*24/Number(t??u):a??p;return o.createElement("svg",{ref:d,...hr,width:t??u??hr.width,height:t??u??hr.height,stroke:e??f,strokeWidth:y,className:ts("lucide",g,s),...!i&&!Nu(c)&&{"aria-hidden":"true"},...c},[...l.map(([h,w])=>o.createElement(h,w)),...Array.isArray(i)?i:[i]])});/**
|
|
32
32
|
* @license lucide-react v1.38.0 - ISC
|
|
33
33
|
*
|
|
34
34
|
* This source code is licensed under the ISC license.
|
|
@@ -824,8 +824,8 @@
|
|
|
824
824
|
* This source code is licensed under the ISC license.
|
|
825
825
|
* See the LICENSE file in the root directory of this source tree.
|
|
826
826
|
*/const o0=[["path",{d:"M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z",key:"emmmcr"}],["path",{d:"M7 10v12",key:"1qc93n"}]],s0=te("thumbs-up",o0),bs={"alert-triangle":as,"align-start-vertical":Mu,anchor:mh,armchair:fh,"arrow-down":$u,"arrow-left":Pu,"arrow-right":Fu,"arrow-right-left":Hu,"arrow-up-a-z":gh,"audio-lines":Vu,baby:qu,ban:Gu,"bar-chart-2":yh,bell:Yu,"book-marked":Xu,"book-open":Qu,"bow-arrow":td,braces:ad,bug:od,calendar:fs,"calendar-check":id,"calendar-days":cd,camera:dd,car:_h,"chart-column":md,"chart-line":fd,"chart-pie":gd,check:rs,"chevron-down":Cs,"chevron-left":os,"chevron-right":ss,"chevron-up":gs,circle:Jh,"clipboard-list":_d,coffee:kh,combine:kd,copy:Bd,"chevrons-left-right-ellipsis":Ed,"credit-card":Sd,database:is,diff:Md,download:ls,ear:Rd,edit:Id,"edit-2":Od,"edit-3":zd,ellipsis:cs,eraser:qd,"external-link":Gd,eye:Yd,"file-text":Xd,"flip-horizontal":Qd,"folder-open":tp,"folder-plus":ap,gamepad:op,"gamepad-2":Bh,clock:Eh,target:Sh,percent:Th,gavel:ip,"git-merge":us,globe:up,"grip-vertical":pp,headphones:hp,heart:Cp,home:bp,inbox:Lh,info:vp,"key-round":_p,landmark:kp,layers:Bp,"layout-dashboard":Ep,leaf:Sp,lightbulb:Tp,link:Lp,"link-2":Rp,"link-2-off":Ip,list:Op,"list-checks":zp,"list-ordered":Wp,"list-tree":Rh,loader:Up,lock:Kp,"log-out":Zp,mail:Jp,"map-pin":e1,menu:n0,"message-circle":n1,"message-circle-question-mark":r1,"message-square":s1,"message-square-more":Ih,"message-square-text":l1,minus:Oh,"minus-circle":u1,moon:r0,"more-horizontal":cs,package:p1,palette:h1,"party-popper":C1,pause:b1,pencil:v1,phone:_1,play:k1,"play-circle":B1,plus:E1,printer:S1,"refresh-cw":T1,repeat:L1,replace:R1,rocket:I1,"rotate-ccw":O1,"rotate-cw":z1,salad:W1,"scan-search":U1,search:Z1,"circle-alert":ds,"alert-circle":ds,"check-circle":ps,scissors:J1,"search-x":em,send:nm,settings:rm,"share-2":zh,"shield-check":sm,"shopping-cart":lm,shuffle:um,"skip-back":pm,"skip-forward":hm,sparkles:Wh,square:Cm,star:bm,store:vm,"sun-medium":_m,table:km,"table-2":Bm,tag:Em,terminal:Sm,"text-cursor-input":Tm,"text-initial":Lm,"thumbs-up":s0,ticket:Rm,trash:Om,triangle:e0,"trash-2":Im,"trending-up":zm,"triangle-alert":as,trophy:Wm,type:Uh,unlink:Um,upload:Km,user:fr,"user-plus":Xm,"user-round":Qm,"user-round-check":th,users:ah,"users-round":oh,volume:Kh,"volume-2":ms,wrench:lh,x:hs,zap:dh};function i0(e){return bs[e]??null}const ys=new Set;function l0(e){return es&&!(e in bs)&&!ys.has(e)&&(ys.add(e),console.warn(`[ihabdevteam-core] lucide \uC544\uC774\uCF58 '${e}' \uC774 \uC815\uC801 \uBAA9\uB85D\uC5D0 \uC5C6\uC5B4 \uB80C\uB354\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4. utils/lucideIconSet.ts \uC758 STATIC_LUCIDE_ICONS \uC5D0 \uCD94\uAC00\uD558\uC138\uC694.`)),Promise.resolve(null)}const c0=e=>e.replace(/([A-Z]+)([A-Z][a-z])/g,"$1-$2").replace(/([a-z0-9])([A-Z])/g,"$1-$2").replace(/([A-Za-z])([0-9])/g,"$1-$2").replace(/[_ ]+/g,"-").toLowerCase();function u0(e){const t=e.toLowerCase();if(t.startsWith("http://")||t.startsWith("https://")||t.startsWith("data:")||e.includes("/assets/")||/\.(png|jpe?g|gif|webp|avif|bmp|ico)$/i.test(t))return null;const a=(e.split("/").pop()||"").replace(/\.svg$/,"");return a?c0(a):null}const vs=new Map;function d0(e){const t=typeof e=="string"?u0(e):null,a=t?i0(t)??vs.get(t)??null:null,[r,s]=o.useState(null);return o.useEffect(()=>{if(!t||a)return;let i=!1;return l0(t).then(l=>{vs.set(t,l),i||s(l)}),()=>{i=!0}},[t,a]),a??r}/*! @license DOMPurify 3.4.14 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.4.14/LICENSE */function xs(e,t){(t==null||t>e.length)&&(t=e.length);for(var a=0,r=Array(t);a<t;a++)r[a]=e[a];return r}function p0(e){if(Array.isArray(e))return e}function m0(e,t){var a=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(a!=null){var r,s,i,l,c=[],d=!0,u=!1;try{if(i=(a=a.call(e)).next,t!==0)for(;!(d=(r=i.call(a)).done)&&(c.push(r.value),c.length!==t);d=!0);}catch(p){u=!0,s=p}finally{try{if(!d&&a.return!=null&&(l=a.return(),Object(l)!==l))return}finally{if(u)throw s}}return c}}function h0(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
827
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function f0(e,t){return p0(e)||m0(e,t)||C0(e,t)||h0()}function C0(e,t){if(e){if(typeof e=="string")return xs(e,t);var a={}.toString.call(e).slice(8,-1);return a==="Object"&&e.constructor&&(a=e.constructor.name),a==="Map"||a==="Set"?Array.from(e):a==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?xs(e,t):void 0}}const _s=Object.entries,ws=Object.setPrototypeOf,g0=Object.isFrozen,b0=Object.getPrototypeOf,y0=Object.getOwnPropertyDescriptor;let xt=Object.freeze,_t=Object.seal,qn=Object.create,ks=typeof Reflect<"u"&&Reflect,Cr=ks.apply,gr=ks.construct;xt||(xt=function(t){return t}),_t||(_t=function(t){return t}),Cr||(Cr=function(t,a){for(var r=arguments.length,s=new Array(r>2?r-2:0),i=2;i<r;i++)s[i-2]=arguments[i];return t.apply(a,s)}),gr||(gr=function(t){for(var a=arguments.length,r=new Array(a>1?a-1:0),s=1;s<a;s++)r[s-1]=arguments[s];return new t(...r)});const $n=yt(Array.prototype.forEach),v0=yt(Array.prototype.lastIndexOf),As=yt(Array.prototype.pop),la=yt(Array.prototype.push),x0=yt(Array.prototype.splice),Un=Array.isArray,ca=yt(String.prototype.toLowerCase),br=yt(String.prototype.toString),Bs=yt(String.prototype.match),ua=yt(String.prototype.replace),Ns=yt(String.prototype.indexOf),_0=yt(String.prototype.trim),w0=yt(Number.prototype.toString),k0=yt(Boolean.prototype.toString),Es=typeof BigInt>"u"?null:yt(BigInt.prototype.toString),Ds=typeof Symbol>"u"?null:yt(Symbol.prototype.toString),Ft=yt(Object.prototype.hasOwnProperty),da=yt(Object.prototype.toString),Et=yt(RegExp.prototype.test),Rn=A0(TypeError);function yt(e){return function(t){t instanceof RegExp&&(t.lastIndex=0);for(var a=arguments.length,r=new Array(a>1?a-1:0),s=1;s<a;s++)r[s-1]=arguments[s];return Cr(e,t,r)}}function A0(e){return function(){for(var t=arguments.length,a=new Array(t),r=0;r<t;r++)a[r]=arguments[r];return gr(e,a)}}function Xe(e,t){let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:ca;if(ws&&ws(e,null),!Un(t))return e;let r=t.length;for(;r--;){let s=t[r];if(typeof s=="string"){const i=a(s);i!==s&&(g0(t)||(t[r]=i),s=i)}e[s]=!0}return e}function B0(e){for(let t=0;t<e.length;t++)Ft(e,t)||(e[t]=null);return e}function Gt(e){const t=qn(null);for(const r of _s(e)){var a=f0(r,2);const s=a[0],i=a[1];Ft(e,s)&&(Un(i)?t[s]=B0(i):i&&typeof i=="object"&&i.constructor===Object?t[s]=Gt(i):t[s]=i)}return t}function N0(e){switch(typeof e){case"string":return e;case"number":return w0(e);case"boolean":return k0(e);case"bigint":return Es?Es(e):"0";case"symbol":return Ds?Ds(e):"Symbol()";case"undefined":return da(e);case"function":case"object":{if(e===null)return da(e);const t=e,a=Jt(t,"toString");if(typeof a=="function"){const r=a(t);return typeof r=="string"?r:da(r)}return da(e)}default:return da(e)}}function Jt(e,t){for(;e!==null;){const r=y0(e,t);if(r){if(r.get)return yt(r.get);if(typeof r.value=="function")return yt(r.value)}e=b0(e)}function a(){return null}return a}function E0(e){try{return Et(e,""),!0}catch{return!1}}const Ss=xt(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),yr=xt(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),vr=xt(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),D0=xt(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),xr=xt(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),S0=xt(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),js=xt(["#text"]),Ts=xt(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","command","commandfor","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns"]),_r=xt(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dominant-baseline","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","pointer-events","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-orientation","text-rendering","textlength","type","u1","u2","unicode","values","vector-effect","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),Ms=xt(["accent","accentunder","align","bevelled","close","columnalign","columnlines","columnspacing","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lquote","lspace","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),Ra=xt(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),j0=_t(/{{[\w\W]*|^[\w\W]*}}/g),T0=_t(/<%[\w\W]*|^[\w\W]*%>/g),M0=_t(/\${[\w\W]*/g),L0=_t(/^data-[\-\w.\u00B7-\uFFFF]+$/),$0=_t(/^aria-[\-\w]+$/),Ls=_t(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),R0=_t(/^(?:\w+script|data):/i),P0=_t(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),I0=_t(/^html$/i),F0=_t(/^[a-z][.\w]*(-[.\w]+)+$/i),$s=_t(/<[/\w!]/g),Rs=_t(/<[/\w]/g),O0=_t(/<\/no(script|embed|frames)/i),H0=_t(/\/>/i),Kt={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},Ps=["style","script","xmp","iframe","noembed","noframes","plaintext","noscript"],z0=xt(Xe({},Ps)),V0=(function(){const e={};return $n(Ps,t=>{e[t]=_t(new RegExp("</"+t+"(?=[\\t\\n\\f\\r />])","i"))}),xt(e)})(),W0=function(){return typeof window>"u"?null:window},q0=function(t,a){if(typeof t!="object"||typeof t.createPolicy!="function")return null;let r=null;const s="data-tt-policy-suffix";a&&a.hasAttribute(s)&&(r=a.getAttribute(s));const i="dompurify"+(r?"#"+r:"");try{return t.createPolicy(i,{createHTML(l){return l},createScriptURL(l){return l}})}catch{return console.warn("TrustedTypes policy "+i+" could not be created."),null}},Is=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},An=function(t,a,r,s){return Ft(t,a)&&Un(t[a])?Xe(s.base?Gt(s.base):{},t[a],s.transform):r},wr=function(t,a,r){const s=Ft(t,a)?t[a]:void 0;return s&&typeof s=="object"?Gt(s):r()};function Fs(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:W0();const t=we=>Fs(we);if(t.version="3.4.14",t.removed=[],!e||!e.document||e.document.nodeType!==Kt.document||!e.Element)return t.isSupported=!1,t;let a=e.document;const r=a,s=r.currentScript;e.DocumentFragment;const i=e.HTMLTemplateElement,l=e.Node,c=e.Element,d=e.NodeFilter,u=e.NamedNodeMap;u===void 0&&(e.NamedNodeMap||e.MozNamedAttrMap),e.HTMLFormElement;const p=e.DOMParser,m=e.trustedTypes,h=c.prototype,g=Jt(h,"cloneNode"),y=Jt(h,"remove"),f=Jt(h,"nextSibling"),w=Jt(h,"childNodes"),C=Jt(h,"parentNode"),b=Jt(h,"shadowRoot"),_=Jt(h,"attributes"),x=l&&l.prototype?Jt(l.prototype,"nodeType"):null,k=l&&l.prototype?Jt(l.prototype,"nodeName"):null,v=l&&l.prototype?Jt(l.prototype,"ownerDocument"):null,B=function(S){return x?x(S):S.nodeType},A=function(S){return k?k(S):S.nodeName};if(typeof i=="function"){const we=a.createElement("template");we.content&&we.content.ownerDocument&&(a=we.content.ownerDocument)}let N,E="",T,I=!1,R=0;const V=function(){if(R>0)throw Rn('A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.')},j=function(S){V(),R++;try{return N.createHTML(S)}finally{R--}},M=function(S){V(),R++;try{return N.createScriptURL(S)}finally{R--}},F=function(){return I||(T=q0(m,s),I=!0),T},U=a,Q=U.implementation,z=U.createNodeIterator,G=U.createDocumentFragment,W=U.getElementsByTagName,L=r.importNode;let D=Is();t.isSupported=typeof _s=="function"&&typeof C=="function"&&Q&&Q.createHTMLDocument!==void 0;const O=j0,P=T0,H=M0,$=L0,Y=$0,ee=R0,Z=P0,ae=F0;let _e=Ls,re=null;const ue=Xe({},[...Ss,...yr,...vr,...xr,...js]);let q=null;const oe=Xe({},[...Ts,..._r,...Ms,...Ra]);let de=Object.seal(qn(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),ve=null,ge=null;const Se=Object.seal(qn(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}}));let Ce=!0,Ee=!0,Be=!1,Re=!0,Le=!1,me=!0,ke=!1,Me=!1,Te=null,Ae=null,ie=!1,ye=!1,se=!1,Ie=!1,ze=!0,Ge=!1;const Ze="user-content-";let Ye=!0,Ke=!1,Oe={},Pe=null;const lt=Xe({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","selectedcontent","style","svg","template","thead","title","video","xmp"]);let wt=null;const Dt=Xe({},["audio","video","img","source","image","track"]);let Nt=null;const nt=Xe({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Je="http://www.w3.org/1998/Math/MathML",at="http://www.w3.org/2000/svg",Qe="http://www.w3.org/1999/xhtml";let We=Qe,mt=!1,He=null;const st=Xe({},[Je,at,Qe],br),Ct=xt(["mi","mo","mn","ms","mtext"]);let ut=Xe({},Ct);const vt=xt(["annotation-xml"]);let ot=Xe({},vt);const Fe=Xe({},["title","style","font","a","script"]);let rt=null;const bt=["application/xhtml+xml","text/html"],zt="text/html";let et=null,Yt=null;const kn=a.createElement("form"),Lt=function(S){return S instanceof RegExp||S instanceof Function},tn=function(){let S=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(Yt&&Yt===S)return;(!S||typeof S!="object")&&(S={}),S=Gt(S),rt=bt.indexOf(S.PARSER_MEDIA_TYPE)===-1?zt:S.PARSER_MEDIA_TYPE,et=rt==="application/xhtml+xml"?br:ca,re=An(S,"ALLOWED_TAGS",ue,{transform:et}),q=An(S,"ALLOWED_ATTR",oe,{transform:et}),He=An(S,"ALLOWED_NAMESPACES",st,{transform:br}),Nt=An(S,"ADD_URI_SAFE_ATTR",nt,{transform:et,base:nt}),wt=An(S,"ADD_DATA_URI_TAGS",Dt,{transform:et,base:Dt}),Pe=An(S,"FORBID_CONTENTS",lt,{transform:et}),ve=An(S,"FORBID_TAGS",Gt({}),{transform:et}),ge=An(S,"FORBID_ATTR",Gt({}),{transform:et}),Oe=Ft(S,"USE_PROFILES")?S.USE_PROFILES&&typeof S.USE_PROFILES=="object"?Gt(S.USE_PROFILES):S.USE_PROFILES:!1,Ce=S.ALLOW_ARIA_ATTR!==!1,Ee=S.ALLOW_DATA_ATTR!==!1,Be=S.ALLOW_UNKNOWN_PROTOCOLS||!1,Re=S.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Le=S.SAFE_FOR_TEMPLATES||!1,me=S.SAFE_FOR_XML!==!1,ke=S.WHOLE_DOCUMENT||!1,ye=S.RETURN_DOM||!1,se=S.RETURN_DOM_FRAGMENT||!1,Ie=S.RETURN_TRUSTED_TYPE||!1,ie=S.FORCE_BODY||!1,ze=S.SANITIZE_DOM!==!1,Ge=S.SANITIZE_NAMED_PROPS||!1,Ye=S.KEEP_CONTENT!==!1,Ke=S.IN_PLACE||!1,_e=E0(S.ALLOWED_URI_REGEXP)?S.ALLOWED_URI_REGEXP:Ls,We=typeof S.NAMESPACE=="string"?S.NAMESPACE:Qe,ut=wr(S,"MATHML_TEXT_INTEGRATION_POINTS",()=>Xe({},Ct)),ot=wr(S,"HTML_INTEGRATION_POINTS",()=>Xe({},vt));const X=wr(S,"CUSTOM_ELEMENT_HANDLING",()=>qn(null));if(de=qn(null),Ft(X,"tagNameCheck")&&Lt(X.tagNameCheck)&&(de.tagNameCheck=X.tagNameCheck),Ft(X,"attributeNameCheck")&&Lt(X.attributeNameCheck)&&(de.attributeNameCheck=X.attributeNameCheck),Ft(X,"allowCustomizedBuiltInElements")&&typeof X.allowCustomizedBuiltInElements=="boolean"&&(de.allowCustomizedBuiltInElements=X.allowCustomizedBuiltInElements),_t(de),Le&&(Ee=!1),se&&(ye=!0),Oe&&(re=Xe({},js),q=qn(null),Oe.html===!0&&(Xe(re,Ss),Xe(q,Ts)),Oe.svg===!0&&(Xe(re,yr),Xe(q,_r),Xe(q,Ra)),Oe.svgFilters===!0&&(Xe(re,vr),Xe(q,_r),Xe(q,Ra)),Oe.mathMl===!0&&(Xe(re,xr),Xe(q,Ms),Xe(q,Ra))),Se.tagCheck=null,Se.attributeCheck=null,Ft(S,"ADD_TAGS")&&(typeof S.ADD_TAGS=="function"?Se.tagCheck=S.ADD_TAGS:Un(S.ADD_TAGS)&&(re===ue&&(re=Gt(re)),Xe(re,S.ADD_TAGS,et))),Ft(S,"ADD_ATTR")&&(typeof S.ADD_ATTR=="function"?Se.attributeCheck=S.ADD_ATTR:Un(S.ADD_ATTR)&&(q===oe&&(q=Gt(q)),Xe(q,S.ADD_ATTR,et))),Ft(S,"ADD_FORBID_CONTENTS")&&Un(S.ADD_FORBID_CONTENTS)&&(Pe===lt&&(Pe=Gt(Pe)),Xe(Pe,S.ADD_FORBID_CONTENTS,et)),Ye&&(re["#text"]=!0),ke&&Xe(re,["html","head","body"]),re.table&&(Xe(re,["tbody"]),delete ve.tbody),S.TRUSTED_TYPES_POLICY){if(typeof S.TRUSTED_TYPES_POLICY.createHTML!="function")throw Rn('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof S.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Rn('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');const fe=N;N=S.TRUSTED_TYPES_POLICY;try{E=j("")}catch(je){throw N=fe,je}}else S.TRUSTED_TYPES_POLICY===null?(N=void 0,E=""):(N===void 0&&(N=F()),N&&typeof E=="string"&&(E=j("")));xt&&xt(S),Yt=S},nn=Xe({},[...yr,...vr,...D0]),an=Xe({},[...xr,...S0]),Mn=function(S,X,fe){return X.namespaceURI===Qe?S==="svg":X.namespaceURI===Je?S==="svg"&&(fe==="annotation-xml"||ut[fe]):!!nn[S]},rn=function(S,X,fe){return X.namespaceURI===Qe?S==="math":X.namespaceURI===at?S==="math"&&ot[fe]:!!an[S]},Ln=function(S,X,fe){return X.namespaceURI===at&&!ot[fe]||X.namespaceURI===Je&&!ut[fe]?!1:!an[S]&&(Fe[S]||!nn[S])},$t=function(S){let X=C(S);(!X||!X.tagName)&&(X={namespaceURI:We,tagName:"template"});const fe=ca(S.tagName),je=ca(X.tagName);return He[S.namespaceURI]?S.namespaceURI===at?Mn(fe,X,je):S.namespaceURI===Je?rn(fe,X,je):S.namespaceURI===Qe?Ln(fe,X,je):!!(rt==="application/xhtml+xml"&&He[S.namespaceURI]):!1},gt=function(S){la(t.removed,{element:S});try{C(S).removeChild(S)}catch{if(y(S),!C(S))throw Rn("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place")}},on=function(S,X,fe){try{S.removeAttributeNode(X)}catch{try{S.removeAttribute(fe)}catch{}}},Xt=function(S){Vt(S);const X=w(S);if(X){const je=[];$n(X,$e=>{la(je,$e)}),$n(je,$e=>{try{y($e)}catch{}})}const fe=_(S);if(fe)for(let je=fe.length-1;je>=0;--je){const $e=fe[je],Ve=$e&&$e.name;typeof Ve=="string"&&on(S,$e,Ve)}},St=function(S,X,fe){if(!fe)try{fe=X.getAttributeNode(S)}catch{fe=null}la(t.removed,{attribute:fe||null,from:X});try{fe?X.removeAttributeNode(fe):X.removeAttribute(S)}catch{try{X.removeAttribute(S)}catch{}}if(S==="is")if(ye||se)try{gt(X)}catch{}else try{X.setAttribute(S,"")}catch{}},sn=function(S){const X=_(S);if(X)for(let fe=X.length-1;fe>=0;--fe){const je=X[fe],$e=je&&je.name;typeof $e!="string"||q[et($e)]||on(S,je,$e)}},Vt=function(S){const X=[S];for(;X.length>0;){const fe=X.pop();B(fe)===Kt.element&&sn(fe);const $e=w(fe);if($e)for(let Ve=$e.length-1;Ve>=0;--Ve)X.push($e[Ve])}},Wt=function(S,X){return me?S==="patchsrc"?!0:S==="for"&&X!=="label"&&X!=="output":!1},un=function(S){if(!me)return;const X=[S];for(;X.length>0;){const fe=X.pop(),je=B(fe);if(je===Kt.processingInstruction||je===Kt.comment&&Et(Rs,fe.data)){try{y(fe)}catch{}continue}if(je===Kt.element){const Ve=fe,it=et(A(fe));try{Ve.hasAttribute&&Ve.hasAttribute("patchsrc")&&Ve.removeAttribute("patchsrc"),Ve.hasAttribute&&Ve.hasAttribute("for")&&Wt("for",it)&&Ve.removeAttribute("for")}catch{}}const $e=w(fe);if($e)for(let Ve=$e.length-1;Ve>=0;--Ve)X.push($e[Ve])}},dn=function(S){let X=null,fe=null;if(ie)S="<remove></remove>"+S;else{const Ve=Bs(S,/^[\r\n\t ]+/);fe=Ve&&Ve[0]}rt==="application/xhtml+xml"&&We===Qe&&(S='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+S+"</body></html>");const je=N?j(S):S;if(We===Qe)try{X=new p().parseFromString(je,rt)}catch{}if(!X||!X.documentElement){X=Q.createDocument(We,"template",null);try{X.documentElement.innerHTML=mt?E:je}catch{}}const $e=X.body||X.documentElement;return S&&fe&&$e.insertBefore(a.createTextNode(fe),$e.childNodes[0]||null),We===Qe?W.call(X,ke?"html":"body")[0]:ke?X.documentElement:$e},le=function(S){const X=v?v(S):S.ownerDocument;return z.call(X||S,S,d.SHOW_ELEMENT|d.SHOW_COMMENT|d.SHOW_TEXT|d.SHOW_PROCESSING_INSTRUCTION|d.SHOW_CDATA_SECTION,null)},xe=function(S){return S=ua(S,O," "),S=ua(S,P," "),S=ua(S,H," "),S},K=function(S){var X;S.normalize();const fe=v?v(S):S.ownerDocument,je=z.call(fe||S,S,d.SHOW_TEXT|d.SHOW_COMMENT|d.SHOW_CDATA_SECTION|d.SHOW_PROCESSING_INSTRUCTION,null);let $e=je.nextNode();for(;$e;)$e.data=xe($e.data),$e=je.nextNode();const Ve=(X=S.querySelectorAll)===null||X===void 0?void 0:X.call(S,"template");Ve&&$n(Ve,it=>{he(it.content)&&K(it.content)})},ce=function(S){const X=k?k(S):null;return typeof X!="string"||et(X)!=="form"?!1:typeof S.nodeName!="string"||typeof S.textContent!="string"||typeof S.removeChild!="function"||S.attributes!==_(S)||typeof S.removeAttribute!="function"||typeof S.setAttribute!="function"||typeof S.namespaceURI!="string"||typeof S.insertBefore!="function"||typeof S.hasChildNodes!="function"||S.nodeType!==x(S)||S.childNodes!==w(S)},he=function(S){if(!x||typeof S!="object"||S===null)return!1;try{return x(S)===Kt.documentFragment}catch{return!1}},J=function(S){if(!x||typeof S!="object"||S===null)return!1;try{return typeof x(S)=="number"}catch{return!1}};function ne(we,S,X){we.length!==0&&$n(we,fe=>{fe.call(t,S,X,Yt)})}const Ne=function(S,X){return!!(me&&S.hasChildNodes()&&!J(S.firstElementChild)&&Et($s,S.textContent)&&Et($s,S.innerHTML)||me&&S.namespaceURI===Qe&&z0[X]&&(J(S.firstElementChild)||typeof S.textContent=="string"&&Et(V0[X],S.textContent))||S.nodeType===Kt.processingInstruction||me&&S.nodeType===Kt.comment&&Et(Rs,S.data))},qe=function(S,X){if(S instanceof RegExp)return Et(S,X);if(S instanceof Function){for(var fe=arguments.length,je=new Array(fe>2?fe-2:0),$e=2;$e<fe;$e++)je[$e-2]=arguments[$e];return!!S(X,...je)}return!1},tt=function(S,X,fe){if(!ve[X]&&mn(X)&&qe(de.tagNameCheck,X))return!1;if(Ye&&!Pe[X]){const je=C(S),$e=w(S);if($e&&je){const Ve=$e.length;for(let it=Ve-1;it>=0;--it){const pt=S===fe?g($e[it],!0):$e[it];je.insertBefore(pt,f(S))}}}return gt(S),!0},dt=function(S,X,fe,je){return S.length===0?X:X===fe||X===je?Gt(X):X},kt=function(S,X){return S===X||C(S)!==null?!1:(Ke&&Vt(S),!0)},qt=function(S,X){if(ne(D.beforeSanitizeElements,S,null),kt(S,X))return!0;if(ce(S))return gt(S),!0;const fe=et(A(S));if(re=dt(D.uponSanitizeElement,re,ue,Te),ne(D.uponSanitizeElement,S,{tagName:fe,allowedTags:re}),kt(S,X))return!0;if(Ne(S,fe))return gt(S),!0;if(ve[fe]||!(Se.tagCheck instanceof Function&&Se.tagCheck(fe))&&!re[fe]){const $e=tt(S,fe,X);return $e===!1&&ne(D.afterSanitizeElements,S,null),$e}if(B(S)===Kt.element&&!$t(S)||(fe==="noscript"||fe==="noembed"||fe==="noframes")&&Et(O0,S.innerHTML))return gt(S),!0;if(Le&&S.nodeType===Kt.text){const $e=xe(S.textContent);S.textContent!==$e&&(la(t.removed,{element:S.cloneNode()}),S.textContent=$e)}return ne(D.afterSanitizeElements,S,null),!1},Rt=function(S,X,fe){if(ge[X]||Wt(X,S)||ze&&(X==="id"||X==="name")&&(fe in a||fe in kn))return!1;const je=q[X]||Se.attributeCheck instanceof Function&&Se.attributeCheck(X,S);return Ee&&Et($,X)||Ce&&Et(Y,X)?!0:je?Nt[X]||Et(_e,ua(fe,Z,""))||(X==="src"||X==="xlink:href"||X==="href")&&S!=="script"&&Ns(fe,"data:")===0&&wt[S]||Be&&!Et(ee,ua(fe,Z,""))?!0:!fe:mn(S)&&qe(de.tagNameCheck,S)&&qe(de.attributeNameCheck,X,S)||X==="is"&&de.allowCustomizedBuiltInElements&&qe(de.tagNameCheck,fe)},pn=Xe({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),mn=function(S){return!pn[ca(S)]&&Et(ae,S)},dr=function(S,X,fe,je){if(N&&typeof m=="object"&&typeof m.getAttributeType=="function"&&!fe)switch(m.getAttributeType(S,X)){case"TrustedHTML":return j(je);case"TrustedScriptURL":return M(je)}return je},wu=function(S,X,fe,je){try{fe?S.setAttributeNS(fe,X,je):S.setAttribute(X,je),ce(S)?gt(S):As(t.removed)}catch{St(X,S)}},Xo=function(S){ne(D.beforeSanitizeAttributes,S,null);const X=S.attributes;if(!X||ce(S))return;q=dt(D.uponSanitizeAttribute,q,oe,Ae);const fe={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:q,forceKeepAttr:void 0};let je=X.length;const $e=et(S.nodeName);for(;je--;){const Ve=X[je],it=Ve.name,pt=Ve.namespaceURI,Pt=Ve.value,It=et(it),mr=Pt;let jt=it==="value"?mr:_0(mr);if(fe.attrName=It,fe.attrValue=jt,fe.keepAttr=!0,fe.forceKeepAttr=void 0,ne(D.uponSanitizeAttribute,S,fe),jt=fe.attrValue,Ge&&(It==="id"||It==="name")&&Ns(jt,Ze)!==0&&(St(it,S,Ve),jt=Ze+jt),me&&Et(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,jt)){St(it,S,Ve);continue}if(It==="attributename"&&Bs(jt,"href")){St(it,S,Ve);continue}if(!fe.forceKeepAttr){if(!fe.keepAttr){St(it,S,Ve);continue}if(!Re&&Et(H0,jt)){St(it,S,Ve);continue}if(Le&&(jt=xe(jt)),!Rt($e,It,jt)){St(it,S,Ve);continue}jt=dr($e,It,pt,jt),jt!==mr&&wu(S,it,pt,jt)}}ne(D.afterSanitizeAttributes,S,null)},$a=function(S){let X=null;const fe=le(S);for(ne(D.beforeSanitizeShadowDOM,S,null);X=fe.nextNode();)if(ne(D.uponSanitizeShadowNode,X,null),qt(X,S),Xo(X),he(X.content)&&$a(X.content),B(X)===Kt.element){const je=b(X);he(je)&&(pr(je),$a(je))}ne(D.afterSanitizeShadowDOM,S,null)},pr=function(S){const X=[{node:S,shadow:null}];for(;X.length>0;){const fe=X.pop();if(fe.shadow){$a(fe.shadow);continue}const je=fe.node,Ve=B(je)===Kt.element,it=w(je);if(it)for(let pt=it.length-1;pt>=0;--pt)X.push({node:it[pt],shadow:null});if(Ve){const pt=k?k(je):null;if(typeof pt=="string"&&et(pt)==="template"){const Pt=je.content;he(Pt)&&X.push({node:Pt,shadow:null})}}if(Ve){const pt=b(je);he(pt)&&X.push({node:null,shadow:pt},{node:pt,shadow:null})}}};return t.sanitize=function(we){let S=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},X=null,fe=null,je=null,$e=null;if(mt=!we,mt&&(we="<!-->"),typeof we!="string"&&!J(we)&&(we=N0(we),typeof we!="string"))throw Rn("dirty is not a string, aborting");if(!t.isSupported)return we;Me?(re=Te,q=Ae):tn(S),(D.uponSanitizeElement.length>0||D.uponSanitizeAttribute.length>0)&&(re=Gt(re)),D.uponSanitizeAttribute.length>0&&(q=Gt(q)),t.removed=[];const Ve=Ke&&typeof we!="string"&&J(we);if(Ve){un(we);const Pt=A(we);if(typeof Pt=="string"){const It=et(Pt);if(!re[It]||ve[It])throw Xt(we),Rn("root node is forbidden and cannot be sanitized in-place")}if(ce(we))throw Xt(we),Rn("root node is clobbered and cannot be sanitized in-place");try{pr(we)}catch(It){throw Xt(we),It}}else if(J(we))X=dn("<!---->"),fe=X.ownerDocument.importNode(we,!0),fe.nodeType===Kt.element&&fe.nodeName==="BODY"||fe.nodeName==="HTML"?X=fe:X.appendChild(fe),pr(fe);else{if(!ye&&!Le&&!ke&&we.indexOf("<")===-1)return N&&Ie?j(we):we;if(X=dn(we),!X)return ye?null:Ie?E:""}X&&ie&>(X.firstChild);const it=Ve?we:X;try{const Pt=le(it);for(;je=Pt.nextNode();)qt(je,it),Xo(je),he(je.content)&&$a(je.content)}catch(Pt){throw Ve&&(Xt(we),$n(t.removed,It=>{It.element&&Vt(It.element)})),Pt}if(Ve)return $n(t.removed,Pt=>{Pt.element&&Vt(Pt.element)}),Le&&K(we),we;if(ye){if(Le&&K(X),se)for($e=G.call(X.ownerDocument);X.firstChild;)$e.appendChild(X.firstChild);else $e=X;return(q.shadowroot||q.shadowrootmode)&&($e=L.call(r,$e,!0)),$e}let pt=ke?X.outerHTML:X.innerHTML;return ke&&re["!doctype"]&&X.ownerDocument&&X.ownerDocument.doctype&&X.ownerDocument.doctype.name&&Et(I0,X.ownerDocument.doctype.name)&&(pt="<!DOCTYPE "+X.ownerDocument.doctype.name+`>
|
|
828
|
-
`+pt),Le&&(pt=xe(pt)),
|
|
827
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function f0(e,t){return p0(e)||m0(e,t)||C0(e,t)||h0()}function C0(e,t){if(e){if(typeof e=="string")return xs(e,t);var a={}.toString.call(e).slice(8,-1);return a==="Object"&&e.constructor&&(a=e.constructor.name),a==="Map"||a==="Set"?Array.from(e):a==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?xs(e,t):void 0}}const _s=Object.entries,ws=Object.setPrototypeOf,g0=Object.isFrozen,b0=Object.getPrototypeOf,y0=Object.getOwnPropertyDescriptor;let xt=Object.freeze,_t=Object.seal,qn=Object.create,ks=typeof Reflect<"u"&&Reflect,Cr=ks.apply,gr=ks.construct;xt||(xt=function(t){return t}),_t||(_t=function(t){return t}),Cr||(Cr=function(t,a){for(var r=arguments.length,s=new Array(r>2?r-2:0),i=2;i<r;i++)s[i-2]=arguments[i];return t.apply(a,s)}),gr||(gr=function(t){for(var a=arguments.length,r=new Array(a>1?a-1:0),s=1;s<a;s++)r[s-1]=arguments[s];return new t(...r)});const $n=yt(Array.prototype.forEach),v0=yt(Array.prototype.lastIndexOf),As=yt(Array.prototype.pop),la=yt(Array.prototype.push),x0=yt(Array.prototype.splice),Un=Array.isArray,ca=yt(String.prototype.toLowerCase),br=yt(String.prototype.toString),Bs=yt(String.prototype.match),ua=yt(String.prototype.replace),Ns=yt(String.prototype.indexOf),_0=yt(String.prototype.trim),w0=yt(Number.prototype.toString),k0=yt(Boolean.prototype.toString),Es=typeof BigInt>"u"?null:yt(BigInt.prototype.toString),Ds=typeof Symbol>"u"?null:yt(Symbol.prototype.toString),Ft=yt(Object.prototype.hasOwnProperty),da=yt(Object.prototype.toString),Et=yt(RegExp.prototype.test),Rn=A0(TypeError);function yt(e){return function(t){t instanceof RegExp&&(t.lastIndex=0);for(var a=arguments.length,r=new Array(a>1?a-1:0),s=1;s<a;s++)r[s-1]=arguments[s];return Cr(e,t,r)}}function A0(e){return function(){for(var t=arguments.length,a=new Array(t),r=0;r<t;r++)a[r]=arguments[r];return gr(e,a)}}function Xe(e,t){let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:ca;if(ws&&ws(e,null),!Un(t))return e;let r=t.length;for(;r--;){let s=t[r];if(typeof s=="string"){const i=a(s);i!==s&&(g0(t)||(t[r]=i),s=i)}e[s]=!0}return e}function B0(e){for(let t=0;t<e.length;t++)Ft(e,t)||(e[t]=null);return e}function Gt(e){const t=qn(null);for(const r of _s(e)){var a=f0(r,2);const s=a[0],i=a[1];Ft(e,s)&&(Un(i)?t[s]=B0(i):i&&typeof i=="object"&&i.constructor===Object?t[s]=Gt(i):t[s]=i)}return t}function N0(e){switch(typeof e){case"string":return e;case"number":return w0(e);case"boolean":return k0(e);case"bigint":return Es?Es(e):"0";case"symbol":return Ds?Ds(e):"Symbol()";case"undefined":return da(e);case"function":case"object":{if(e===null)return da(e);const t=e,a=Jt(t,"toString");if(typeof a=="function"){const r=a(t);return typeof r=="string"?r:da(r)}return da(e)}default:return da(e)}}function Jt(e,t){for(;e!==null;){const r=y0(e,t);if(r){if(r.get)return yt(r.get);if(typeof r.value=="function")return yt(r.value)}e=b0(e)}function a(){return null}return a}function E0(e){try{return Et(e,""),!0}catch{return!1}}const Ss=xt(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),yr=xt(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),vr=xt(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),D0=xt(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),xr=xt(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),S0=xt(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),js=xt(["#text"]),Ts=xt(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","command","commandfor","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns"]),_r=xt(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dominant-baseline","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","pointer-events","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-orientation","text-rendering","textlength","type","u1","u2","unicode","values","vector-effect","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),Ms=xt(["accent","accentunder","align","bevelled","close","columnalign","columnlines","columnspacing","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lquote","lspace","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),Ra=xt(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),j0=_t(/{{[\w\W]*|^[\w\W]*}}/g),T0=_t(/<%[\w\W]*|^[\w\W]*%>/g),M0=_t(/\${[\w\W]*/g),L0=_t(/^data-[\-\w.\u00B7-\uFFFF]+$/),$0=_t(/^aria-[\-\w]+$/),Ls=_t(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),R0=_t(/^(?:\w+script|data):/i),P0=_t(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),I0=_t(/^html$/i),F0=_t(/^[a-z][.\w]*(-[.\w]+)+$/i),$s=_t(/<[/\w!]/g),Rs=_t(/<[/\w]/g),O0=_t(/<\/no(script|embed|frames)/i),H0=_t(/\/>/i),Kt={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},Ps=["style","script","xmp","iframe","noembed","noframes","plaintext","noscript"],z0=xt(Xe({},Ps)),V0=(function(){const e={};return $n(Ps,t=>{e[t]=_t(new RegExp("</"+t+"(?=[\\t\\n\\f\\r />])","i"))}),xt(e)})(),W0=function(){return typeof window>"u"?null:window},q0=function(t,a){if(typeof t!="object"||typeof t.createPolicy!="function")return null;let r=null;const s="data-tt-policy-suffix";a&&a.hasAttribute(s)&&(r=a.getAttribute(s));const i="dompurify"+(r?"#"+r:"");try{return t.createPolicy(i,{createHTML(l){return l},createScriptURL(l){return l}})}catch{return console.warn("TrustedTypes policy "+i+" could not be created."),null}},Is=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},An=function(t,a,r,s){return Ft(t,a)&&Un(t[a])?Xe(s.base?Gt(s.base):{},t[a],s.transform):r},wr=function(t,a,r){const s=Ft(t,a)?t[a]:void 0;return s&&typeof s=="object"?Gt(s):r()};function Fs(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:W0();const t=we=>Fs(we);if(t.version="3.4.14",t.removed=[],!e||!e.document||e.document.nodeType!==Kt.document||!e.Element)return t.isSupported=!1,t;let a=e.document;const r=a,s=r.currentScript;e.DocumentFragment;const i=e.HTMLTemplateElement,l=e.Node,c=e.Element,d=e.NodeFilter,u=e.NamedNodeMap;u===void 0&&(e.NamedNodeMap||e.MozNamedAttrMap),e.HTMLFormElement;const p=e.DOMParser,m=e.trustedTypes,f=c.prototype,g=Jt(f,"cloneNode"),y=Jt(f,"remove"),h=Jt(f,"nextSibling"),w=Jt(f,"childNodes"),C=Jt(f,"parentNode"),b=Jt(f,"shadowRoot"),x=Jt(f,"attributes"),v=l&&l.prototype?Jt(l.prototype,"nodeType"):null,A=l&&l.prototype?Jt(l.prototype,"nodeName"):null,k=l&&l.prototype?Jt(l.prototype,"ownerDocument"):null,N=function(T){return v?v(T):T.nodeType},_=function(T){return A?A(T):T.nodeName};if(typeof i=="function"){const we=a.createElement("template");we.content&&we.content.ownerDocument&&(a=we.content.ownerDocument)}let B,E="",P,H=!1,S=0;const V=function(){if(S>0)throw Rn('A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.')},j=function(T){V(),S++;try{return B.createHTML(T)}finally{S--}},M=function(T){V(),S++;try{return B.createScriptURL(T)}finally{S--}},I=function(){return H||(P=q0(m,s),H=!0),P},G=a,Q=G.implementation,z=G.createNodeIterator,q=G.createDocumentFragment,W=G.getElementsByTagName,L=r.importNode;let D=Is();t.isSupported=typeof _s=="function"&&typeof C=="function"&&Q&&Q.createHTMLDocument!==void 0;const F=j0,R=T0,O=M0,$=L0,Y=$0,ee=R0,Z=P0,ae=F0;let _e=Ls,re=null;const ue=Xe({},[...Ss,...yr,...vr,...xr,...js]);let U=null;const oe=Xe({},[...Ts,..._r,...Ms,...Ra]);let de=Object.seal(qn(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),ve=null,ge=null;const Se=Object.seal(qn(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}}));let Ce=!0,Ee=!0,Be=!1,Re=!0,Le=!1,me=!0,ke=!1,Me=!1,Te=null,Ae=null,ie=!1,ye=!1,se=!1,Ie=!1,ze=!0,Ge=!1;const Ze="user-content-";let Ye=!0,Ke=!1,Oe={},Pe=null;const lt=Xe({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","selectedcontent","style","svg","template","thead","title","video","xmp"]);let wt=null;const Dt=Xe({},["audio","video","img","source","image","track"]);let Nt=null;const nt=Xe({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Je="http://www.w3.org/1998/Math/MathML",at="http://www.w3.org/2000/svg",Qe="http://www.w3.org/1999/xhtml";let We=Qe,mt=!1,He=null;const st=Xe({},[Je,at,Qe],br),Ct=xt(["mi","mo","mn","ms","mtext"]);let ut=Xe({},Ct);const vt=xt(["annotation-xml"]);let ot=Xe({},vt);const Fe=Xe({},["title","style","font","a","script"]);let rt=null;const bt=["application/xhtml+xml","text/html"],zt="text/html";let et=null,Yt=null;const kn=a.createElement("form"),Lt=function(T){return T instanceof RegExp||T instanceof Function},nn=function(){let T=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(Yt&&Yt===T)return;(!T||typeof T!="object")&&(T={}),T=Gt(T),rt=bt.indexOf(T.PARSER_MEDIA_TYPE)===-1?zt:T.PARSER_MEDIA_TYPE,et=rt==="application/xhtml+xml"?br:ca,re=An(T,"ALLOWED_TAGS",ue,{transform:et}),U=An(T,"ALLOWED_ATTR",oe,{transform:et}),He=An(T,"ALLOWED_NAMESPACES",st,{transform:br}),Nt=An(T,"ADD_URI_SAFE_ATTR",nt,{transform:et,base:nt}),wt=An(T,"ADD_DATA_URI_TAGS",Dt,{transform:et,base:Dt}),Pe=An(T,"FORBID_CONTENTS",lt,{transform:et}),ve=An(T,"FORBID_TAGS",Gt({}),{transform:et}),ge=An(T,"FORBID_ATTR",Gt({}),{transform:et}),Oe=Ft(T,"USE_PROFILES")?T.USE_PROFILES&&typeof T.USE_PROFILES=="object"?Gt(T.USE_PROFILES):T.USE_PROFILES:!1,Ce=T.ALLOW_ARIA_ATTR!==!1,Ee=T.ALLOW_DATA_ATTR!==!1,Be=T.ALLOW_UNKNOWN_PROTOCOLS||!1,Re=T.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Le=T.SAFE_FOR_TEMPLATES||!1,me=T.SAFE_FOR_XML!==!1,ke=T.WHOLE_DOCUMENT||!1,ye=T.RETURN_DOM||!1,se=T.RETURN_DOM_FRAGMENT||!1,Ie=T.RETURN_TRUSTED_TYPE||!1,ie=T.FORCE_BODY||!1,ze=T.SANITIZE_DOM!==!1,Ge=T.SANITIZE_NAMED_PROPS||!1,Ye=T.KEEP_CONTENT!==!1,Ke=T.IN_PLACE||!1,_e=E0(T.ALLOWED_URI_REGEXP)?T.ALLOWED_URI_REGEXP:Ls,We=typeof T.NAMESPACE=="string"?T.NAMESPACE:Qe,ut=wr(T,"MATHML_TEXT_INTEGRATION_POINTS",()=>Xe({},Ct)),ot=wr(T,"HTML_INTEGRATION_POINTS",()=>Xe({},vt));const X=wr(T,"CUSTOM_ELEMENT_HANDLING",()=>qn(null));if(de=qn(null),Ft(X,"tagNameCheck")&&Lt(X.tagNameCheck)&&(de.tagNameCheck=X.tagNameCheck),Ft(X,"attributeNameCheck")&&Lt(X.attributeNameCheck)&&(de.attributeNameCheck=X.attributeNameCheck),Ft(X,"allowCustomizedBuiltInElements")&&typeof X.allowCustomizedBuiltInElements=="boolean"&&(de.allowCustomizedBuiltInElements=X.allowCustomizedBuiltInElements),_t(de),Le&&(Ee=!1),se&&(ye=!0),Oe&&(re=Xe({},js),U=qn(null),Oe.html===!0&&(Xe(re,Ss),Xe(U,Ts)),Oe.svg===!0&&(Xe(re,yr),Xe(U,_r),Xe(U,Ra)),Oe.svgFilters===!0&&(Xe(re,vr),Xe(U,_r),Xe(U,Ra)),Oe.mathMl===!0&&(Xe(re,xr),Xe(U,Ms),Xe(U,Ra))),Se.tagCheck=null,Se.attributeCheck=null,Ft(T,"ADD_TAGS")&&(typeof T.ADD_TAGS=="function"?Se.tagCheck=T.ADD_TAGS:Un(T.ADD_TAGS)&&(re===ue&&(re=Gt(re)),Xe(re,T.ADD_TAGS,et))),Ft(T,"ADD_ATTR")&&(typeof T.ADD_ATTR=="function"?Se.attributeCheck=T.ADD_ATTR:Un(T.ADD_ATTR)&&(U===oe&&(U=Gt(U)),Xe(U,T.ADD_ATTR,et))),Ft(T,"ADD_FORBID_CONTENTS")&&Un(T.ADD_FORBID_CONTENTS)&&(Pe===lt&&(Pe=Gt(Pe)),Xe(Pe,T.ADD_FORBID_CONTENTS,et)),Ye&&(re["#text"]=!0),ke&&Xe(re,["html","head","body"]),re.table&&(Xe(re,["tbody"]),delete ve.tbody),T.TRUSTED_TYPES_POLICY){if(typeof T.TRUSTED_TYPES_POLICY.createHTML!="function")throw Rn('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof T.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Rn('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');const fe=B;B=T.TRUSTED_TYPES_POLICY;try{E=j("")}catch(je){throw B=fe,je}}else T.TRUSTED_TYPES_POLICY===null?(B=void 0,E=""):(B===void 0&&(B=I()),B&&typeof E=="string"&&(E=j("")));xt&&xt(T),Yt=T},an=Xe({},[...yr,...vr,...D0]),rn=Xe({},[...xr,...S0]),Mn=function(T,X,fe){return X.namespaceURI===Qe?T==="svg":X.namespaceURI===Je?T==="svg"&&(fe==="annotation-xml"||ut[fe]):!!an[T]},on=function(T,X,fe){return X.namespaceURI===Qe?T==="math":X.namespaceURI===at?T==="math"&&ot[fe]:!!rn[T]},Ln=function(T,X,fe){return X.namespaceURI===at&&!ot[fe]||X.namespaceURI===Je&&!ut[fe]?!1:!rn[T]&&(Fe[T]||!an[T])},$t=function(T){let X=C(T);(!X||!X.tagName)&&(X={namespaceURI:We,tagName:"template"});const fe=ca(T.tagName),je=ca(X.tagName);return He[T.namespaceURI]?T.namespaceURI===at?Mn(fe,X,je):T.namespaceURI===Je?on(fe,X,je):T.namespaceURI===Qe?Ln(fe,X,je):!!(rt==="application/xhtml+xml"&&He[T.namespaceURI]):!1},gt=function(T){la(t.removed,{element:T});try{C(T).removeChild(T)}catch{if(y(T),!C(T))throw Rn("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place")}},sn=function(T,X,fe){try{T.removeAttributeNode(X)}catch{try{T.removeAttribute(fe)}catch{}}},Xt=function(T){Vt(T);const X=w(T);if(X){const je=[];$n(X,$e=>{la(je,$e)}),$n(je,$e=>{try{y($e)}catch{}})}const fe=x(T);if(fe)for(let je=fe.length-1;je>=0;--je){const $e=fe[je],Ve=$e&&$e.name;typeof Ve=="string"&&sn(T,$e,Ve)}},St=function(T,X,fe){if(!fe)try{fe=X.getAttributeNode(T)}catch{fe=null}la(t.removed,{attribute:fe||null,from:X});try{fe?X.removeAttributeNode(fe):X.removeAttribute(T)}catch{try{X.removeAttribute(T)}catch{}}if(T==="is")if(ye||se)try{gt(X)}catch{}else try{X.setAttribute(T,"")}catch{}},ln=function(T){const X=x(T);if(X)for(let fe=X.length-1;fe>=0;--fe){const je=X[fe],$e=je&&je.name;typeof $e!="string"||U[et($e)]||sn(T,je,$e)}},Vt=function(T){const X=[T];for(;X.length>0;){const fe=X.pop();N(fe)===Kt.element&&ln(fe);const $e=w(fe);if($e)for(let Ve=$e.length-1;Ve>=0;--Ve)X.push($e[Ve])}},Wt=function(T,X){return me?T==="patchsrc"?!0:T==="for"&&X!=="label"&&X!=="output":!1},un=function(T){if(!me)return;const X=[T];for(;X.length>0;){const fe=X.pop(),je=N(fe);if(je===Kt.processingInstruction||je===Kt.comment&&Et(Rs,fe.data)){try{y(fe)}catch{}continue}if(je===Kt.element){const Ve=fe,it=et(_(fe));try{Ve.hasAttribute&&Ve.hasAttribute("patchsrc")&&Ve.removeAttribute("patchsrc"),Ve.hasAttribute&&Ve.hasAttribute("for")&&Wt("for",it)&&Ve.removeAttribute("for")}catch{}}const $e=w(fe);if($e)for(let Ve=$e.length-1;Ve>=0;--Ve)X.push($e[Ve])}},dn=function(T){let X=null,fe=null;if(ie)T="<remove></remove>"+T;else{const Ve=Bs(T,/^[\r\n\t ]+/);fe=Ve&&Ve[0]}rt==="application/xhtml+xml"&&We===Qe&&(T='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+T+"</body></html>");const je=B?j(T):T;if(We===Qe)try{X=new p().parseFromString(je,rt)}catch{}if(!X||!X.documentElement){X=Q.createDocument(We,"template",null);try{X.documentElement.innerHTML=mt?E:je}catch{}}const $e=X.body||X.documentElement;return T&&fe&&$e.insertBefore(a.createTextNode(fe),$e.childNodes[0]||null),We===Qe?W.call(X,ke?"html":"body")[0]:ke?X.documentElement:$e},le=function(T){const X=k?k(T):T.ownerDocument;return z.call(X||T,T,d.SHOW_ELEMENT|d.SHOW_COMMENT|d.SHOW_TEXT|d.SHOW_PROCESSING_INSTRUCTION|d.SHOW_CDATA_SECTION,null)},xe=function(T){return T=ua(T,F," "),T=ua(T,R," "),T=ua(T,O," "),T},K=function(T){var X;T.normalize();const fe=k?k(T):T.ownerDocument,je=z.call(fe||T,T,d.SHOW_TEXT|d.SHOW_COMMENT|d.SHOW_CDATA_SECTION|d.SHOW_PROCESSING_INSTRUCTION,null);let $e=je.nextNode();for(;$e;)$e.data=xe($e.data),$e=je.nextNode();const Ve=(X=T.querySelectorAll)===null||X===void 0?void 0:X.call(T,"template");Ve&&$n(Ve,it=>{he(it.content)&&K(it.content)})},ce=function(T){const X=A?A(T):null;return typeof X!="string"||et(X)!=="form"?!1:typeof T.nodeName!="string"||typeof T.textContent!="string"||typeof T.removeChild!="function"||T.attributes!==x(T)||typeof T.removeAttribute!="function"||typeof T.setAttribute!="function"||typeof T.namespaceURI!="string"||typeof T.insertBefore!="function"||typeof T.hasChildNodes!="function"||T.nodeType!==v(T)||T.childNodes!==w(T)},he=function(T){if(!v||typeof T!="object"||T===null)return!1;try{return v(T)===Kt.documentFragment}catch{return!1}},J=function(T){if(!v||typeof T!="object"||T===null)return!1;try{return typeof v(T)=="number"}catch{return!1}};function ne(we,T,X){we.length!==0&&$n(we,fe=>{fe.call(t,T,X,Yt)})}const Ne=function(T,X){return!!(me&&T.hasChildNodes()&&!J(T.firstElementChild)&&Et($s,T.textContent)&&Et($s,T.innerHTML)||me&&T.namespaceURI===Qe&&z0[X]&&(J(T.firstElementChild)||typeof T.textContent=="string"&&Et(V0[X],T.textContent))||T.nodeType===Kt.processingInstruction||me&&T.nodeType===Kt.comment&&Et(Rs,T.data))},qe=function(T,X){if(T instanceof RegExp)return Et(T,X);if(T instanceof Function){for(var fe=arguments.length,je=new Array(fe>2?fe-2:0),$e=2;$e<fe;$e++)je[$e-2]=arguments[$e];return!!T(X,...je)}return!1},tt=function(T,X,fe){if(!ve[X]&&mn(X)&&qe(de.tagNameCheck,X))return!1;if(Ye&&!Pe[X]){const je=C(T),$e=w(T);if($e&&je){const Ve=$e.length;for(let it=Ve-1;it>=0;--it){const pt=T===fe?g($e[it],!0):$e[it];je.insertBefore(pt,h(T))}}}return gt(T),!0},dt=function(T,X,fe,je){return T.length===0?X:X===fe||X===je?Gt(X):X},kt=function(T,X){return T===X||C(T)!==null?!1:(Ke&&Vt(T),!0)},qt=function(T,X){if(ne(D.beforeSanitizeElements,T,null),kt(T,X))return!0;if(ce(T))return gt(T),!0;const fe=et(_(T));if(re=dt(D.uponSanitizeElement,re,ue,Te),ne(D.uponSanitizeElement,T,{tagName:fe,allowedTags:re}),kt(T,X))return!0;if(Ne(T,fe))return gt(T),!0;if(ve[fe]||!(Se.tagCheck instanceof Function&&Se.tagCheck(fe))&&!re[fe]){const $e=tt(T,fe,X);return $e===!1&&ne(D.afterSanitizeElements,T,null),$e}if(N(T)===Kt.element&&!$t(T)||(fe==="noscript"||fe==="noembed"||fe==="noframes")&&Et(O0,T.innerHTML))return gt(T),!0;if(Le&&T.nodeType===Kt.text){const $e=xe(T.textContent);T.textContent!==$e&&(la(t.removed,{element:T.cloneNode()}),T.textContent=$e)}return ne(D.afterSanitizeElements,T,null),!1},Rt=function(T,X,fe){if(ge[X]||Wt(X,T)||ze&&(X==="id"||X==="name")&&(fe in a||fe in kn))return!1;const je=U[X]||Se.attributeCheck instanceof Function&&Se.attributeCheck(X,T);return Ee&&Et($,X)||Ce&&Et(Y,X)?!0:je?Nt[X]||Et(_e,ua(fe,Z,""))||(X==="src"||X==="xlink:href"||X==="href")&&T!=="script"&&Ns(fe,"data:")===0&&wt[T]||Be&&!Et(ee,ua(fe,Z,""))?!0:!fe:mn(T)&&qe(de.tagNameCheck,T)&&qe(de.attributeNameCheck,X,T)||X==="is"&&de.allowCustomizedBuiltInElements&&qe(de.tagNameCheck,fe)},pn=Xe({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),mn=function(T){return!pn[ca(T)]&&Et(ae,T)},dr=function(T,X,fe,je){if(B&&typeof m=="object"&&typeof m.getAttributeType=="function"&&!fe)switch(m.getAttributeType(T,X)){case"TrustedHTML":return j(je);case"TrustedScriptURL":return M(je)}return je},wu=function(T,X,fe,je){try{fe?T.setAttributeNS(fe,X,je):T.setAttribute(X,je),ce(T)?gt(T):As(t.removed)}catch{St(X,T)}},Xo=function(T){ne(D.beforeSanitizeAttributes,T,null);const X=T.attributes;if(!X||ce(T))return;U=dt(D.uponSanitizeAttribute,U,oe,Ae);const fe={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:U,forceKeepAttr:void 0};let je=X.length;const $e=et(T.nodeName);for(;je--;){const Ve=X[je],it=Ve.name,pt=Ve.namespaceURI,Pt=Ve.value,It=et(it),mr=Pt;let jt=it==="value"?mr:_0(mr);if(fe.attrName=It,fe.attrValue=jt,fe.keepAttr=!0,fe.forceKeepAttr=void 0,ne(D.uponSanitizeAttribute,T,fe),jt=fe.attrValue,Ge&&(It==="id"||It==="name")&&Ns(jt,Ze)!==0&&(St(it,T,Ve),jt=Ze+jt),me&&Et(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,jt)){St(it,T,Ve);continue}if(It==="attributename"&&Bs(jt,"href")){St(it,T,Ve);continue}if(!fe.forceKeepAttr){if(!fe.keepAttr){St(it,T,Ve);continue}if(!Re&&Et(H0,jt)){St(it,T,Ve);continue}if(Le&&(jt=xe(jt)),!Rt($e,It,jt)){St(it,T,Ve);continue}jt=dr($e,It,pt,jt),jt!==mr&&wu(T,it,pt,jt)}}ne(D.afterSanitizeAttributes,T,null)},$a=function(T){let X=null;const fe=le(T);for(ne(D.beforeSanitizeShadowDOM,T,null);X=fe.nextNode();)if(ne(D.uponSanitizeShadowNode,X,null),qt(X,T),Xo(X),he(X.content)&&$a(X.content),N(X)===Kt.element){const je=b(X);he(je)&&(pr(je),$a(je))}ne(D.afterSanitizeShadowDOM,T,null)},pr=function(T){const X=[{node:T,shadow:null}];for(;X.length>0;){const fe=X.pop();if(fe.shadow){$a(fe.shadow);continue}const je=fe.node,Ve=N(je)===Kt.element,it=w(je);if(it)for(let pt=it.length-1;pt>=0;--pt)X.push({node:it[pt],shadow:null});if(Ve){const pt=A?A(je):null;if(typeof pt=="string"&&et(pt)==="template"){const Pt=je.content;he(Pt)&&X.push({node:Pt,shadow:null})}}if(Ve){const pt=b(je);he(pt)&&X.push({node:null,shadow:pt},{node:pt,shadow:null})}}};return t.sanitize=function(we){let T=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},X=null,fe=null,je=null,$e=null;if(mt=!we,mt&&(we="<!-->"),typeof we!="string"&&!J(we)&&(we=N0(we),typeof we!="string"))throw Rn("dirty is not a string, aborting");if(!t.isSupported)return we;Me?(re=Te,U=Ae):nn(T),(D.uponSanitizeElement.length>0||D.uponSanitizeAttribute.length>0)&&(re=Gt(re)),D.uponSanitizeAttribute.length>0&&(U=Gt(U)),t.removed=[];const Ve=Ke&&typeof we!="string"&&J(we);if(Ve){un(we);const Pt=_(we);if(typeof Pt=="string"){const It=et(Pt);if(!re[It]||ve[It])throw Xt(we),Rn("root node is forbidden and cannot be sanitized in-place")}if(ce(we))throw Xt(we),Rn("root node is clobbered and cannot be sanitized in-place");try{pr(we)}catch(It){throw Xt(we),It}}else if(J(we))X=dn("<!---->"),fe=X.ownerDocument.importNode(we,!0),fe.nodeType===Kt.element&&fe.nodeName==="BODY"||fe.nodeName==="HTML"?X=fe:X.appendChild(fe),pr(fe);else{if(!ye&&!Le&&!ke&&we.indexOf("<")===-1)return B&&Ie?j(we):we;if(X=dn(we),!X)return ye?null:Ie?E:""}X&&ie&>(X.firstChild);const it=Ve?we:X;try{const Pt=le(it);for(;je=Pt.nextNode();)qt(je,it),Xo(je),he(je.content)&&$a(je.content)}catch(Pt){throw Ve&&(Xt(we),$n(t.removed,It=>{It.element&&Vt(It.element)})),Pt}if(Ve)return $n(t.removed,Pt=>{Pt.element&&Vt(Pt.element)}),Le&&K(we),we;if(ye){if(Le&&K(X),se)for($e=q.call(X.ownerDocument);X.firstChild;)$e.appendChild(X.firstChild);else $e=X;return(U.shadowroot||U.shadowrootmode)&&($e=L.call(r,$e,!0)),$e}let pt=ke?X.outerHTML:X.innerHTML;return ke&&re["!doctype"]&&X.ownerDocument&&X.ownerDocument.doctype&&X.ownerDocument.doctype.name&&Et(I0,X.ownerDocument.doctype.name)&&(pt="<!DOCTYPE "+X.ownerDocument.doctype.name+`>
|
|
828
|
+
`+pt),Le&&(pt=xe(pt)),B&&Ie?j(pt):pt},t.setConfig=function(){let we=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};nn(we),Me=!0,Te=re,Ae=U},t.clearConfig=function(){Yt=null,Me=!1,Te=null,Ae=null,B=P,E=""},t.isValidAttribute=function(we,T,X){Yt||nn({});const fe=et(we),je=et(T);return Rt(fe,je,X)},t.addHook=function(we,T){typeof T=="function"&&Ft(D,we)&&la(D[we],T)},t.removeHook=function(we,T){if(Ft(D,we)){if(T!==void 0){const X=v0(D[we],T);return X===-1?void 0:x0(D[we],X,1)[0]}return As(D[we])}},t.removeHooks=function(we){Ft(D,we)&&(D[we]=[])},t.removeAllHooks=function(){D=Is()},t}var kr=Fs();const U0=/^(?:[a-z]+:)?\/\//i,G0="__ihab_core_asset_base_url__";function K0(){return globalThis[G0]??""}function Ar(e){const t=String(e||"").trim();if(!t)return"";if(U0.test(t)||t.startsWith("data:")||t.startsWith("blob:"))return t;const a=t.startsWith("/")?t:`/${t}`,r=K0();return r?`${r}${a}`:a}const Os="__ihab_core_storage_resolvers__";function pa(){return globalThis[Os]??null}function Y0(e){globalThis[Os]=e}let Hs=class extends Error{constructor(t){super(`
|
|
829
829
|
[ihabdevteam-core] ${t}() \uD638\uCD9C \uC2E4\uD328 \u2014 configureStorage()\uAC00 \uC124\uC815\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4.
|
|
830
830
|
|
|
831
831
|
\uC571 \uCD08\uAE30\uD654 \uC2DC\uC810(main.tsx \uB4F1)\uC5D0 \uC544\uB798\uC640 \uAC19\uC774 \uD55C \uBC88 \uD638\uCD9C\uD558\uC138\uC694:
|
|
@@ -844,20 +844,20 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
844
844
|
\uC124\uCE58 \uBA85\uB839\uC5B4 (\uC2A4\uD1A0\uB9AC\uC9C0 SDK \uBBF8\uC124\uCE58 \uC2DC):
|
|
845
845
|
npm install @supabase/supabase-js
|
|
846
846
|
pnpm add @supabase/supabase-js
|
|
847
|
-
`),this.name="StorageNotConfiguredError"}};function Z0(e){Y0(e)}function zs(e,t){if(!e)return null;const a=pa();return a?.resolvePath?a.resolvePath(e,t):t?`${t}/${e}.mp3`:null}async function Vs(e){if(!e)return null;const t=pa();if(!t)throw new Hs("getSignedOrPublicUrl");try{return await t.resolveUrl(e)}catch{return null}}async function Ws(e){const t=pa();if(!t)throw new Hs("downloadSound");return t.download(e)}function X0(){return pa()?.noiseBaseUrl??"/sounds/noise"}function qs(){const e=Number(pa()?.noiseFileGain);return Number.isFinite(e)&&e>0?e:1}function J0(e){const t=AbortSignal.timeout;if(typeof t=="function")return t.call(AbortSignal,e);const a=new AbortController;return setTimeout(()=>a.abort(),e),a.signal}const Us="__ihab_core_tts_config__";function Br(){return globalThis[Us]?.urlResolver??null}function Q0(){return globalThis[Us]?.fallbackUrlResolver??null}const e2="__ihab_core_pronunciation_resolver__";function t2(){return globalThis[e2]??null}let Bn=null;const ma=new WeakMap,Nr=new WeakMap,Er=new WeakMap;let Gs=!1;const Ks=e=>Math.max(0,Math.min(1,Number.isFinite(e)?e:0));function n2(){if(Gs||typeof document>"u")return;Gs=!0;const e=()=>{try{Bn&&Bn.state!=="running"&&Bn.resume()}catch{}};for(const t of["pointerdown","touchend","keydown"])document.addEventListener(t,e,{capture:!0,passive:!0})}function Ys(){if(Bn)return Bn;try{const e=window.AudioContext||window.webkitAudioContext;return e?(Bn=new e,n2(),Bn):null}catch{return null}}function Dr(){try{Bn?.resume()}catch{}}function Sr(e,t){const a=ma.get(t);if(a)return a;try{const r=e.createMediaElementSource(t),s=e.createGain(),i=e.createAnalyser();i.fftSize=1024,i.smoothingTimeConstant=.6,s.gain.value=Ks(Nr.get(t)??t.volume),r.connect(s),s.connect(i),s.connect(e.destination);try{t.volume=1}catch{}const l={gain:s,analyser:i};return ma.set(t,l),l}catch{return null}}function Pa(e){if(!e)return Promise.resolve(null);const t=ma.get(e);if(t)return Promise.resolve(t.analyser);const a=Ys();if(!a)return Promise.resolve(null);if(a.state==="running")return Promise.resolve(Sr(a,e)?.analyser??null);const r=Er.get(e);if(r)return r;const s=Promise.resolve().then(()=>a.resume()).then(()=>a.state==="running"?Sr(a,e)?.analyser??null:null).catch(()=>null).finally(()=>{Er.delete(e)});return Er.set(e,s),s}function a2(e){if(!e)return null;const t=ma.get(e);if(t)return t.analyser;const a=Ys();return a?a.state==="running"?Sr(a,e)?.analyser??null:(Pa(e),null):null}function Nn(e,t){const a=Ks(t);Nr.set(e,a);const r=ma.get(e);if(r){try{e.volume!==1&&(e.volume=1)}catch{}const s=r.gain.gain;try{const i=r.gain.context.currentTime;s.cancelScheduledValues(i),s.setTargetAtTime(a,i,.01)}catch{try{s.value=a}catch{}}return"gain"}try{e.volume=a}catch{}return"element"}function Ia(e){return Nr.get(e)??e.volume}function r2(e,t){e.getFloatTimeDomainData(t);let a=0;for(let r=0;r<t.length;r++){const s=t[r];a+=s*s}return Math.sqrt(a/t.length)}const o2="__ihab_core_image_config__";function Gn(){return globalThis[o2]??null}const Zs="word_image_existence_map_v1";let Pn=null;const Fa=new Map;function s2(){if(Pn)return Pn;try{const e=typeof localStorage<"u"?localStorage.getItem(Zs):null,t=e?JSON.parse(e):null;Pn=t&&typeof t=="object"&&!Array.isArray(t)?t:{}}catch{Pn={}}return Pn}let jr=null;function i2(){jr||(jr=setTimeout(()=>{jr=null;try{typeof localStorage<"u"&&Pn&&localStorage.setItem(Zs,JSON.stringify(Pn))}catch{}},200))}function l2(e,t){return`${e}_${t??1}`}async function Xs(e,t){const a=s2(),r=l2(e,t);if(r in a)return a[r];if(Fa.has(r))return Fa.get(r);const s=Gn();if(!s)return!1;const i=s(e,t);if(!i)return!1;const l=fetch(i,{method:"HEAD",signal:J0(8e3)}).then(c=>c.status>=500?null:c.ok,()=>null).then(c=>(Fa.delete(r),c===null?!1:(a[r]=c,i2(),c)));return Fa.set(r,l),l}const c2={\u314F:{nucleus:"\u314F"},\u3151:{glide:"j",nucleus:"\u314F"},\u3153:{nucleus:"\u3153"},\u3155:{glide:"j",nucleus:"\u3153"},\u3157:{nucleus:"\u3157"},\u315B:{glide:"j",nucleus:"\u3157"},\u315C:{nucleus:"\u315C"},\u3160:{glide:"j",nucleus:"\u315C"},\u3161:{nucleus:"\u3161"},\u3163:{nucleus:"\u3163"},\u3150:{nucleus:"\u3154/\u3150"},\u3152:{glide:"j",nucleus:"\u3154/\u3150"},\u3154:{nucleus:"\u3154/\u3150"},\u3156:{glide:"j",nucleus:"\u3154/\u3150"},\u3158:{glide:"w",nucleus:"\u314F"},\u3159:{glide:"w",nucleus:"\u3154/\u3150"},\u315A:{glide:"w",nucleus:"\u3154/\u3150"},\u315D:{glide:"w",nucleus:"\u3153"},\u315E:{glide:"w",nucleus:"\u3154/\u3150"},\u315F:{glide:"w",nucleus:"\u3163"},\u3162:{glide:"\u0270",nucleus:"\u3163"}},Js=["\u3131","\u3132","\u3134","\u3137","\u3138","\u3139","\u3141","\u3142","\u3143","\u3145","\u3146","\u3147","\u3148","\u3149","\u314A","\u314B","\u314C","\u314D","\u314E"],Qs=["\u314F","\u3150","\u3151","\u3152","\u3153","\u3154","\u3155","\u3156","\u3157","\u3158","\u3159","\u315A","\u315B","\u315C","\u315D","\u315E","\u315F","\u3160","\u3161","\u3162","\u3163"],u2=["","\u3131","\u3132","\u3133","\u3134","\u3135","\u3136","\u3137","\u3139","\u313A","\u313B","\u313C","\u313D","\u313E","\u313F","\u3140","\u3141","\u3142","\u3144","\u3145","\u3146","\u3147","\u3148","\u314A","\u314B","\u314C","\u314D","\u314E"];function ha(e){if(!e)return null;const t=e.charCodeAt(0)-44032;return t<0||t>=11172?null:{cho:Math.floor(t/588),jung:Math.floor(t%588/28),jong:t%28}}function d2(e){const t=ha(e[0]||"");return t?Js[t.cho]:""}function p2(e){if(!e)return()=>!0;e=e.normalize("NFC");const t=[...e],a=l=>Js.includes(l),r=l=>Qs.includes(l),s=t.map(l=>a(l)?"cho":r(l)?"jung":ha(l)?"syl":"other"),i=t.map(l=>ha(l));if(s.includes("other")){const l=e.toLowerCase();return c=>c.normalize("NFC").toLowerCase().includes(l)}return l=>{const c=[...l.normalize("NFC")];for(let d=0;d+t.length<=c.length;d++){let u=!0;for(let p=0;p<t.length;p++){const m=c[d+p],h=s[p];if(h==="cho"){if(d2(m)!==t[p]){u=!1;break}}else if(h==="jung"){const g=ha(m);if(!g||Qs[g.jung]!==t[p]){u=!1;break}}else{const g=i[p];if(g&&g.jong===0){const y=ha(m);if(!y||y.cho!==g.cho||y.jung!==g.jung){u=!1;break}}else if(m!==t[p]){u=!1;break}}}if(u)return!0}return!1}}const m2={3:["\u3131","\u3145"],5:["\u3134","\u3148"],6:["\u3134","\u314E"],9:["\u3139","\u3131"],10:["\u3139","\u3141"],11:["\u3139","\u3142"],12:["\u3139","\u3145"],13:["\u3139","\u314C"],14:["\u3139","\u314D"],15:["\u3139","\u314E"],18:["\u3142","\u3145"]};Object.fromEntries(Object.entries(m2).map(([e,t])=>[t.join(""),u2[Number(e)]]));const h2="word_pair_index_v2",f2="word_pair_index_sig_v2";let Oa=null;function C2(){try{if(typeof localStorage>"u")return null;const e=localStorage.getItem(h2),t=localStorage.getItem(f2);return!e||!t?null:{index:JSON.parse(e),sig:t}}catch{return null}}function g2(){if(Oa)return Oa;const e=C2();return e?(Oa=e.index,e.sig,Oa):null}const Tr=/[ㄱ-ㅎ]/,b2=/[ㅏ-ㅣ]/;function ei(e){e=e.normalize("NFC");for(let t=e.length-1;t>=0;t--){const a=e[t],r=a.charCodeAt(0);if(r>=44032&&r<=55203||Tr.test(a)||b2.test(a))return a}return null}function y2(e){const t=ei(e);if(!t)return"\uAC00";const a=t.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uC774":"\uAC00":Tr.test(t)?"\uC774":"\uAC00"}function v2(e){return`${e}${y2(e)}`}function x2(e){const t=ei(e);if(!t)return"\uB97C";const a=t.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uC744":"\uB97C":Tr.test(t)?"\uC744":"\uB97C"}function _2(e){return`${e}${x2(e)}`}function w2(e,t,a){const r=e.slice(),[s]=r.splice(t,1);return r.splice(a,0,s),r}function fa(e,t=Math.random){const a=e.slice();for(let r=a.length-1;r>0;r--){const s=Math.floor(t()*(r+1));[a[r],a[s]]=[a[s],a[r]]}return a}const k2=()=>{const e="\uC54C \uC218 \uC5C6\uB294 \uC624\uB958",t=typeof At?.t=="function"?At.t("common.unknownError",{defaultValue:e}):void 0;return typeof t=="string"&&t?t:e};function ti(e,t){if(t===void 0&&(t=k2()),e instanceof Error)return e.message||t;if(typeof e=="string")return e||t;if(e&&typeof e=="object"){const a=e;for(const r of[a.message,a.error_description,a.error])if(typeof r=="string"&&r)return r}return t}const A2="__ihab_core_word_pool__";function ni(){return globalThis[A2]??null}const ai=globalThis;function ri(e,t){const a=r=>{};try{const r=t();r&&typeof r.catch=="function"&&r.catch(a)}catch(r){a(r)}}function B2(e){ri("time",()=>ai.__ihabTrainingTimeLogger?.(e))}function N2(e){ri("completion",()=>ai.__ihabTrainingCompletionLogger?.(e))}function Ot(e){return typeof e=="string"?e.trim()||null:typeof e=="number"?String(e):null}function E2(e){for(const t of["correct","isCorrect","heard","judgement"])if(typeof e[t]=="boolean")return e[t];return e.score===1?!0:e.score===0?!1:null}function D2(e){return Array.isArray(e)?e.map((t,a)=>{const r=t??{};return{index:a,itemId:Ot(r.contextCode)??Ot(r.itemId)??Ot(r.itemCode)??Ot(r.id),question:Ot(r.question)??Ot(r.q)??Ot(r.sentence)??Ot(r.text)??Ot(r.prompt)??Ot(r.word)??Ot(r.targetSyllable),answer:Ot(r.answer),selected:Ot(r.selectedText)??Ot(r.selected),correct:E2(r)}}):[]}const Mr=globalThis;async function S2(){try{return await Mr.__ihabNoiseSettingsStore?.load()??null}catch{return null}}function oi(e){const t=a=>{};try{const a=Mr.__ihabNoiseSettingsStore?.save(e);a&&typeof a.catch=="function"&&a.catch(t)}catch(a){t(a)}}function Ha(e){try{Mr.__ihabNoiseSettingsStore?.applied?.(e)}catch{}}async function j2(e){if(typeof document<"u"){const t=document.activeElement;let a=null;try{if(a=document.createElement("textarea"),a.value=e,a.setAttribute("readonly",""),a.style.position="fixed",a.style.top="0",a.style.left="0",a.style.opacity="0",a.style.pointerEvents="none",document.body.appendChild(a),a.focus(),a.select(),a.setSelectionRange(0,e.length),document.execCommand("copy"))return!0}catch{}finally{if(a?.parentNode&&a.parentNode.removeChild(a),t&&t!==document.activeElement&&typeof t.focus=="function"&&t.isConnected)try{t.focus({preventScroll:!0})}catch{}}}try{if(typeof navigator<"u"&&navigator.clipboard&&typeof navigator.clipboard.writeText=="function")return await navigator.clipboard.writeText(e),!0}catch{}return!1}const T2=/^(\d{4}-\d{2}-\d{2})[T ](\d{2}:\d{2})(?::(\d{2})(?:\.(\d+))?)?$/;function si(e){let t;if(e instanceof Date)t=e;else if(typeof e=="string"){const a=e.trim(),r=T2.exec(a);t=new Date(r?`${r[1]}T${r[2]}:${r[3]??"00"}${r[4]?`.${r[4].slice(0,3).padEnd(3,"0")}`:""}+09:00`:a)}else t=new Date(e);return Number.isNaN(t.getTime())?null:t}function Ca(){return $r(new Date)}function Lr(e){return e&&/^\d{4}-\d{2}-\d{2}$/.test(e)?e:Ca()}function Kn(){return L2(Ca())}const M2=540*60*1e3;function ii(e,t,a){return new Date(Date.UTC(e,t,a)-M2)}function L2(e){const[t,a,r]=e.split("-").map(Number);return new Date(t,(a||1)-1,r||1)}function $r(e){if(e==null||e==="")return"";const t=si(e);return t?new Intl.DateTimeFormat("fr-CA",{timeZone:"Asia/Seoul"}).format(t):""}function li(e,t){if(!e)return"";const a=si(e);if(!a)return"";const r=a.getTime(),s=Math.max(0,Math.floor((Date.now()-r)/1e3)),i=Math.floor(s/60),l=Math.floor(i/60),c=Math.floor(l/24),d=Math.floor(c/7),u=Math.floor(c/30),p=Math.floor(c/365);return i<1?t("store.time.justNow","\uBC29\uAE08 \uC804"):i<60?t("store.time.minutesAgo",{n:i}):l<24?t("store.time.hoursAgo",{n:l}):c<7?t("store.time.daysAgo",{n:c}):d<5?t("store.time.weeksAgo",{n:d}):c<365?t("store.time.monthsAgo",{n:Math.min(u,11)}):t("store.time.yearsAgo",{n:p})}function ci(e,t={}){const{sep:a=".",pad:r=!0,trailingDot:s=!1,fallback:i="\u2014"}=t;if(!e)return i;const l=$r(e instanceof Date?e:String(e));if(!l)return i;const[c,d,u]=l.split("-"),p=r?d:String(Number(d)),m=r?u:String(Number(u));return`${c}${a}${p}${a}${m}${s?".":""}`}function Yn(e){if(!e)return e;const t=e.trim();return/^[₩$]/.test(t)?t:/원\s*$/.test(t)?"\u20A9"+t.replace(/\s*원\s*$/,"").trim():t}function ui(e,t){if(!e)return"-";const a=/^(\d{1,2}):(\d{2})$/.exec(e.trim());if(!a)return e;const r=Number(a[1]),s=Number(a[2]),i=a[1].padStart(2,"0");return s===0?t("date.timeH",{h:r,hh:i,mm:a[2]}):t("date.timeHM",{h:r,hh:i,m:s,mm:a[2]})}function Rr(e){return(e??0).toLocaleString("ko-KR")}const $2=[{key:"FOOD",label:"\uC74C\uC2DD",icon:"salad",color:"#FF8A65",subs:[{key:"TRKRFD",label:"\uD55C\uAD6D \uC804\uD1B5\uC74C\uC2DD"},{key:"MDKRFD",label:"\uD55C\uAD6D \uD604\uB300\uC74C\uC2DD"},{key:"WRLDFD",label:"\uC138\uACC4\uC758 \uC74C\uC2DD"},{key:"MTRFRT",label:"\uC2DD\uC7AC\uB8CC\uC640 \uACFC\uC77C"},{key:"GEFDKL",label:"\uC74C\uC2DD \uC0C1\uC2DD"}]},{key:"HLTH",label:"\uAC74\uAC15",icon:"heart",color:"#66BB6A",subs:[{key:"HTETHB",label:"\uAC74\uAC15\uD55C \uC2DD\uC2B5\uAD00"},{key:"DISILL",label:"\uBCD1\uACFC \uC9C8\uD658"},{key:"EXCISE",label:"\uC6B4\uB3D9"},{key:"GEHTKL",label:"\uAC74\uAC15\uC0C1\uC2DD"}]},{key:"WETH",label:"\uB0A0\uC528",icon:"sun-medium",color:"#42A5F5",subs:[{key:"GESSKL",label:"\uACC4\uC808\uC0C1\uC2DD"},{key:"SNWRAN",label:"\uB208\uACFC \uBE44"},{key:"WTHFCT",label:"\uC77C\uAE30\uC608\uBCF4"},{key:"GEWTKL",label:"\uB0A0\uC528\uC0C1\uC2DD"}]},{key:"PRSN",label:"\uC778\uBB3C",icon:"user-round",color:"#AB47BC",subs:[{key:"JODYPS",label:"\uC870\uC120\uC2DC\uB300"},{key:"MDKRPS",label:"\uD55C\uAD6D \uADFC\uD604\uB300"},{key:"THKDPS",label:"\uC0BC\uAD6D\uC2DC\uB300"},{key:"WRLART",label:"\uC138\uACC4\uC758 \uC608\uC220\uAC00"},{key:"WRLPSN",label:"\uC138\uACC4\uC758 \uC778\uBB3C"}]},{key:"KRCT",label:"\uD55C\uAD6D\uBB38\uD654",icon:"bow-arrow",color:"#EC407A",subs:[{key:"KRLANG",label:"\uC6B0\uB9AC\uB9D0"},{key:"TRPLCT",label:"\uC804\uD1B5\uB180\uC774"},{key:"HERITG",label:"\uBB38\uD654\uC7AC"},{key:"EVTFES",label:"\uD589\uC0AC\uC640 \uCD95\uC81C"},{key:"GECTKL",label:"\uC0C1\uC2DD"}]},{key:"STRY",label:"\uC774\uC57C\uAE30",icon:"message-circle",color:"#8D6E63",subs:[{key:"FRYTAL",label:"\uB3D9\uD654"},{key:"AMZING",label:"\uC2E0\uAE30\uD55C \uC774\uC57C\uAE30"},{key:"DAYSTR",label:"\uC77C\uC0C1 \uC18D \uC774\uC57C\uAE30"}]},{key:"LOCA",label:"\uC9C0\uC5ED",icon:"map-pin",color:"#26A69A",subs:[{key:"KRLDMK",label:"\uD55C\uAD6D\uC758 \uBA85\uC18C"},{key:"SELNMK",label:"\uC11C\uC6B8\uC758 \uBA85\uC18C"},{key:"WRDTRB",label:"\uC138\uACC4\uC5EC\uD589"},{key:"NAVIGT",label:"\uAE38 \uCC3E\uAE30"}]},{key:"SOAR",label:"\uC0AC\uD68C\uC640 \uC608\uC220",icon:"landmark",color:"#5C6BC0",subs:[{key:"KRSOCI",label:"\uD55C\uAD6D"},{key:"ECONEW",label:"\uACBD\uC81C\uC640 \uB274\uC2A4"},{key:"GENART",label:"\uC608\uC220"},{key:"GELFKL",label:"\uC0DD\uD65C \uC0C1\uC2DD"}]},{key:"NTSC",label:"\uC790\uC5F0\uACFC \uACFC\uD559",icon:"leaf",color:"#9CCC65",subs:[{key:"ANIMAL",label:"\uB3D9\uBB3C"},{key:"PLANTS",label:"\uC2DD\uBB3C"},{key:"ETHPLT",label:"\uC9C0\uAD6C"},{key:"TOLELC",label:"\uB3C4\uAD6C\uC640 \uC804\uC790\uC81C\uD488"},{key:"GESCKL",label:"\uACFC\uD559\uC0C1\uC2DD"}]},{key:"SPRT",label:"\uC2A4\uD3EC\uCE20",icon:"trophy",color:"#FFCA28",subs:[{key:"INVDSP",label:"\uAC1C\uC778\uACBD\uAE30"},{key:"MARART",label:"\uACA9\uD22C\uAE30"},{key:"TEAMSP",label:"\uB2E8\uCCB4\uACBD\uAE30"},{key:"FOOTBL",label:"\uCD95\uAD6C"},{key:"GESPKL",label:"\uC2A4\uD3EC\uCE20 \uC0C1\uC2DD"}]}],R2=[{key:"LISTEN_IN_NOISE",label:"\uC18C\uC74C \uD558 \uBB38\uC7A5 \uB4E3\uAE30",icon:"party-popper",desc:"\uC18C\uC74C \uD658\uACBD \uC18D \uBB38\uC7A5 \uC774\uD574 \uD6C8\uB828"},{key:"SHORT_STORY",label:"\uC9E7\uC740 \uC774\uC57C\uAE30 \uB4E3\uAE30",icon:"message-square",desc:"\uC9E7\uC740 \uC774\uC57C\uAE30 + 4\uBB38\uC81C"},{key:"LONG_STORY",label:"\uAE34 \uC774\uC57C\uAE30 \uB4E3\uAE30",icon:"message-square-text",desc:"\uAE34 \uC774\uC57C\uAE30 \uC2EC\uD654 \uD6C8\uB828"},{key:"ORDERING_SENTENCE",label:"\uBB38\uC7A5 \uC21C\uC11C\uD654 \uD558\uAE30",icon:"align-start-vertical",desc:"\uC21C\uC11C \uBC30\uC5F4 \uD6C8\uB828"}];function di(){return $2}function P2(){return R2}const I2=[],F2=[],O2=[],H2=[];function z2(){return{LISTEN_IN_NOISE:I2,SHORT_STORY:F2,LONG_STORY:O2,ORDERING_SENTENCE:H2}}const V2=[{key:"LISTEN_IN_NOISE",label:"\uC18C\uC74C \uD558 \uBB38\uC7A5 \uB4E3\uAE30",icon:"party-popper",desc:"\uB2E4\uC591\uD55C \uC18C\uC74C \uD658\uACBD\uC5D0\uC11C \uBB38\uC7A5 \uCCAD\uB825\uC744 \uD6C8\uB828\uD569\uB2C8\uB2E4."},{key:"SHORT_STORY",label:"\uC9E7\uC740 \uC774\uC57C\uAE30 \uB4E3\uAE30",icon:"message-square",desc:"\uC9E7\uC740 \uC774\uC57C\uAE30\uB97C \uB4E3\uACE0 \uAE30\uC5B5\uD558\uC5EC \uBB38\uC81C\uB97C \uD480\uC5B4\uBD05\uB2C8\uB2E4."},{key:"LONG_STORY",label:"\uAE34 \uC774\uC57C\uAE30 \uB4E3\uAE30",icon:"message-square-text",desc:"\uAE34 \uC774\uC57C\uAE30\uB97C \uB4E3\uACE0 \uAE30\uC5B5\uD558\uC5EC \uB2E4\uC218\uC758 \uBB38\uC81C\uB97C \uD480\uC5B4\uBD05\uB2C8\uB2E4."},{key:"ORDERING_SENTENCE",label:"\uBB38\uC7A5 \uC21C\uC11C\uD654 \uD558\uAE30",icon:"align-start-vertical",desc:"\uC5EC\uB7EC\uAC1C\uC758 \uC9E7\uC740 \uBB38\uC7A5\uC744 \uB4E3\uACE0 \uAE30\uC5B5\uD558\uC5EC \uADF8 \uC21C\uC11C\uC5D0 \uB9DE\uAC8C \uBC30\uC5F4\uD569\uB2C8\uB2E4."}],pi={LISTEN_IN_NOISE:"listenInNoise",SHORT_STORY:"shortStory",LONG_STORY:"longStory",ORDERING_SENTENCE:"orderingSentence"};function W2(e){return V2.map(t=>{const a=pi[t.key];return a?{...t,label:e(`trainingType.${a}.title`),desc:e(`trainingType.${a}.desc`)}:t})}let za=null,mi=null,hi=null;function q2(){const e=ni();if(e&&e.entries.length>0){const t=g2();if(za&&mi===e&&hi===t)return za;const a=new Set,r=[];for(const s of e.entries)!s.word||a.has(s.word)||(a.add(s.word),r.push({w:s.word,s:s.syllables,p:t?.[s.word]?[...t[s.word].cho??[],...t[s.word].jung??[],...t[s.word].jong??[]]:[],pron:s.pronunciation||s.word,grade:s.grade}));return za=r,mi=e,hi=t,za}return[]}new Proxy([],{get(e,t){const a=q2(),r=a[t];return typeof r=="function"?r.bind(a):r}});const U2="0.206.0";function G2(e){if(e.includes("\\")&&e.includes("("))return!0;if(!/url\s*\(/i.test(e))return!1;const t=e.replace(/url\(\s*(['"]?)#[^)'"]*\1\s*\)/gi,"");return/url\s*\(/i.test(t)}function K2(e){if(typeof window>"u")return"";const t=(a,r)=>{typeof r.attrValue=="string"&&G2(r.attrValue)&&(r.keepAttr=!1)};kr.addHook("uponSanitizeAttribute",t);try{return kr.sanitize(e,{USE_PROFILES:{svg:!0,svgFilters:!0},FORBID_TAGS:["script","use","style"],FORBID_ATTR:["xlink:href","href"]})}finally{kr.removeHook("uponSanitizeAttribute",t)}}function Y2(e){const[t,a]=o.useState(null),[r,s]=o.useState(null),[i,l]=o.useState(null),[c,d]=o.useState(null);return o.useEffect(()=>{if(!e||typeof e!="string"||!e.endsWith(".svg")){a(null),s(null),l(null);return}const u=e.split("/").pop();let p=e;u&&(e.startsWith("/")?p=Ar(e):/^(Logo|Symbol)/i.test(u)?p=Ar(`logo/${u}`):(/^https?:\/\//i.test(e)||e.startsWith("data:"),p=e)),s(null),l(null),a(p)},[e]),o.useEffect(()=>{if(!t)return;let u=!1;async function p(){try{let m=await fetch(t);m.ok||(m=await fetch(t));const h=m.headers.get("content-type")||"";if(u)return;if(h.includes("svg")){s("mask");return}if(h.startsWith("image/")){s("img");return}const g=await fetch(t);if(!g.ok)throw new Error("not ok");const y=await g.text();if(u)return;if(/^\s*<svg[\s>]/i.test(y)){const f=K2(y);if(!f){s("none");return}l(f),s("inline");return}s("none")}catch{u||s("none")}}return p(),()=>{u=!0}},[t]),o.useEffect(()=>{let u=!1,p=null;return r==="mask"&&t&&fetch(t).then(m=>{if(!m.ok)throw new Error("fetch failed");return m.blob()}).then(m=>{u||(p=URL.createObjectURL(m),d(p))}).catch(()=>{u||s("img")}),()=>{u=!0,p&&URL.revokeObjectURL(p),d(null)}},[r,t]),{iconToUse:t,mode:r,svgText:i,blobUrl:c}}function Ue(e){const{icon:t,label:a,className:r,imgClassName:s,maskClassName:i,svgClassName:l,wrapperStyle:c,size:d}=e||{},u=r??"iconRenderer-icon",p=s??"iconRenderer-icon-image",m=i??"iconRenderer-icon-mask",h=l??"iconRenderer-icon-svg",g=typeof t=="string"?t:null,y=d0(g),{iconToUse:f,mode:w,svgText:C,blobUrl:b}=Y2(g),_=(A,N={})=>n.jsx("span",{className:u,style:c,...N,children:A}),x=typeof d=="number"?{width:d,height:d,objectFit:"contain"}:null,k=(A,N={})=>n.jsx("img",{src:A,alt:typeof a=="string"?a:typeof a=="number"?String(a):"",className:p,...N,style:x?{...N.style,...x}:N.style});if(!t)return null;if(typeof t!="string")return _(t);if(t==="none")return _(n.jsx("span",{className:h,dangerouslySetInnerHTML:{__html:'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" aria-hidden="true"></svg>'}}),{"aria-hidden":"true"});if(y)try{return _(o.createElement(y,{className:h,size:typeof d=="number"?d:20}),{"aria-hidden":"true"})}catch{}if(f&&f.endsWith(".svg")){if(w==="mask"){const A={"--icon-url":b?`url(${b})`:`url(${f})`,...typeof d=="number"?{"--icon-size":`${d}px`}:null};return _(n.jsx("span",{className:m,style:A}),{"aria-hidden":"true"})}return w==="img"?_(k(f,{onError:A=>{A.currentTarget.onerror=null,A.currentTarget.style.display="none"}}),{"aria-hidden":"true"}):w==="inline"?_(n.jsx("span",{className:h,dangerouslySetInnerHTML:C?{__html:C}:void 0}),{"aria-hidden":"true"}):_(null,{"aria-hidden":"true"})}if(t.startsWith("/")||t.includes("/assets/")||t.match(/\.(png|jpg|jpeg|webp|gif)$/i))return k(Ar(t),{style:c,onError:A=>{A.currentTarget.onerror=null,A.currentTarget.style.display="none"}});const v=typeof d=="number"?d:20,B=`<svg width="${v}" height="${v}" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><rect x="3" y="3" width="18" height="18" rx="2" ry="2" style="fill:none;stroke:currentColor;stroke-width:2"/></svg>`;return _(n.jsx("span",{className:h,dangerouslySetInnerHTML:{__html:B}}),{"aria-hidden":"true"})}function fi(e){const[t,a]=o.useState(!1),r=o.useRef(!1),s=o.useRef(!0);o.useEffect(()=>(s.current=!0,()=>{s.current=!1}),[]);const i=o.useCallback(()=>{if(!e||r.current)return;const l=e();if(l&&typeof l.then=="function"){r.current=!0,a(!0);const c=()=>{r.current=!1,s.current&&a(!1)};l.then(c,c)}},[e]);return{pending:t,press:i}}function Z2({icon:e,title:t,message:a,action:r,className:s}){const{pending:i,press:l}=fi(r?.onClick);return n.jsxs("div",{className:De("empty-state",s),children:[e&&n.jsx(Ue,{icon:e,size:48,className:"empty-state__icon"}),t&&n.jsx("p",{className:"empty-state__title h4",children:t}),a&&n.jsx("p",{className:"empty-state__message body-3",children:a}),r&&n.jsxs("button",{type:"button",className:"empty-state__action button button40 button40--bar button--variant-main button--align-center button--shape-rounded",onClick:l,disabled:i,"aria-busy":i||void 0,children:[r.icon&&n.jsx(Ue,{icon:r.icon,className:"button__icon"}),n.jsx("span",{className:"button__label button-1",children:r.label})]})]})}function X2({message:e,hint:t,icon:a="triangle-alert",onRetry:r,retryLabel:s,className:i}){const{t:l}=be.useTranslation(),{pending:c,press:d}=fi(r);return n.jsxs("div",{className:De("empty-state","error-state",i),role:"alert",children:[n.jsx(Ue,{icon:a,size:48,className:"empty-state__icon error-state__icon"}),n.jsx("p",{className:"empty-state__message body-3",children:e??l("common.errorState.message",{defaultValue:"\uBD88\uB7EC\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."})}),t&&n.jsx("p",{className:"error-state__hint caption-1",children:t}),r&&n.jsxs("button",{type:"button",className:"empty-state__action button button40 button40--bar button--variant-main button--align-center button--shape-rounded",onClick:d,disabled:c,"aria-busy":c||void 0,children:[n.jsx(Ue,{icon:"rotate-cw",className:"button__icon"}),n.jsx("span",{className:"button__label button-1",children:s??l("common.errorState.retry",{defaultValue:"\uB2E4\uC2DC \uC2DC\uB3C4"})})]})]})}function J2({icon:e,title:t,description:a,cta:r,tone:s="main",disabled:i=!1,onClick:l,className:c=""}){const d=o.useId(),u=`${d}-title`,p=`${d}-desc`,m=`${d}-cta`,h=()=>{i||l?.()};return n.jsx("section",{role:"button",tabIndex:i?-1:0,"aria-disabled":i||void 0,"aria-labelledby":u,"aria-describedby":`${p} ${m}`,onClick:h,onKeyDown:g=>{(g.key==="Enter"||g.key===" ")&&(g.preventDefault(),h())},className:De("action-card",`action-card--${s}`,i&&"action-card--disabled",c),children:n.jsxs("div",{className:"action-card__body",children:[n.jsx("span",{"aria-hidden":!0,className:"action-card__chip",children:n.jsx(Ue,{icon:e,size:34})}),n.jsxs("div",{className:"action-card__text",children:[n.jsx("h2",{id:u,className:"action-card__title",children:t}),n.jsx("p",{id:p,className:"action-card__desc",children:a})]}),n.jsxs("div",{className:"action-card__cta",children:[n.jsx("span",{id:m,children:r}),n.jsx("span",{"aria-hidden":!0,className:"action-card__arrow",children:n.jsx(Ue,{icon:"arrow-right",size:18})})]})]})})}function Q2({as:e="div",className:t="",children:a,storage:r,...s}){r&&Z0({resolveUrl:r.resolveUrl,download:r.download??(()=>Promise.reject(new Error("[ihabdevteam-core] CoreScope: download resolver\uAC00 \uC124\uC815\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4."))),exists:r.exists,resolvePath:r.resolvePath,noiseBaseUrl:r.noiseBaseUrl,noiseFileGain:r.noiseFileGain});const i=De("ihabdevteam-core-scope",t);return n.jsx(e,{className:i,...s,children:a})}function Pr(e,t=!0){o.useEffect(()=>{if(!t)return;const a=e.current;if(!a)return;const r=s=>{if(s.key!=="Tab")return;const i=Array.from(a.querySelectorAll(Cn)).filter(p=>!p.closest('[aria-hidden="true"]'));if(!i.length){s.preventDefault();return}const l=i[0],c=i[i.length-1],d=document.activeElement,u=d===a;s.shiftKey&&(d===l||u)?(s.preventDefault(),c.focus()):!s.shiftKey&&d===c&&(s.preventDefault(),l.focus())};return a.addEventListener("keydown",r),()=>a.removeEventListener("keydown",r)},[e,t])}const Cn='a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])',Ir=new WeakMap;function Fr(e,t){e&&Ir.set(e,t)}function Or(e){let t=e;for(let a=0;t&&!t.isConnected&&a<10;a++){let r=t;for(;r&&!Ir.has(r);)r=r.parentElement;if(!r)return t;t=Ir.get(r)??null}return t}function Ci(e){return!(!e||!e.isConnected||e===document.body||typeof e.focus!="function"||e.disabled||e instanceof HTMLInputElement&&e.type==="hidden"||e.closest('[inert],[aria-hidden="true"],[hidden]'))}function Va(e,t,a){const r=e?.isConnected?e:a?.isConnected?a:null;if(Ci(t)&&!(e&&e.contains(t)))return t.focus(),t;if(!r)return null;const s=Array.from(document.querySelectorAll(Cn)).filter(d=>!(e&&e.contains(d))&&Ci(d));let i=null,l=null;for(const d of s)r.compareDocumentPosition(d)&Node.DOCUMENT_POSITION_PRECEDING?i=d:l||(l=d);const c=i??l;return c?.focus(),c}function ef({title:e="",lines:t=[],notices:a=null,children:r,variant:s="default",dismissible:i=!1,className:l=""}){const{t:c}=be.useTranslation(),[d,u]=o.useState(!1),p=o.useRef(null),m=o.useCallback(()=>{const f=p.current;f&&f.contains(document.activeElement)&&Va(f),u(!0)},[]);if(d)return null;const h=`notice-box notice-box--${s} body-2 ${l}`.trim(),g=i&&n.jsx("button",{type:"button",className:"notice-box__dismiss",onClick:m,"aria-label":c("common.close","\uB2EB\uAE30"),children:"\xD7"});if(a&&Array.isArray(a)&&a.length)return n.jsxs("div",{className:h,role:"note",children:[a.map((f,w)=>n.jsxs("div",{className:"notice-box__inner",children:[f.title?n.jsx("span",{className:"notice-box__title body-3",children:f.title}):null,n.jsx("div",{className:"notice-box__body",children:f.lines&&f.lines.length?n.jsx("div",{children:f.lines.map((C,b)=>n.jsx("span",{className:"notice-box__line body-3",children:C},b))}):f.children??null})]},w)),g]});const y=e||t.length?n.jsxs("div",{className:"notice-box__inner",children:[e?n.jsx("span",{className:"notice-box__title body-1",children:e}):null,n.jsx("div",{className:"notice-box__body",children:t.length?n.jsx("ul",{children:t.map((f,w)=>n.jsx("li",{className:"notice-box__line",children:f},w))}):r})]}):n.jsx("div",{className:"notice-box__inner",children:r});return n.jsxs("div",{ref:p,className:h,role:"note",children:[y,g]})}const Zn=[];let Wa=!1;function gi(e){if(e.key!=="Escape"||e.defaultPrevented||e.isComposing||e.keyCode===229)return;const t=Zn[Zn.length-1];t&&(e.stopPropagation(),t())}function In(e){return Zn.push(e),!Wa&&typeof document<"u"&&(document.addEventListener("keydown",gi),Wa=!0),()=>{const t=Zn.lastIndexOf(e);t>=0&&Zn.splice(t,1),Zn.length===0&&Wa&&typeof document<"u"&&(document.removeEventListener("keydown",gi),Wa=!1)}}const bi=o.createContext(null);function tf(e){return/max-width:\s*7[0-9][0-9]px/.test(e)}const yi=e=>typeof window>"u"||!window.matchMedia?!1:window.matchMedia(e).matches;function nf(e){const t=o.useCallback(a=>{if(typeof window>"u"||!window.matchMedia)return()=>{};const r=window.matchMedia(e);return r.addEventListener?r.addEventListener("change",a):r.addListener&&r.addListener(a),()=>{r.removeEventListener?r.removeEventListener("change",a):r.removeListener&&r.removeListener(a)}},[e]);return Jo.useSyncExternalStore(t,()=>yi(e),()=>!1)}function af(e){const[t,a]=o.useState(yi(e));return o.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const r=window.matchMedia(e),s=l=>a(l.matches),i=r;return i.addEventListener?i.addEventListener("change",s):i.addListener&&i.addListener(s),a(r.matches),()=>{i.removeEventListener?i.removeEventListener("change",s):i.removeListener&&i.removeListener(s)}},[e]),t}const rf=typeof Jo.useSyncExternalStore=="function"?nf:af;function Zt(e){const t=o.useContext(bi),a=rf(e);return t&&typeof t.mobile=="boolean"&&tf(e)?t.mobile:a}const of="(prefers-reduced-motion: reduce)";function Hr(){return Zt(of)}function Qt(e){const{anchorRect:t,anchorEl:a,offset:r=20,edgeMargin:s=20,onClose:i,closeOnOutsideClick:l=!0,className:c="",role:d="dialog",ariaLabel:u="",children:p,backdrop:m=!1,isMobilePopup:h=!1,useBorder:g=!0,header:y}=e||{},f=o.useRef(null),[w,C]=o.useState({position:"fixed",left:0,top:-9999}),[b,_]=o.useState(!1),[x,k]=o.useState("bottom"),[v,B]=o.useState(!1),[A,N]=o.useState(!1),E=!t&&!a,T=o.useCallback((Q=!1)=>{if(A&&h)return;const z=a?a.getBoundingClientRect():t;if(!z||!f.current)return;const G=f.current,{offsetWidth:W,offsetHeight:L}=G,D=window.innerWidth,O=window.innerHeight,P=D-z.right,H=z.left,$=z.top,Y=O-z.bottom;let ee=0,Z=0,ae="top";if($>=L+r)ae="top",Z=z.top-r-L,ee=z.left+z.width/2-W/2;else if(Y>=L+r)ae="bottom",Z=z.bottom+r,ee=z.left+z.width/2-W/2;else if(P>=W+r)ae="right",ee=z.right+r,Z=z.top+z.height/2-L/2;else if(H>=W+r)ae="left",ee=z.left-r-W,Z=z.top+z.height/2-L/2;else{const q=Math.max($,Y,P,H);q===$?(ae="top",Z=z.top-r-L,ee=z.left+z.width/2-W/2):q===Y?(ae="bottom",Z=z.bottom+r,ee=z.left+z.width/2-W/2):q===P?(ae="right",ee=z.right+r,Z=z.top+z.height/2-L/2):(ae="left",ee=z.left-r-W,Z=z.top+z.height/2-L/2)}const _e=Number.isFinite(Number(s))?Number(s):8;ee=Math.min(Math.max(ee,_e),D-W-_e),Z=Math.min(Math.max(Z,_e),O-L-_e);const re=Math.round(ee),ue=Math.round(Z);Q&&f.current?(f.current.style.left=`${re}px`,f.current.style.top=`${ue}px`,f.current.dataset.placement=ae):(k(ae||x),C({position:"fixed",left:re,top:ue}),B(!0))},[A,h,a,t,r,s,x]);o.useLayoutEffect(()=>{if(E)return;if(A&&h){C({position:"fixed",left:"50%",top:"50%",transform:"translate(-50%, -50%)",width:"calc(100% - 40px)",maxWidth:"calc(100% - 40px)"}),B(!0);return}T();const Q=requestAnimationFrame(()=>T());return()=>cancelAnimationFrame(Q)},[t,a,r,p,s,E,A,h,T]),o.useEffect(()=>{if(E||A&&h||!f.current||typeof ResizeObserver>"u")return;const Q=new ResizeObserver(()=>{t&&T()});return Q.observe(f.current),()=>Q.disconnect()},[t,p,s,E,A,h,T]),o.useEffect(()=>{if(E||A&&h)return;const Q=()=>T(!0),z=G=>{if(!a&&i){const W=G.target;if(W&&f.current&&f.current.contains(W))return;try{if(W&&W.closest&&W.closest("[data-tooltip-ignore]"))return}catch{}M.current(!0);return}Q()};return window.addEventListener("resize",Q),document.addEventListener("scroll",z,{passive:!0,capture:!0}),()=>{window.removeEventListener("resize",Q),document.removeEventListener("scroll",z,{capture:!0})}},[t,a,i,r,p,s,E,A,h,T]),o.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const Q=window.matchMedia("(max-width: 768px)"),z=()=>N(!!Q.matches);z();try{Q.addEventListener?Q.addEventListener("change",z):Q.addListener(z)}catch{try{Q.addListener(z)}catch{}}return()=>{try{Q.removeEventListener?Q.removeEventListener("change",z):Q.removeListener(z)}catch{}}},[]);const I=o.useRef(!1),R=o.useRef(null),V=Hr(),j=o.useCallback((Q=!1)=>{if(i&&!(b||I.current)){if(I.current=!0,Q){_(!0);try{i&&i()}catch{I.current=!1,_(!1)}return}_(!0),R.current=setTimeout(()=>{R.current=null;try{i&&i()}catch{I.current=!1,_(!1)}},V?0:200)}},[b,i,_,V]);o.useEffect(()=>()=>{R.current&&clearTimeout(R.current)},[]),o.useEffect(()=>{if(E)return;const Q=W=>{const L=f.current;if(!L)return;const D=W.target;if(D&&!L.contains(D)){try{if(D.closest&&D.closest("[data-tooltip-ignore]"))return}catch{}l&&j(!0)}},z=W=>{const L=f.current;if(!L)return;const D=W.target;if(D&&!L.contains(D)){try{if(D.closest&&D.closest("[data-tooltip-ignore]"))return}catch{}l&&j(!0)}},G=W=>{if(W.key==="Tab"){const L=f.current;if(!L)return;const D=L.querySelectorAll(Cn);if(!D||D.length===0)return;const O=D[0],P=D[D.length-1],H=document.activeElement;W.shiftKey?H===O&&(W.preventDefault(),P.focus()):H===P&&(W.preventDefault(),O.focus())}};return document.addEventListener("pointerdown",Q,!0),document.addEventListener("click",z,!0),document.addEventListener("keydown",G),()=>{document.removeEventListener("pointerdown",Q,!0),document.removeEventListener("click",z,!0),document.removeEventListener("keydown",G)}},[i,l,j,E]);const M=o.useRef(j);o.useEffect(()=>{M.current=j});const F=!!i;o.useEffect(()=>{if(!(E||!F))return In(()=>M.current())},[E,F]),o.useEffect(()=>{const Q=()=>{j(!0)};return typeof document<"u"&&document.addEventListener("speechear-close-tooltips",Q),()=>{typeof document<"u"&&document.removeEventListener("speechear-close-tooltips",Q)}},[j]);const U=n.jsxs("div",{ref:f,className:`tooltip-content ${E?"tooltip-content--inline":""} ${g?"tooltip-content--bordered":""} ${b?"is-closing":""} ${c} ${A&&h?"is-mobile":""}`,role:d,"aria-label":u||void 0,style:E?{}:{...w,visibility:v?"visible":"hidden"},tabIndex:-1,"data-placement":x,"data-left":E?"":w.left,"data-top":E?"":w.top,"data-anchor-left":t?Math.round(t.left):"","data-anchor-top":t?Math.round(t.top):"","data-anchor-width":t?Math.round(t.width):"","data-anchor-height":t?Math.round(t.height):"",children:[y!=null&&n.jsx("div",{className:"tooltip-content__header h5",children:y}),p]});if(E||typeof document>"u")return U;if(m||A&&h){const Q=n.jsxs("div",{className:"tooltip-portal",children:[n.jsx("div",{className:"tooltip-backdrop",onClick:()=>{l&&j(!0)}}),U]});return Ut.createPortal(Q,document.body)}return Ut.createPortal(U,document.body)}function gn(e){const{anchorRect:t,text:a,offset:r=8,onClose:s,className:i="",ariaLabel:l}=e||{};return a?n.jsx(Qt,{anchorRect:t,offset:r,onClose:s,closeOnOutsideClick:!1,className:`tooltip-info ${i}`,ariaLabel:l||a,children:n.jsx("div",{className:"tooltip-info__content body-3",children:a})}):null}function Fn(e){const{t}=be.useTranslation(),{anchorRect:a,title:r,items:s,activeIndex:i=-1,showIndex:l=!0,onClose:c,offset:d=12,closeOnOutsideClick:u=!0}=e||{},p=(Array.isArray(s)?s:s?[s]:[]).map(m=>typeof m=="string"?{text:m}:m);return!p.length&&!r?null:n.jsx(Qt,{anchorRect:a,offset:d,onClose:c,closeOnOutsideClick:u,useBorder:!1,className:"tooltip-description",ariaLabel:r||t("tooltip.description","\uC124\uBA85"),children:n.jsxs("div",{className:"tooltip-description__box",children:[r&&n.jsx("span",{className:"tooltip-description__title body-2",children:r}),n.jsx("ol",{className:"tooltip-description__items",children:p.map((m,h)=>n.jsxs("li",{className:`tooltip-description__item body-3${h===i?" tooltip-description__item--active":""}`,children:[l&&p.length>1&&n.jsxs("span",{className:"tooltip-description__index button-1",children:[h+1,"."]}),m.color&&n.jsx("span",{className:"tooltip-description__dot",style:{background:m.color},"aria-hidden":"true"}),n.jsx("span",{children:m.text})]},h))})]})})}function ga(e){const t=o.useRef(e);return o.useEffect(()=>{t.current=e}),t}let zr=0,vi=!1;function xi(){vi||typeof document>"u"||(vi=!0,document.addEventListener("pointerdown",e=>{e.pointerType==="touch"&&(zr=Date.now())},!0),document.addEventListener("touchstart",()=>{zr=Date.now()},{capture:!0,passive:!0}))}xi();function Xn(e){return!!e&&e.pointerType==="touch"}function Jn(e=1e3){return xi(),Date.now()-zr<e}function Vr(e,t,a,{enabled:r=!0,fallbackOnParent:s=!1}={}){const i=ga(e),l=ga(t),c=o.useRef(null),d=o.useRef(0);o.useEffect(()=>{if(!r||typeof document>"u")return;const p=m=>{const h=m,g=m.target,y=a.current,f=!!(g&&y&&y.contains(g));if(h.pointerType!=="touch"){f&&(c.current=null);return}if(f){c.current=i.current;return}c.current=null,i.current&&!(g&&g.closest?.(".tooltip-content"))&&l.current(!1,y)};return document.addEventListener("pointerdown",p,!0),()=>document.removeEventListener("pointerdown",p,!0)},[r,a,i,l]);const u=o.useCallback(p=>{const m=c.current;return m===null?!1:(c.current=null,d.current=Date.now(),l.current(!m,p??a.current),!0)},[a,l]);return o.useEffect(()=>{if(!r||!s)return;const p=a.current,m=p?.parentElement;if(!p||!m)return;let h=null;const g=w=>{const C=w.changedTouches?.[0];if(!C)return!1;const b=p.getBoundingClientRect();return C.clientX>=b.left&&C.clientX<=b.right&&C.clientY>=b.top&&C.clientY<=b.bottom},y=w=>{h=g(w)?i.current:null},f=w=>{const C=h;h=null,!(C===null||Date.now()-d.current<700||!g(w))&&(c.current=null,d.current=Date.now(),l.current(!C,p))};return m.addEventListener("touchstart",y,{passive:!0}),m.addEventListener("touchend",f),()=>{m.removeEventListener("touchstart",y),m.removeEventListener("touchend",f)}},[r,s,a,i,l]),{touchPress:u}}function sf(e,t){const{size:a=48,type:r,htmlType:s,href:i,target:l,rel:c,icon:d,rightIcon:u,label:p,count:m,subLabel:h,children:g,ariaLabel:y,variant:f="default",align:w="center",nowrap:C=!1,selected:b,toggleable:_=!1,ariaExpanded:x,ariaControls:k,disabled:v=!1,useLabel:B=!0,useBorder:A=!0,useBG:N=!0,useDisabledCovered:E=!1,useDisabledInvisible:T=!1,width:I,minWidth:R,onClick:V,onDisabledClick:j,showTooltipInfo:M=!1,tooltipInfoText:F=null,tooltipDescription:U=null,tooltipOnly:Q=!1,iconSize:z="medium",iconColor:G,shape:W="rounded",color:L,className:D,...O}=e,P=typeof a=="string"&&isNaN(Number(a))?a.toLowerCase():String(Number(a)||48),H=P.match(/^\d+$/)?`button${P}`:`button-${P}`,$=Number(a),Y=!isNaN($)&&$<40?"button-2":"button-1",ee=p??g,Z=v||!!O.disabled,ae=Z?E?"disabled-covered":T?"disabled-invisibled":"disabled":f,_e=ae?`button--variant-${ae}`:"",re=w?`button--align-${w}`:"",ue=C?"button--nowrap":"",q=W?`button--shape-${W}`:"",oe=typeof G=="string"&&G.startsWith("--")?`var(${G})`:G,de={...I?{width:typeof I=="number"?`${I}px`:I}:{},...R?{minWidth:typeof R=="number"?`${R}px`:R}:{},...A?{}:{"--button-border":Z?"0":"1px solid transparent"},...oe?{"--button-icon-color":oe}:{},...L?{"--color-main":L}:{}},ve=B===!1?"":ee,ge=Array.isArray(ve)?ve.length>0:!!ve,Se=!!u,Ce=r??(ge||d||Se?"bar":"dot"),Ee=`${H}--${Ce}`,Be=o.useRef(null),Re=o.useRef(t);Re.current=t;const Le=o.useCallback(Fe=>{Be.current=Fe;const rt=Re.current;typeof rt=="function"?rt(Fe):rt&&(rt.current=Fe)},[]),me=o.useRef(Z),[ke,Me]=o.useState(!!b),[Te,Ae]=o.useState(!1),[ie,ye]=o.useState(null),se=o.useCallback(()=>Ae(!1),[]),[Ie,ze]=o.useState(!1),Ge=o.useId();o.useEffect(()=>{typeof b=="boolean"&&Me(b)},[b]),o.useEffect(()=>{if(me.current&&!Z&&Be.current){const Fe=Be.current;let rt=!1;try{rt=Fe.matches(":focus:not(:focus-visible)")}catch{rt=!1}rt&&Fe.blur(),Fe.style.pointerEvents="none";const bt=requestAnimationFrame(()=>{requestAnimationFrame(()=>{Be.current&&(Be.current.style.pointerEvents="")})});return()=>cancelAnimationFrame(bt)}me.current=Z},[Z]);const Ze=typeof b=="boolean"?!!b:ke,Ye=typeof x=="boolean"?void 0:_||typeof b=="boolean"?Ze?"true":"false":O["aria-pressed"],Ke=De("button",H,Ee,_e,re,ue,q,Ze?"is-selected":null,N?null:"button--no-bg",Q?"button--tooltip-only":null,D),Oe=`button__icon button__icon--${z}`,Pe=Array.isArray(h)?h:h!==void 0?[h]:[],lt=()=>{if(Array.isArray(ve))return ve.map((rt,bt)=>{const zt=Pe[bt];return n.jsxs("span",{className:`button__label-text${zt!==void 0?" button__label-text--has-sub":""}`,children:[rt,zt!==void 0&&n.jsx("span",{className:"button__sub-label-text caption-1",children:zt})]},bt)});const Fe=h!==void 0;return n.jsxs("span",{className:`button__label-text${Fe?" button__label-text--has-sub":""}`,children:[ve,m!=null&&n.jsx("span",{className:"button__count",children:m}),Fe&&n.jsx("span",{className:"button__sub-label-text caption-1",children:h})]})},wt=Fe=>{typeof b!="boolean"&&!_&&Me(!1),Fe.currentTarget.blur()},Dt=Fe=>{Z||(typeof O.onMouseLeave=="function"&&O.onMouseLeave(Fe),wt(Fe))},Nt=Fe=>{if(Q&&at&&Qe.touchPress(Fe.currentTarget),Z){at&&Qe.touchPress(Fe.currentTarget),Fe.preventDefault(),j?.(Fe);return}typeof b!="boolean"&&_&&Me(rt=>!rt),V?.(Fe)},nt=o.useCallback(()=>{(M||U)&&(Ae(!0),ye(Be.current?.getBoundingClientRect()??null))},[M,U]),Je=o.useCallback(()=>{(M||U)&&(Ae(!1),ye(null))},[M,U]),at=!!(M||U),Qe=Vr(Te,Fe=>{Fe?nt():Je()},Be,{enabled:at&&(Z||Q),fallbackOnParent:at&&Z}),We={...O};delete We.disabled,delete We.className,delete We.faded,delete We.useFaded,delete We.loading,delete We.onMouseLeave,delete We.onPointerEnter,delete We.onPointerLeave,delete We.onPointerUp,delete We.onFocus,delete We.onBlur,Z&&(Object.keys(We).forEach(Fe=>{/^on[A-Z]/.test(Fe)&&typeof We[Fe]=="function"&&delete We[Fe]}),We["aria-disabled"]="true");const mt=(typeof M=="string"?M:null)??(typeof F=="string"?F:null)??(typeof y=="string"?y:null)??(typeof ee=="string"?ee:null)??void 0,He=typeof y=="string"?y:typeof ee=="string"?ee:mt,st=U?[U.title,...U.items??[]].filter(Boolean).join(". "):M&&mt&&mt!==He?mt:"",Ct=[typeof O["aria-describedby"]=="string"?O["aria-describedby"]:void 0,st?Ge:null].filter(Boolean).join(" ")||void 0,ut=(Fe,rt)=>n.jsx(Ue,{icon:Fe,label:rt??He,className:Oe,imgClassName:"button__icon-img",maskClassName:"button__icon-mask",svgClassName:"button__icon-svg"}),vt=()=>Ce==="dot"?n.jsxs(n.Fragment,{children:[ut(d),ge&&n.jsx("span",{className:`button__label ${Y}`,children:lt()})]}):w==="center"&&d?n.jsxs(n.Fragment,{children:[n.jsxs("span",{className:"button__center-group",children:[n.jsx("span",{className:"button__left",children:ut(d)}),ge&&n.jsx("span",{className:`button__label ${Y}`,children:lt()})]}),Se&&n.jsx("span",{className:"button__right",children:ut(u)})]}):n.jsxs(n.Fragment,{children:[d&&n.jsx("span",{className:"button__left",children:ut(d,y??ee)}),ge&&n.jsx("span",{className:`button__label ${Y}`,children:lt()}),Se&&n.jsx("span",{className:"button__right",children:ut(u)})]}),ot=!!i&&!Z;return n.jsxs(n.Fragment,{children:[n.jsxs(ot?"a":"button",{...We,ref:Le,...ot?{href:i,target:l,rel:c??(l==="_blank"?"noreferrer":void 0)}:{type:s,disabled:Z&&!j&&!Ie},className:Ke,"aria-pressed":Ye,"aria-expanded":typeof x=="boolean"?x:O["aria-expanded"],"aria-controls":k??O["aria-controls"],"aria-label":He,"aria-disabled":Z&&(ot||j||Ie)?!0:void 0,"aria-describedby":Ct,style:de,onClick:Nt,onMouseLeave:Dt,onPointerEnter:Fe=>{Xn(Fe)||nt(),!Z&&typeof O.onPointerEnter=="function"&&O.onPointerEnter(Fe)},onPointerLeave:Fe=>{Xn(Fe)||Je(),!Z&&typeof O.onPointerLeave=="function"&&O.onPointerLeave(Fe)},onPointerUp:Fe=>{Z&&at&&Qe.touchPress(Fe.currentTarget),!Z&&typeof O.onPointerUp=="function"&&O.onPointerUp(Fe)},onFocus:Fe=>{ze(!0),Jn()||nt(),!Z&&typeof O.onFocus=="function"&&O.onFocus(Fe)},onBlur:Fe=>{ze(!1),Z||wt(Fe),Je(),!Z&&typeof O.onBlur=="function"&&O.onBlur(Fe)},children:[vt(),st?n.jsx("span",{id:Ge,hidden:!0,"aria-label":st}):null]}),Te&&U?n.jsx(Fn,{anchorRect:ie,title:U.title,items:U.items,onClose:se}):Te&&mt?n.jsx(gn,{anchorRect:ie,text:mt,onClose:se}):null]})}const pe=o.forwardRef(sf);pe.displayName="Button";var lf={statusFilter:"\uC0C1\uD0DC \uD544\uD130",pageSizeSelect:"\uD398\uC774\uC9C0\uB2F9 \uD45C\uC2DC \uAC1C\uC218",selectedCount:"{{count}}\uAC1C \uC120\uD0DD\uB428",cancel:"\uCDE8\uC18C",info:"\uC124\uBA85",errorState:{message:"\uBD88\uB7EC\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4.",retry:"\uB2E4\uC2DC \uC2DC\uB3C4"},save:"\uC800\uC7A5",confirm:"\uD655\uC778",discardConfirm:{title:"\uC785\uB825\uC744 \uCDE8\uC18C\uD560\uAE4C\uC694?",body:"\uC800\uC7A5\uD558\uC9C0 \uC54A\uC73C\uBA74 \uC9C0\uAE08\uAE4C\uC9C0 \uC785\uB825\uD55C \uB0B4\uC6A9\uC774 \uC0AC\uB77C\uC9D1\uB2C8\uB2E4.",confirm:"\uC785\uB825 \uCDE8\uC18C"},close:"\uB2EB\uAE30",back:"\uB4A4\uB85C",emptyTrainingName:"\uD6C8\uB828 \uC774\uB984\uC774 \uBE44\uC5B4 \uC788\uC2B5\uB2C8\uB2E4.",remove:"\uC81C\uAC70",image:"\uC774\uBBF8\uC9C0",delete:"\uC0AD\uC81C",reset:"\uCD08\uAE30\uD654",update:"\uC5C5\uB370\uC774\uD2B8",download:"\uB2E4\uC6B4\uB85C\uB4DC",search:"\uAC80\uC0C9",empty:"\uB370\uC774\uD130\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",yes:"\uC608",no:"\uC544\uB2C8\uC624",all:"\uC804\uCCB4",none:"\uC5C6\uC74C",days:"{{count}}\uC77C",loadMore:"\uB354\uBCF4\uAE30",more:"\uB354\uBCF4\uAE30",moreFor:"{{name}} \uB354\uBCF4\uAE30",retry:"\uB2E4\uC2DC \uC2DC\uB3C4",prevPage:"\uC774\uC804 \uD398\uC774\uC9C0",nextPage:"\uB2E4\uC74C \uD398\uC774\uC9C0",play:"\uC7AC\uC0DD",pause:"\uBA48\uCDA4",playPause:"\uC7AC\uC0DD / \uBA48\uCDA4",replay:"\uB2E4\uC2DC\uB4E3\uAE30",subscription:"\uC774\uC6A9\uAD8C",done:"\uC644\uB8CC",failed:"\uC2E4\uD328",continue:"\uACC4\uC18D",notification:"\uC54C\uB9BC",emptyList:"\uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",menu:"\uBA54\uB274",resetSelection:"\uC120\uD0DD \uCD08\uAE30\uD654",pageSizeLabel:"{{n}}\uAC1C\uC529 \uBCF4\uAE30",totalCountPrefix:"\uCD1D ",totalCountSuffix:"\uAC1C",expand:"\uD3BC\uCE58\uAE30",collapse:"\uC811\uAE30",popup:"\uD31D\uC5C5",codeBlock:"\uCF54\uB4DC \uBE14\uB85D",totalPrefix:"\uCD1D ",copyCode:"\uCF54\uB4DC \uBCF5\uC0AC",copied:"\uBCF5\uC0AC\uB428",col:{problem:"\uBB38\uC81C"},phonetics:{place:{labial:"\uC591\uC21C\uC74C",alveolar:"\uCE58\uC870\uC74C",palatal:"\uACBD\uAD6C\uAC1C\uC74C",velar:"\uC5F0\uAD6C\uAC1C\uC74C",glottal:"\uC131\uBB38\uC74C"},vowel:{frontHigh:"\uC804\uC124 \uACE0\uBAA8\uC74C",backHighUnrounded:"\uD6C4\uC124 \uACE0\uBAA8\uC74C \uD3C9\uC21C",backHighRounded:"\uD6C4\uC124 \uACE0\uBAA8\uC74C \uC6D0\uC21C",frontMid:"\uC804\uC124 \uC911\uBAA8\uC74C",backMidUnrounded:"\uD6C4\uC124 \uC911\uBAA8\uC74C \uD3C9\uC21C",backMidRounded:"\uD6C4\uC124 \uC911\uBAA8\uC74C \uC6D0\uC21C",low:"\uC800\uBAA8\uC74C"},glide:{j:"j\uD65C\uC74C",w:"w\uD65C\uC74C",velar:"\u0270\uD65C\uC74C"}},unknownError:"\uC54C \uC218 \uC5C6\uB294 \uC624\uB958",networkError:"\uB124\uD2B8\uC6CC\uD06C \uC5F0\uACB0\uC774 \uBD88\uC548\uC815\uD569\uB2C8\uB2E4. \uC5F0\uACB0 \uC0C1\uD0DC\uB97C \uD655\uC778\uD55C \uB4A4 \uB2E4\uC2DC \uC2DC\uB3C4\uD574 \uC8FC\uC138\uC694."},cf={rangeSelect:"\uAE30\uAC04 \uC120\uD0DD",dow:["\uC77C","\uC6D4","\uD654","\uC218","\uBAA9","\uAE08","\uD1A0"],yearMonth:"{{year}}\uB144 {{month}}\uC6D4",prevMonth:"\uC774\uC804 \uB2EC",addOnDate:"{{date}}\uC5D0 \uBC29\uBB38 \uB4F1\uB85D",nextMonth:"\uB2E4\uC74C \uB2EC",prevWeek:"\uC774\uC804 \uC8FC",nextWeek:"\uB2E4\uC74C \uC8FC",legend:{visited:"\uBC29\uBB38",scheduled:"\uC608\uC57D",noVisit:"\uBBF8\uBC29\uBB38"},periodSelect:"\uAE30\uAC04 \uB2E8\uC704",visitCount:"\uBC29\uBB38 {{count}}\uAC74"},uf={planSuffix:"\uC774\uC6A9\uAD8C",labeledPlan:"{{label}} \uC774\uC6A9\uAD8C",couponCode:"\uC774\uC6A9\uAD8C \uCF54\uB4DC",specialLabel:"\uC624\uD508\uD2B9\uAC00",unitDay:"\uC77C",unitYear:"\uB144",remainingDay:"{{n}}\uC77C \uB0A8\uC74C",remainingHour:"{{n}}\uC2DC\uAC04 \uB0A8\uC74C",remainingMinute:"{{n}}\uBD84 \uB0A8\uC74C",remainingSecond:"{{n}}\uCD08 \uB0A8\uC74C",menu:{use:"\uC0AC\uC6A9\uD558\uAE30",refund:"\uD658\uBD88\uD558\uAE30",delete:"\uC0AD\uC81C\uD558\uAE30"}},df={clearAriaLabel:"\uAC80\uC0C9\uC5B4 \uC9C0\uC6B0\uAE30"},pf={starLabel:"{{n}}\uBC88\uC9F8 \uBCC4 \uC120\uD0DD",valueLabel:"{{max}}\uC810 \uB9CC\uC810\uC5D0 {{value}}\uC810",groupLabel:"\uBCC4\uC810"},mf={selected:"\uC120\uD0DD\uB428"},hf={placeholder:"\uC120\uD0DD"},ff={collapse:"\uC811\uAE30",expand:"\uD3BC\uCE58\uAE30"},Cf={biArea:"BI \uC601\uC5ED",biSymbol:"BI \uC2EC\uBCFC",logoMalgwi:"\uB9D0\uADC0 \uB85C\uACE0",logoManager:"\uB9D0\uADC0\uB9E4\uB2C8\uC800 \uB85C\uACE0",menuOpen:"\uBA54\uB274 \uC5F4\uAE30",utilMenu:"\uC720\uD2F8\uB9AC\uD2F0 \uBA54\uB274",menuClose:"\uBA54\uB274 \uB2EB\uAE30"},gf={mainMenu:"\uBA54\uC778 \uBA54\uB274",bottomNav:"\uD558\uB2E8 \uB124\uBE44\uAC8C\uC774\uC158",goToManager:"\uB9D0\uADC0\uB9E4\uB2C8\uC800\uB85C \uC774\uB3D9",goToMalgwi:"\uB9D0\uADC0\uB85C \uC774\uB3D9",modeLabelManager:"\uB9D0\uADC0 \uB9E4\uB2C8\uC800",modeLabelMalgwi:"\uB9D0\uADC0",training:"\uD6C8\uB828",settings:"\uC124\uC815",notifications:"\uC54C\uB9BC",account:"\uACC4\uC815",help:"\uB3C4\uC6C0\uB9D0",feedback:"\uBC84\uADF8\uC2E0\uACE0",debug:"\uB514\uBC84\uADF8",coupons:"\uCFE0\uD3F0",topic:"\uC8FC\uC81C\uBCC4 \uB4E3\uAE30",trainingType:"\uD6C8\uB828\uBCC4 \uB4E3\uAE30",wordPairs:"\uB300\uB9BD\uC30D \uCC3E\uAE30",wordSearch:"\uB2E8\uC5B4 \uCC3E\uAE30",wordTable:"\uB2E8\uC5B4\uD45C \uB9CC\uB4E4\uAE30",company:"\uC5C5\uCCB4\uC815\uBCF4",more:"\uB354\uBCF4\uAE30",moreMenu:"\uB354\uBCF4\uAE30 \uBA54\uB274",badgeLabel:"{{label}}, {{count}}\uAC1C"},bf={language:{training:{label:"\uD6C8\uB828 \uC5B8\uC5B4",sub:"\uD6C8\uB828\uC5D0 \uC0AC\uC6A9\uB418\uB294 \uB2E8\uC5B4\uC640 \uC74C\uC131 \uC5B8\uC5B4"}},notifications:{title:"\uC54C\uB9BC"},display:{fontSize:{small:"\uC791\uAC8C",large:"\uD06C\uAC8C"}},cache:{title:"\uCE90\uC2DC \uAD00\uB9AC",confirmMessage:"\uCE90\uC2DC({{size}})\uB97C \uC0AD\uC81C\uD569\uB2C8\uB2E4. \uACC4\uC18D\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C?",delete:"\uC0AD\uC81C",deleting:"\uC0AD\uC81C \uC911",cleared:"\uCE90\uC2DC\uAC00 \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",group:{wordData:{label:"\uB2E8\uC5B4 \uB370\uC774\uD130",sub:"\uB2E8\uC5B4 \uBAA9\uB85D \uBC0F \uBC84\uC804 \uC815\uBCF4"},pairIndex:{label:"\uB2E8\uC5B4\uC30D \uC778\uB371\uC2A4",sub:"\uCD08\uC131\xB7\uC911\uC131\xB7\uC885\uC131 \uB300\uB9BD\uC30D \uBD84\uC11D \uCE90\uC2DC"},imageCache:{label:"\uC774\uBBF8\uC9C0 \uCE90\uC2DC",sub:"\uB2E8\uC5B4\uBCC4 \uC774\uBBF8\uC9C0 \uC874\uC7AC \uC5EC\uBD80 \uD655\uC778 \uACB0\uACFC"},trainingRecord:{label:"\uD6C8\uB828 \uAE30\uB85D",sub:"\uC624\uB298\uC758 \uD6C8\uB828 \uC9C4\uD589\uB960 \uBC0F \uD559\uC2B5 \uC77C\uC218"}}},button:{save:"\uC124\uC815 \uC800\uC7A5"},popup:{clear:{confirm:"\uCD08\uAE30\uD654"},update:{confirm:"\uC5C5\uB370\uC774\uD2B8"},cache:{title:"{{label}} \uC0AD\uC81C",message:"{{label}}({{size}})\uB97C \uC0AD\uC81C\uD569\uB2C8\uB2E4. \uACC4\uC18D\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C?"}},saved:"\u2713 \uC800\uC7A5\uB428",account:{title:"\uACC4\uC815",delete:{sub:"\uD0C8\uD1F4 \uD6C4 30\uC77C \uC774\uB0B4 \uC7AC\uAC00\uC785 \uC2DC \uBCF5\uAD6C \uAC00\uB2A5\uD569\uB2C8\uB2E4."}}},yf={addButton:"\uC774\uC6A9\uAD8C \uCD94\uAC00\uD558\uAE30",couponButton:"\uCFE0\uD3F0 \uC785\uB825",loading:"\uBD88\uB7EC\uC624\uB294 \uC911\u2026",segment:{personal:"\uB9D0\uADC0",org:"\uB9D0\uADC0\uB9E4\uB2C8\uC800"},org:{title:"\uD604\uC7AC \uC774\uC6A9\uAD8C",disc:"\uAE30\uAD00\uC5D0\uC11C \uC0AC\uC6A9 \uC911\uC778 \uC774\uC6A9\uAD8C \uC815\uBCF4\uC785\uB2C8\uB2E4.",empty:"\uB4F1\uB85D\uB41C \uAE30\uAD00 \uC774\uC6A9\uAD8C\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",fallbackTitle:"\uAE30\uAD00 \uC774\uC6A9\uAD8C",startDate:"\uC2DC\uC791\uC77C",endDate:"\uB9CC\uB8CC\uC77C",remaining:"\uB0A8\uC740 \uAE30\uAC04",duration:"\uC774\uC6A9 \uAE30\uAC04"},active:{infoTitle:"\uC774\uC6A9 \uC815\uBCF4",refund:"\uD658\uBD88 \uC694\uCCAD",startDate:"\uC0AC\uC6A9 \uC2DC\uC791\uC77C",endDate:"\uC885\uB8CC\uC77C",remaining:"\uB0A8\uC740 \uAE30\uAC04"},pending:{title:"\uBCF4\uC720",empty:"\uB300\uAE30 \uC911\uC778 \uC774\uC6A9\uAD8C\uC774 \uC5C6\uC2B5\uB2C8\uB2E4."}},vf={profile:{planSuffix:"\uD50C\uB79C",plan:"\uD50C\uB79C"},basicInfo:{name:{placeholder:"\uD64D\uAE38\uB3D9"}},security:{title:"\uBCF4\uC548",password:{label:"\uBE44\uBC00\uBC88\uD638",currentRequired:"\uD604\uC7AC \uBE44\uBC00\uBC88\uD638\uB97C \uC785\uB825\uD558\uC138\uC694.",newRequired:"\uC0C8 \uBE44\uBC00\uBC88\uD638\uB97C \uC785\uB825\uD558\uC138\uC694.",mismatch:"\uC0C8 \uBE44\uBC00\uBC88\uD638\uAC00 \uC77C\uCE58\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.",changed:"\uBE44\uBC00\uBC88\uD638\uAC00 \uBCC0\uACBD\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},twoFactor:{label:"2\uB2E8\uACC4 \uC778\uC99D",sub:"\uACC4\uC815 \uBCF4\uC548\uC744 \uAC15\uD654\uD558\uC138\uC694"}}},xf={guide:{faq:{title:"\uC790\uC8FC \uBB3B\uB294 \uC9C8\uBB38",desc:"FAQ \uBAA8\uC544\uBCF4\uAE30"}}},_f={settings:"\uC124\uC815",start:{title:"\uB2E8\uC5B4\uD6C8\uB828 \uC2DC\uC791",description:"\uC544\uB798 \uD6C8\uB828 \uC720\uD615\uC744 \uC120\uD0DD\uD574 \uC2DC\uC791\uD558\uC138\uC694"},difficulty:{tooltip:"\uAC00\uC7A5 \uC26C\uC6B4 \uB09C\uC774\uB3C4\uB294 '\uBB34\uC791\uC704', \uAC00\uC7A5 \uC5B4\uB824\uC6B4 \uB09C\uC774\uB3C4\uB294 '\uCD08\uC131\uCC28\uC774' \uC785\uB2C8\uB2E4."},contrast:{label:"\uB300\uB9BD",type:"\uB300\uB9BD \uC885\uB958",count:"\uB300\uB9BD \uAC2F\uC218",n:"{{n}}\uAC1C"},filter:{random:"\uBB34\uC791\uC704",trainOnset:"\uCD08\uC131",trainVowel:"\uBAA8\uC74C",trainCoda:"\uC885\uC131",phonemeGroup:"\uD6C8\uB828 \uC74C\uC808",noLimit:"\uBB34\uAD00",codaExclude:"\uC81C\uC678",gradeLabel:"\uB4F1\uAE09",excludeImageInfo:"\uC774\uBBF8\uC9C0 \uC788\uB294 \uB2E8\uC5B4\uB9CC: \uB2E8\uC5B4 \uC911\uC5D0 \uC774\uBBF8\uC9C0\uAC00 \uC788\uB294 \uB2E8\uC5B4\uB9CC \uACB0\uACFC\uC5D0 \uBCF4\uC5EC\uC90D\uB2C8\uB2E4.",sameStructureInfo:"\uC74C\uC18C \uAD6C\uC870 \uAC19\uC740 \uB2E8\uC5B4\uB9CC: \uC815\uB2F5\uACFC \uC624\uB2F5\uC758 \uC74C\uC808 \uAD6C\uC870(\uAE00\uC790 \uC218\xB7\uBC1B\uCE68 \uC720\uBB34 \uB4F1)\uAC00 \uAC19\uC740 \uACB0\uACFC\uB9CC \uB0A8\uACA8\uC694.",selectSection:"\uC120\uD0DD",excludeImage:"\uC774\uBBF8\uC9C0 \uC788\uB294 \uB2E8\uC5B4\uB9CC",sameStructure:"\uC74C\uC18C \uAD6C\uC870 \uAC19\uC740 \uB2E8\uC5B4\uB9CC"},noQuestions:"\uBB38\uC81C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",countQuestions:"{{n}}\uBB38\uC81C",countSentences:"{{n}}\uBB38\uC7A5",comingSoon:"\uC900\uBE44 \uC911",nextQuestion:"\uB2E4\uC74C \uBB38\uC81C",noiseRatioTitle:"\uC18C\uC74C \uBE44\uC728",noiseRatioValue:"{{ratio}}\uBC30",noiseTypeTitle:"\uC18C\uC74C \uC885\uB958",playVolumeTitle:"\uC804\uCCB4 \uC18C\uB9AC",playSpeedTitle:"\uC7AC\uC0DD \uC18D\uB3C4",meter:{sentence:"\uC7AC\uC0DD",noise:"\uC18C\uC74C",toggle:"\uC624\uB514\uC624 \uBBF8\uD130 \uD45C\uC2DC"},viewResult:"\uACB0\uACFC\uBCF4\uAE30",problemNotice:"{{n}}\uBC88 \uBB38\uC81C \uC785\uB2C8\uB2E4.",trainingSettingsTitle:"\uD6C8\uB828 \uC124\uC815",sentencePreview:"\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30",notHeard:"\uC548 \uB4E4\uB838\uC5B4\uC694.",heardWell:"\uC798 \uB4E4\uB838\uC5B4\uC694.",confirmTitle:"\uBB38\uC7A5\uC744 \uD655\uC778\uD558\uACE0 \uC798 \uB4E4\uB838\uB294\uC9C0 \uC120\uD0DD\uD558\uC138\uC694.",noSoundWaveform:"\uC18C\uB9AC \uBE44\uAD50 \uBB38\uC81C\uB294 \uC6E8\uC774\uBE0C\uD3FC\uC744 \uD45C\uD604\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.",noise:{level:{none:"\uC5C6\uC74C",weak:"\uC57D\uD568",medium:"\uBCF4\uD1B5",strong:"\uAC15\uD568",veryStrong:"\uB9E4\uC6B0 \uAC15\uD568"},type:{none:"\uC5C6\uC74C",default:"\uAE30\uBCF8",street:"\uAE38\uAC70\uB9AC",buzz:"\uC640\uAE00\uC640\uAE00",restaurant:"\uC2DD\uB2F9"}},listenTitle:"\uC81C\uC2DC\uD558\uB294 \uBB38\uC7A5\uC744 \uB4E4\uC5B4\uC8FC\uC138\uC694.",listenButton:"\uBB38\uC7A5 \uB4E3\uAE30",playSound:"\uC18C\uB9AC \uB4E3\uAE30",playAll:"\uBAA8\uB450 \uB4E3\uAE30",selectInOrder:"\uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uCE74\uB4DC\uB97C \uC120\uD0DD\uD558\uC138\uC694.",stop:"\uC815\uC9C0",preview:"\uBBF8\uB9AC \uB4E3\uAE30",next:"\uB2E4\uC74C",completed:"\uD6C8\uB828 \uC644\uB8CC",selected:"\uC120\uD0DD\uB428",nthSelected:"{{n}}\uBC88\uC9F8 \uC120\uD0DD",fontSizeMin:"\uAE00\uC528 \uD06C\uAE30\uAC00 \uCD5C\uC18C\uC785\uB2C8\uB2E4.",fontSizeMax:"\uAE00\uC528 \uD06C\uAE30\uAC00 \uCD5C\uB300\uC785\uB2C8\uB2E4.",fontSizeDecrease:"\uAE00\uC790 \uD06C\uAE30 \uAC10\uC18C",fontSizeIncrease:"\uAE00\uC790 \uD06C\uAE30 \uC99D\uAC00",toggleBackground:"\uBC30\uACBD \uC804\uD658",cardInstructions:"\uB0B1\uB9D0 \uCE74\uB4DC\uB97C \uBCF4\uACE0 \uC18C\uB9AC\uB97C \uB4E3\uACE0 \uD655\uC778\uD558\uC138\uC694.",noCards:"\uCE74\uB4DC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",audioFetchError:"\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4.",ttsUnavailable:"\uC774 \uAE30\uAE30\uC5D0\uC11C\uB294 \uC74C\uC131\uC744 \uB4E4\uB824\uC904 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",selectConfirm:"\uBB38\uC81C\uB97C \uBCF4\uACE0 \uD574\uB2F9\uD558\uB294 \uB0B4\uC6A9\uC744 \uC120\uD0DD\uD558\uC138\uC694.",orderListDefault:"\uBB38\uC7A5\uC744 \uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uBC30\uCE58\uD558\uC138\uC694.",result:{pendingDone:"\uACB0\uACFC\uB97C \uACC4\uC0B0\uD558\uB294 \uC911\uC774\uB77C \uC544\uC9C1 \uC644\uB8CC\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",eyebrow:"\uD6C8\uB828 \uC644\uB8CC",title:"\uD6C8\uB828\uC744 \uBAA8\uB450 \uB9C8\uCCE4\uC2B5\uB2C8\uB2E4.",scoreAria:"{{correct}} / {{total}} \uBB38\uD56D",elapsed:"\uC18C\uC694 \uC2DC\uAC04",summary:"{{correct}}\uAC1C\uC758 \uBB38\uD56D\uC744 \uC798 \uB4E4\uC5C8\uC2B5\uB2C8\uB2E4.",tableAriaLabel:"\uBB38\uD56D\uBCC4 \uD310\uC815",colJudge:"\uD310\uC815",colAnswerSelected:"\uC815\uB2F5 \xB7 \uC120\uD0DD",colAnswer:"\uC815\uB2F5",colSelected:"\uC120\uD0DD",heardWell:"\uC798 \uB4E4\uC5C8\uC5B4\uC694",notHeard:"\uBABB \uB4E4\uC5C8\uC5B4\uC694",notJudged:"\uBBF8\uD310\uC815",replay:"\uB2E4\uC2DC\uD558\uAE30",done:"\uC644\uB8CC",viewResult:"\uACB0\uACFC \uD655\uC778",noContent:"(\uB0B4\uC6A9\uC5C6\uC74C)"},up:"\uC704\uB85C",down:"\uC544\uB798\uB85C",prev:"\uC774\uC804",listenLabel:"\uBB38\uC7A5 \uB4E3\uAE30",sourcePlay:"\uC18C\uC2A4 {{n}} \uC7AC\uC0DD",listen:"\uB4E3\uAE30",audioStatus:{idle:"\uB300\uAE30",resolving:"\uB9AC\uC18C\uC2A4 \uB9E4\uD551 \uC911\u2026",checking_exists:"\uD30C\uC77C \uC874\uC7AC \uD655\uC778\u2026",getting_signed_url:"\uC11C\uBA85 URL \uC870\uD68C\u2026",downloading:"\uB2E4\uC6B4\uB85C\uB4DC \uC911\u2026",measuring_duration:"\uC624\uB514\uC624 \uAE38\uC774 \uCE21\uC815\u2026",ready:"\uC900\uBE44 \uC644\uB8CC",error:"\uC624\uB958 \uBC1C\uC0DD"}},wf={totalCount:"\uAC1C\uC758 \uD6C8\uB828 \uBB36\uC74C",renameGroup:"\uADF8\uB8F9 \uC774\uB984 \uBC14\uAFB8\uAE30",itemCount:"\uD6C8\uB828 \uAC1C\uC218",menu:{edit:"\uD6C8\uB828 \uBB36\uC74C \uC218\uC815",rename:"\uC774\uB984 \uBC14\uAFB8\uAE30",move:"\uADF8\uB8F9 \uC774\uB3D9",duplicate:"\uD6C8\uB828 \uBB36\uC74C \uBCF5\uC0AC",publish:"\uB9D0\uADC0\uC790\uB8CC\uC2E4\uC5D0 \uC62C\uB9AC\uAE30"},sort:{customers:"\uD6C8\uB828 \uACE0\uAC1D"},copyLink:"\uB9C1\uD06C \uBCF5\uC0AC",removeLink:"\uB9C1\uD06C \uC81C\uAC70",linkRemoved:"\uB9C1\uD06C\uAC00 \uC81C\uAC70\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",linkSaveFirst:"\uBA3C\uC800 \uD6C8\uB828 \uBB36\uC74C\uC744 \uC800\uC7A5\uD574\uC8FC\uC138\uC694.",linkSaveFirstHint:"\uC800\uC7A5\uB41C \uD6C8\uB828 \uBB36\uC74C\uC5D0\uC11C\uB9CC \uACF5\uC720 \uB9C1\uD06C\uB97C \uC0DD\uC131\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.",linkCopySelect:"\uBCF5\uC0AC\uAC00 \uB9C9\uD600 \uB9C1\uD06C\uB97C \uC120\uD0DD\uD588\uC2B5\uB2C8\uB2E4. Ctrl/\u2318+C\uB85C \uBCF5\uC0AC\uD558\uC138\uC694.",nameRequired:"\uD6C8\uB828 \uBB36\uC74C \uC774\uB984\uC744 \uC785\uB825\uD574\uC8FC\uC138\uC694.",itemRequired:"\uD6C8\uB828\uC744 1\uAC1C \uC774\uC0C1 \uB2F4\uC544\uC8FC\uC138\uC694.",randomAdd:"\uBB34\uC791\uC704 \uCD94\uAC00"},kf={totalCount:"\uBA85\uC758 \uACE0\uAC1D",loadError:"\uBAA9\uB85D\uC744 \uBD88\uB7EC\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4.",basicInfo:{editTooltip:"\uC218\uC815\uD558\uAE30"},member:{placeholder:"\uC774\uBA54\uC77C \uB610\uB294 \uC804\uD654",link:"\uC5F0\uACB0",linking:"\uC5F0\uACB0 \uC911\u2026"},device:{title:"\uCCAD\uAC01\uC7AC\uD65C\uAE30\uAE30",addTooltip:"\uC0C8\uB85C \uC0DD\uC131",addButton:"\uAE30\uAE30 \uCD94\uAC00",listTooltip:"\uBAA9\uB85D \uBCF4\uAE30",listTitle:"\uCE21 \uAE30\uAE30 \uBAA9\uB85D",historyEmpty:"\uB4F1\uB85D\uB41C \uAE30\uAE30 \uC774\uB825\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",wearing:"\uCE21 \uCC29\uC6A9\uC911",notRegistered:"\uBBF8\uB4F1\uB85D",unit:"\uAC1C",wearingNow:"\uCC29\uC6A9",wear:"\uCC29\uC6A9",unwear:"\uCC29\uC6A9 \uD574\uC81C",wornSince:"{{date}}\uBD80\uD130",release:"\uD574\uC81C",historyTitle:"\uCCAD\uAC01\uC7AC\uD65C\uAE30\uAE30 \uC774\uB825"},schedule:{title:"\uBC29\uBB38 \uC608\uC815",addTooltip:"\uC608\uC815 \uB4F1\uB85D",listTooltip:"\uC804\uCCB4 \uBCF4\uAE30",empty:"\uC608\uC815\uB41C \uBC29\uBB38\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",registerTitle:" \uACE0\uAC1D\uB2D8 \uBC29\uBB38 \uC608\uC815 \uB4F1\uB85D",memoPlaceholder:"\uBC29\uBB38 \uC608\uC815 \uAD00\uB828 \uBA54\uBAA8\uB97C \uC785\uB825\uD574 \uC8FC\uC138\uC694."},visitHistory:{title:"\uBC29\uBB38 \uC774\uB825",addTooltip:"\uC2E0\uADDC \uB4F1\uB85D",empty:"\uC544\uC9C1 \uBC29\uBB38 \uAE30\uB85D\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",popupTitle:" \uACE0\uAC1D\uB2D8 \uBC29\uBB38 \uC774\uB825",registerTitle:" \uACE0\uAC1D\uB2D8 \uC2E0\uADDC \uBC29\uBB38 \uB4F1\uB85D"},homework:{title:"\uC219\uC81C \uC9C4\uD589\uC0C1\uD669",active:"\uD65C\uC131",inactive:"\uBE44\uD65C\uC131",copy:"\uB9C1\uD06C \uBCF5\uC0AC",copied:"\uB9C1\uD06C\uAC00 \uBCF5\uC0AC\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},moreItems:"\uB354 \uC788\uC74C",viewAll:"\uC804\uCCB4 \uBCF4\uAE30",visits:{title:"\uBC29\uBB38"},trainingRecord:{title:"\uACE0\uAC1D \uD6C8\uB828 \uAE30\uB85D"},status:{trainingSubtitle:"\uD6C8\uB828 \uD604\uD669"},detail:{session:{completedFmt:"\uC644\uB8CC {{done}}/{{total}} \xB7 {{duration}}"},visitSuffix:"\uC758 \uBC29\uBB38"},duration:{minSec:"{{m}}\uBD84 {{s}}\uCD08",min:"{{m}}\uBD84",sec:"{{s}}\uCD08"}},Af={plan:{recommendedFor:"\uC774\uB7F0 \uBD84\uAED8 \uCD94\uCC9C\uD569\uB2C8\uB2E4.",features:"\uD575\uC2EC \uAE30\uB2A5",freePrice:"\uBB34\uB8CC",contact:"\uBB38\uC758\uD558\uAE30",tierFallback:"\uC774\uC6A9\uAD8C",openPromo:"\uC624\uD508 \uD2B9\uAC00"},products:{mgrEnterprise:{tier:{price:"\uBB38\uC758"}}}},Bf={title:"\uCFE0\uD3F0",subtitle:"\uCFE0\uD3F0 \uCF54\uB4DC\uB97C \uC785\uB825\uD558\uAC70\uB098 \uBCF4\uC720 \uCFE0\uD3F0\uC744 \uD655\uC778\uD558\uC138\uC694.",input:{label:"\uCFE0\uD3F0 \uCF54\uB4DC",placeholder:"\uCFE0\uD3F0 \uCF54\uB4DC \uC785\uB825"},applyButton:"\uC801\uC6A9",error:{invalid:"\uC720\uD6A8\uD558\uC9C0 \uC54A\uC740 \uCFE0\uD3F0 \uCF54\uB4DC\uC785\uB2C8\uB2E4.",alreadyUsed:"\uC774\uBBF8 \uC0AC\uC6A9\uB41C \uCFE0\uD3F0\uC785\uB2C8\uB2E4."},success:{applied:'"{{name}}" \uCFE0\uD3F0\uC774 \uC801\uC6A9\uB418\uC5C8\uC2B5\uB2C8\uB2E4.'},section:{owned:"\uBCF4\uC720 \uCFE0\uD3F0"},status:{used:"\uC0AC\uC6A9 \uC644\uB8CC",available:"\uC0AC\uC6A9 \uAC00\uB2A5"}},Nf={unitVisit:"\uAC74",periodAll:"\uC804\uCCB4",showN:"{{n}}\uAC1C\uC529"},Ef={subtitle:"\uC5C5\uCCB4 \uBC0F \uBC95\uC778 \uC815\uBCF4\uB97C \uAD00\uB9AC\uD558\uC138\uC694.",editButton:"\uC815\uBCF4 \uC218\uC815",basicInfo:{title:"\uAE30\uBCF8 \uC815\uBCF4"},contactInfo:{title:"\uC5F0\uB77D\uCC98 \uC815\uBCF4"}},Df={title:"\uD6C8\uB828\uBCC4 \uB4E3\uAE30",subtitle:"\uC6D0\uD558\uB294 \uD6C8\uB828 \uC720\uD615\uC744 \uC120\uD0DD\uD558\uC138\uC694.",listenInNoise:{title:"\uC18C\uC74C \uD558 \uBB38\uC7A5 \uB4E3\uAE30",desc:"\uB2E4\uC591\uD55C \uC18C\uC74C \uD658\uACBD\uC5D0\uC11C \uBB38\uC7A5 \uCCAD\uB825\uC744 \uD6C8\uB828\uD569\uB2C8\uB2E4."},shortStory:{title:"\uC9E7\uC740 \uC774\uC57C\uAE30 \uB4E3\uAE30",desc:"\uC9E7\uC740 \uC774\uC57C\uAE30\uB97C \uB4E3\uACE0 \uB0B4\uC6A9\uC744 \uC774\uD574\uD569\uB2C8\uB2E4."},longStory:{title:"\uAE34 \uC774\uC57C\uAE30 \uB4E3\uAE30",desc:"\uAE34 \uC774\uC57C\uAE30\uB97C \uC9D1\uC911\uD574\uC11C \uB4E3\uACE0 \uB0B4\uC6A9\uC744 \uD30C\uC545\uD569\uB2C8\uB2E4."},orderingSentence:{title:"\uBB38\uC7A5 \uC21C\uC11C\uD654",desc:"\uB4E4\uC740 \uBB38\uC7A5\uB4E4\uC744 \uC62C\uBC14\uB978 \uC21C\uC11C\uB85C \uBC30\uC5F4\uD569\uB2C8\uB2E4."},SAME_SOUND_PICK:{label:"\uAC19\uC740 \uC18C\uB9AC \uACE0\uB974\uAE30",sub:"\uB4E4\uC740 \uC18C\uB9AC\uC640 \uAC19\uC740 \uB2E8\uC5B4 \uCE74\uB4DC\uB97C \uACE0\uB974\uC138\uC694."},SAME_OR_DIFF:{label:"\uAC19\uC740\uC9C0 \uB2E4\uB978\uC9C0 \uB9DE\uD788\uAE30",sub:"\uB450 \uC18C\uB9AC\uAC00 \uAC19\uC740\uC9C0, \uB2E4\uB978\uC9C0 \uAD6C\uBD84\uD558\uC138\uC694."},HEAR_AND_PICK_SAME:{label:"\uC77C\uCE58\uD558\uB294 \uB2E8\uC5B4 \uB9DE\uD788\uAE30",sub:"\uB4E4\uC740 \uC18C\uB9AC\uC758 \uB2E8\uC5B4 \uCE74\uB4DC\uB97C \uACE0\uB974\uC138\uC694."},HEAR_AND_PICK_INCLUDED:{label:"\uD55C \uC74C\uC808 \uD3EC\uD568 \uB2E8\uC5B4 \uB9DE\uD788\uAE30",sub:"\uB4E4\uC740 \uC74C\uC808\uC774 \uD3EC\uD568\uB41C \uB2E8\uC5B4 \uCE74\uB4DC\uB97C \uACE0\uB974\uC138\uC694."},STARTS_WITH_SAME_SOUND:{label:"\uCCAB \uC74C\uC808\uC774 \uAC19\uC740 \uB2E8\uC5B4 \uB9DE\uD788\uAE30",sub:"\uB4E4\uC740 \uB2E8\uC5B4\uC640 \uAC19\uC740 \uC18C\uB9AC\uB85C \uC2DC\uC791\uD558\uB294 \uB2E8\uC5B4\uB97C \uACE0\uB974\uC138\uC694."},LISTEN_AND_REMEMBER_ORDER:{label:"\uB4E3\uACE0 \uC21C\uC11C\uB300\uB85C \uAE30\uC5B5\uD558\uAE30",sub:"\uC138 \uB2E8\uC5B4\uB97C \uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uCE74\uB4DC\uB97C \uC120\uD0DD\uD558\uC138\uC694."},MERGE_2_SYLLABLES:{label:"\uC74C\uC808 2\uAC1C \uD569\uCE58\uAE30",sub:"\uB450 \uC74C\uC808\uC744 \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uB2E8\uC5B4\uAC00 \uB420\uAE4C\uC694?"},MERGE_3_SYLLABLES:{label:"\uC74C\uC808 3\uAC1C \uD569\uCE58\uAE30",sub:"\uC138 \uC74C\uC808\uC744 \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uB2E8\uC5B4\uAC00 \uB420\uAE4C\uC694?"},MERGE_2_PHONEMES:{label:"\uC74C\uC18C 2\uAC1C \uD569\uCE58\uAE30",sub:"\uB450 \uC74C\uC18C\uB97C \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},MERGE_3_PHONEMES:{label:"\uC74C\uC18C 3\uAC1C \uD569\uCE58\uAE30",sub:"\uC138 \uC74C\uC18C\uB97C \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},DROP_1_FROM_2SYLL:{label:"2\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC808 \uD0C8\uB77D",sub:"2\uC74C\uC808 \uB2E8\uC5B4\uC5D0\uC11C \uD55C \uC74C\uC808\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},DROP_1_FROM_3SYLL:{label:"3\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC808 \uD0C8\uB77D",sub:"3\uC74C\uC808 \uB2E8\uC5B4\uC5D0\uC11C \uD55C \uC74C\uC808\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},DROP_PART_FROM_COMPOUND:{label:"\uD569\uC131\uC5B4\uC5D0\uC11C \uBD80\uBD84 \uD0C8\uB77D",sub:"\uD569\uC131\uC5B4\uC758 \uC77C\uBD80\uB97C \uBE7C\uBA74 \uC5B4\uB5A4 \uB2E8\uC5B4\uAC00 \uB420\uAE4C\uC694?"},DROP_FINAL_CONSONANT_FROM_1SYLL:{label:"1\uC74C\uC808\uC5D0\uC11C \uBC1B\uCE68 \uD0C8\uB77D",sub:"\uBC1B\uCE68\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},REMOVE_CONSONANT_AND_IDENTIFY_PHONEME:{label:"1\uC74C\uC808\uC5D0\uC11C \uC790\uC74C \uD0C8\uB77D",sub:"\uC790\uC74C\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB0A8\uC744\uAE4C\uC694?"},CHANGE_1_SYLL_IN_2SYLL:{label:"2\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC808 \uBC14\uAFB8\uAE30",sub:"2\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC808\uC744 \uBC14\uAFD4 \uC0C8 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uC138\uC694."},CHANGE_1_SYLL_IN_3SYLL:{label:"3\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC808 \uBC14\uAFB8\uAE30",sub:"3\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC808\uC744 \uBC14\uAFD4 \uC0C8 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uC138\uC694."},CHANGE_1_PHONEME_IN_1SYLL:{label:"1\uC74C\uC808 \uB2E8\uC5B4 \uC911 1\uAC1C \uC74C\uC18C \uBC14\uAFB8\uAE30",sub:"1\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC18C\uB97C \uBC14\uAFD4 \uC0C8 \uC18C\uB9AC\uB97C \uB9CC\uB4DC\uC138\uC694."},CHANGE_1_PHONEME_IN_2SYLL:{label:"2\uC74C\uC808 \uB2E8\uC5B4 \uC911 1\uAC1C \uC74C\uC18C \uBC14\uAFB8\uAE30",sub:"2\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC18C\uB97C \uBC14\uAFD4 \uC0C8 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uC138\uC694."}},Sf={comingSoon:"\uB2E8\uC5B4\uD6C8\uB828 \uAE30\uB2A5\uC744 \uC900\uBE44 \uC911\uC785\uB2C8\uB2E4."},jf={colName:"\uB2E8\uC5B4\uD45C \uC774\uB984",open:"\uC5F4\uAE30",countSuffix:"\uAC1C\uC758 \uB2E8\uC5B4\uD45C",tab:{cards:"\uB2E8\uC5B4\uD45C \uCE74\uB4DC",tables:"\uB2E8\uC5B4\uD45C"},cardsEmpty:"\uC544\uC9C1 \uB9CC\uB4E0 \uB2E8\uC5B4\uD45C \uCE74\uB4DC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",addCard:"\uB2E8\uC5B4\uD45C \uCE74\uB4DC \uCD94\uAC00",menu:{publishStore:"\uB9D0\uADC0\uC790\uB8CC\uC2E4\uC5D0 \uC62C\uB9AC\uAE30",unpublishStore:"\uB9D0\uADC0\uC790\uB8CC\uC2E4\uC5D0\uC11C \uB0B4\uB9AC\uAE30"},newBadge:"\uC0C8\uB85C \uB9CC\uB4E0 \uD45C",publishedBadge:"\uBC1C\uD589\uB428",sharedBadge:"\uACF5\uC720 \uC911"},Tf={title:"\uC8FC\uC694 \uB2E8\uC5B4",empty:"\uCD94\uCD9C\uB41C \uC8FC\uC694 \uB2E8\uC5B4\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4."},Mf={defaultName:"\uB2E8\uC5B4 \uD45C",title:"\uB2E8\uC5B4 \uD45C \uB9CC\uB4E4\uAE30",subtitle:"\uCE78\uC744 \uC124\uC815\uD558\uACE0 \uB2E8\uC5B4\uB97C \uCD94\uAC00\uD558\uC5EC \uD45C\uB97C \uB9CC\uB4ED\uB2C8\uB2E4.",filterTitle:"\uD45C \uC124\uC815",filter:{composition:"\uAD6C\uC131",image:"\uC774\uBBF8\uC9C0",word:"\uB2E8\uC5B4",standardPron:"\uD45C\uC900 \uBC1C\uC74C",colloquialPron:"\uAD6C\uC5B4\uCCB4 \uBC1C\uC74C",paperOrientation:"\uC6A9\uC9C0 \uBC29\uD5A5",landscape:"\uAC00\uB85C",portrait:"\uC138\uB85C",columns:"\uCE78 \uC218",column:"{{count}}\uCE78",itemsPerPageWord:"\uD398\uC774\uC9C0\uB2F9 \uB2E8\uC5B4 \uC218",itemsPerPagePair:"\uD398\uC774\uC9C0\uB2F9 \uB300\uB9BD\uC30D \uC218",itemsPerPageOption:"{{count}}\uAC1C",pageIndicator:"{{current}} / {{total}}",pageNumber:"\uD398\uC774\uC9C0 \uBC88\uD638",pageNumberLeft:"\uC67C\uCABD",pageNumberCenter:"\uC911\uC559",pageNumberRight:"\uC624\uB978\uCABD",border:"\uC678\uACFD\uC120",cutLine:"\uC808\uCDE8\uC120",show:"\uD45C\uC2DC",hide:"\uBBF8\uD45C\uC2DC",dotted:"\uC810\uC120",corner:"\uCF54\uB108"},addWord:"\uCD94\uAC00\uD558\uAE30",wordInfo:"{{word}} \uB0B1\uB9D0 \uC815\uBCF4",emptyItems:"\uB2E8\uC5B4\uB97C 1\uAC1C \uC774\uC0C1 \uCD94\uAC00\uD574\uC8FC\uC138\uC694.",load:"\uBD88\uB7EC\uC624\uAE30",openNewWindow:"\uC0C8 \uCC3D\uC73C\uB85C \uBCF4\uAE30",saveButton:"\uC800\uC7A5\uD558\uAE30",saveAsNewButton:"\uB2E4\uB978 \uC774\uB984\uC73C\uB85C \uC800\uC7A5",print:"\uC778\uC1C4\uD558\uAE30",popupBlocked:"\uD31D\uC5C5\uC774 \uCC28\uB2E8\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uBE0C\uB77C\uC6B0\uC800 \uC124\uC815\uC5D0\uC11C \uD31D\uC5C5\uC744 \uD5C8\uC6A9\uD574 \uC8FC\uC138\uC694.",printFileNameSingle:"\uB2E8\uC5B4\uD45C",printFileNamePair:"\uB300\uB9BD\uC30D\uD45C",save:{title:"\uB2E8\uC5B4\uD45C \uC800\uC7A5\uD558\uAE30",nameLabel:"\uC774\uB984",desc:"\uC800\uC7A5\uD560 \uB2E8\uC5B4 \uD45C\uC758 \uC774\uB984\uC744 \uC785\uB825\uD558\uC138\uC694.",placeholder:"\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC81C\uBAA9\uC744 \uC785\uB825\uD558\uC138\uC694.",descriptionLabel:"\uC124\uBA85",descriptionPlaceholder:"\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC124\uBA85\uC744 \uC785\uB825\uD558\uC138\uC694.",duplicateName:"\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4.",nameRequired:"\uD45C \uC774\uB984\uC744 \uC785\uB825\uD574 \uC8FC\uC138\uC694.",autoFillHint:" (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)",copyName:"{{name}} (\uBCF5\uC0AC)"},loadTable:{title:"\uC800\uC7A5\uB41C \uB2E8\uC5B4 \uD45C \uBD88\uB7EC\uC624\uAE30",empty:"\uC800\uC7A5\uB41C \uB2E8\uC5B4 \uD45C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",loadButton:"\uBD88\uB7EC\uC624\uAE30",itemCount:"{{count}}\uAC1C",deleteAriaLabel:"{{name}} \uC0AD\uC81C",sort:{newest:"\uCD5C\uC2E0\uC21C",oldest:"\uC624\uB798\uB41C\uC21C",name:"\uC774\uB984\uC21C",count:"\uB2E8\uC5B4 \uC218"},view:{grid:"\uD45C\uB85C \uBCF4\uAE30",list:"\uB9AC\uC2A4\uD2B8\uB85C \uBCF4\uAE30"}},groupDeleteMessage:"\uADF8\uB8F9 \uB0B4 \uB2E8\uC5B4\uD45C\uB294 '\uADF8\uB8F9 \uC5C6\uC74C'\uC73C\uB85C \uC774\uB3D9\uD569\uB2C8\uB2E4.",groupNamePlaceholder:"\uADF8\uB8F9 \uC774\uB984",store:{badge:"\uB9D0\uADC0\uC790\uB8CC\uC2E4"},card:{sub:"\uB2E8\uC5B4\uD45C \uCE74\uB4DC",empty:"\uC774 \uCE74\uB4DC\uC5D0 \uB2E8\uC5B4\uD45C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4."},toast:{renameError:"\uC774\uB984 \uBCC0\uACBD\uC5D0 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4",saveError:"\uC800\uC7A5\uC5D0 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4",deleteError:"\uC0AD\uC81C\uC5D0 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4",duplicateError:"\uBCF5\uC81C\uC5D0 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4",saveSuccess:"\uB2E8\uC5B4\uD45C\uAC00 \uC800\uC7A5\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},scoring:{o:"{{word}} \uB9DE\uC74C",triangle:"{{word}} \uC560\uB9E4",x:"{{word}} \uD2C0\uB9BC",button:"\uCC44\uC810\uD558\uAE30",pickTitle:"\uB204\uAD6C\uB97C \uCC44\uC810\uD560\uAE4C\uC694?",pickSubtitle:"\u2018{{name}}\u2019 \uD45C\uB85C \uD6C8\uB828\uD55C \uACE0\uAC1D\uC744 \uACE0\uB974\uC138\uC694.",pickSearch:"\uC774\uB984 \uB610\uB294 \uC804\uD654\uBC88\uD638\uB85C \uCC3E\uAE30",pickEmpty:"\uB4F1\uB85D\uB41C \uACE0\uAC1D\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",pickNoMatch:"\uCC3E\uB294 \uACE0\uAC1D\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",pickAgain:"\uACE0\uAC1D \uB2E4\uC2DC \uACE0\uB974\uAE30",scoringFor:"{{name}} \uB2D8 \uCC44\uC810 \uC911",none:"\uCE78 \uC544\uB798 \u25CB \xB7 \u25B3 \xB7 \u2715 \uB97C \uB20C\uB7EC \uB9E4\uAE30\uC138\uC694. \uB9C8\uC6B0\uC2A4\uB85C\uB294 \uCE78\uC5D0 \uC190\uC744 \uC5B9\uC73C\uBA74 \uB098\uD0C0\uB0A9\uB2C8\uB2E4.",tally:"{{marked}}\uCE78 \uCC44\uC810 \xB7 \u25CB {{o}} \xB7 \u25B3 {{triangle}} \xB7 \u2715 {{x}} \xB7 \uC815\uB2F5\uB960 {{rate}}%",save:"\uCC44\uC810 \uC800\uC7A5",saved:"{{name}} \uB2D8\uC758 \uCC44\uC810 {{count}}\uCE78\uC744 \uC800\uC7A5\uD588\uC2B5\uB2C8\uB2E4.",reviewTitle:"\uBCF5\uC2B5\uD45C\uB97C \uB9CC\uB4E4\uAE4C\uC694?",reviewMessage:"{{name}} \uB2D8\uC774 \uD2C0\uB9AC\uAC70\uB098 \uC560\uB9E4\uD588\uB358 {{count}}\uCE78\uC73C\uB85C \uC0C8 \uD45C\uB97C \uB9CC\uB4ED\uB2C8\uB2E4. \uB9DE\uD78C \uCE78\uC740 \uBE60\uC9D1\uB2C8\uB2E4.",reviewConfirm:"\uBCF5\uC2B5\uD45C \uB9CC\uB4E4\uAE30",reviewDescription:"\u2018{{name}}\u2019 \uCC44\uC810\uC5D0\uC11C \uD2C0\uB9AC\uAC70\uB098 \uC560\uB9E4\uD588\uB358 {{count}}\uCE78\uC744 \uBAA8\uC740 \uD45C\uC785\uB2C8\uB2E4.",reviewCreated:"\u2018{{name}}\u2019\uC744(\uB97C) \uB9CC\uB4E4\uC5C8\uC2B5\uB2C8\uB2E4 \u2014 {{count}}\uCE78.",discardTitle:"\uB9E4\uAE34 \uCC44\uC810\uC744 \uBC84\uB9B4\uAE4C\uC694?",discardMessage:"{{count}}\uCE78\uC744 \uB9E4\uACBC\uC9C0\uB9CC \uC544\uC9C1 \uC800\uC7A5\uD558\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4. \uB098\uAC00\uBA74 \uC0AC\uB77C\uC9D1\uB2C8\uB2E4.",discardConfirm:"\uBC84\uB9AC\uACE0 \uB098\uAC00\uAE30"},info:{grade:"\uB09C\uC774\uB3C4: {{n}}\uB4F1\uAE09",syllables:"\uC74C\uC808 \uC218: {{n}}\uC74C\uC808",pos:"\uD488\uC0AC: {{v}}",wordType:"\uC720\uD615: {{v}}"},pos:{noun:"\uBA85\uC0AC",verb:"\uB3D9\uC0AC",adjective:"\uD615\uC6A9\uC0AC",adverb:"\uBD80\uC0AC",numeral:"\uC218\uC0AC",determiner:"\uAD00\uD615\uC0AC",interjection:"\uAC10\uD0C4\uC0AC",particle:"\uC870\uC0AC",affix:"\uC811\uC0AC",dependentNoun:"\uC758\uC874\uBA85\uC0AC",pronoun:"\uB300\uBA85\uC0AC",auxVerb:"\uBCF4\uC870\uB3D9\uC0AC",auxAdjective:"\uBCF4\uC870\uD615\uC6A9\uC0AC"},reorder:{moved:"{{total}}\uCE78 \uAC00\uC6B4\uB370 {{n}}\uBC88\uC9F8\uB85C \uC62E\uAE40",handle:"{{word}} \uC21C\uC11C \uBC14\uAFB8\uAE30 (Alt + \uD654\uC0B4\uD45C)",hint:"Alt + \u2190 \u2192 \uB85C \uC21C\uC11C \uBC14\uAFB8\uAE30"}},Lf={editBanner:{message:"\uC800\uC7A5\uD558\uBA74 \uC9C0\uAE08 \uC218\uC815 \uC911\uC778 \uB2E8\uC5B4\uD45C\uAC00 \uAC31\uC2E0\uB429\uB2C8\uB2E4."},filterTitle:"\uB2E8\uC5B4 \uAC80\uC0C9 \uC124\uC815",filter:{positionAny:"\uBB34\uAD00",positionHead:"\uC5B4\uB450",positionMid:"\uC5B4\uC911",positionTail:"\uC5B4\uB9D0",difficulty:"\uB4F1\uAE09",grade:"{{n}}\uB4F1\uAE09",syllables:"\uC74C\uC808 \uC218",syllable:"{{n}}\uC74C\uC808",syllable5plus:"5\uC74C\uC808 \uC774\uC0C1",partOfSpeech:"\uD488\uC0AC",pos:{noun:"\uCCB4\uC5B8(\uBA85\uC0AC, \uC218\uC0AC)",verb:"\uC6A9\uC5B8(\uB3D9\uC0AC, \uD615\uC6A9\uC0AC)",modifier:"\uC218\uC2DD\uC5B8(\uBD80\uC0AC, \uAD00\uD615\uC0AC)"},wordType:"\uC720\uD615",type:{native:"\uACE0\uC720\uC5B4",sino:"\uD55C\uC790\uC5B4",foreign:"\uC678\uB798\uC5B4",mixed:"\uD63C\uC885\uC5B4"},exclude:"\uC81C\uC678",excludeNoImage:"\uC774\uBBF8\uC9C0 \uC5C6\uC74C"},searchButton:"\uAC80\uC0C9\uD558\uAE30",resultUnit:"\uB2E8\uC5B4",remaining:"{{count}}\uAC1C \uB0A8\uC74C",resultDisc:"\uC6D0\uD558\uB294 {{unit}} \uC120\uD0DD\uD558\uC138\uC694. {{max}}\uAC1C\uAE4C\uC9C0 \uC120\uD0DD\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4. ({{selected}}/{{max}})",resultTitlePrefix:"\uCD1D ",resultTitleSuffix:"\uAC1C\uC758 {{unit}} \uAC80\uC0C9\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",emptyResult:"\uAC80\uC0C9 \uACB0\uACFC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",groupCount:"{{count}}\uAC1C",sort:{aria:"\uC815\uB82C",match:"\uC2DC\uC791 \uC6B0\uC120",ganada:"\uAC00\uB098\uB2E4\uC21C \u2191",ganadaDesc:"\uAC00\uB098\uB2E4\uC21C \u2193",syllable:"\uC74C\uC808 \uC218 \u2191",syllableDesc:"\uC74C\uC808 \uC218 \u2193",grade:"\uB4F1\uAE09\uC21C \u2191",gradeDesc:"\uB4F1\uAE09\uC21C \u2193",original:"\uBC1B\uC740 \uC21C\uC11C"},pageSize:"{{count}}\uAC1C\uC529 \uBCF4\uAE30",pageSizeAria:"\uD398\uC774\uC9C0 \uD06C\uAE30",popup:{title:"{{n}}\uBC88 \uCE78\uC5D0 \uB123\uC744 \uB2E8\uC5B4\uB97C \uC120\uD0DD\uD558\uC138\uC694"}},$f={clearAllSelection:"\uBAA8\uB450 \uC120\uD0DD \uD574\uC81C",divLine:"\uB300\uB9BD\uC120",removePair:"\uB300\uB9BD\uC30D \uBE7C\uAE30",removeWord:"\uB2E8\uC5B4 \uBE7C\uAE30"},Rf={title:"\uC8FC\uC81C\uBCC4 \uB4E3\uAE30",subtitle:"\uC8FC\uC81C\uB97C \uC120\uD0DD\uD558\uACE0 \uB4E3\uAE30 \uD6C8\uB828\uC744 \uC2DC\uC791\uD558\uC138\uC694.",noiseTitle:"\uC18C\uC74C \uD558 \uBB38\uC7A5\uB4E3\uAE30",shortStoryTitle:"\uC9E7\uC740 \uC774\uC57C\uAE30 \uB4E3\uAE30",FOOD:"\uC74C\uC2DD",HLTH:"\uAC74\uAC15",WETH:"\uB0A0\uC528",PRSN:"\uC778\uBB3C",KRCT:"\uD55C\uAD6D\uBB38\uD654",STRY:"\uC774\uC57C\uAE30",LOCA:"\uC9C0\uC5ED",SOAR:"\uC0AC\uD68C\uC640 \uC608\uC220",NTSC:"\uC790\uC5F0\uACFC \uACFC\uD559",SPRT:"\uC2A4\uD3EC\uCE20",sub:{TRKRFD:"\uD55C\uAD6D \uC804\uD1B5\uC74C\uC2DD",MDKRFD:"\uD55C\uAD6D \uD604\uB300\uC74C\uC2DD",WRLDFD:"\uC138\uACC4\uC758 \uC74C\uC2DD",MTRFRT:"\uC2DD\uC7AC\uB8CC\uC640 \uACFC\uC77C",GEFDKL:"\uC74C\uC2DD \uC0C1\uC2DD",HTETHB:"\uAC74\uAC15\uD55C \uC2DD\uC2B5\uAD00",DISILL:"\uBCD1\uACFC \uC9C8\uD658",EXCISE:"\uC6B4\uB3D9",GEHTKL:"\uAC74\uAC15\uC0C1\uC2DD",GESSKL:"\uACC4\uC808\uC0C1\uC2DD",SNWRAN:"\uB208\uACFC \uBE44",WTHFCT:"\uC77C\uAE30\uC608\uBCF4",GEWTKL:"\uB0A0\uC528\uC0C1\uC2DD",JODYPS:"\uC870\uC120\uC2DC\uB300",MDKRPS:"\uD55C\uAD6D \uADFC\uD604\uB300",THKDPS:"\uC0BC\uAD6D\uC2DC\uB300",WRLART:"\uC138\uACC4\uC758 \uC608\uC220\uAC00",WRLPSN:"\uC138\uACC4\uC758 \uC778\uBB3C",KRLANG:"\uC6B0\uB9AC\uB9D0",TRPLCT:"\uC804\uD1B5\uB180\uC774",HERITG:"\uBB38\uD654\uC7AC",EVTFES:"\uD589\uC0AC\uC640 \uCD95\uC81C",GECTKL:"\uC0C1\uC2DD",FRYTAL:"\uB3D9\uD654",AMZING:"\uC2E0\uAE30\uD55C \uC774\uC57C\uAE30",DAYSTR:"\uC77C\uC0C1 \uC18D \uC774\uC57C\uAE30",KRLDMK:"\uD55C\uAD6D\uC758 \uBA85\uC18C",SELNMK:"\uC11C\uC6B8\uC758 \uBA85\uC18C",WRDTRB:"\uC138\uACC4\uC5EC\uD589",NAVIGT:"\uAE38 \uCC3E\uAE30",KRSOCI:"\uD55C\uAD6D",ECONEW:"\uACBD\uC81C\uC640 \uB274\uC2A4",GENART:"\uC608\uC220",GELFKL:"\uC0DD\uD65C \uC0C1\uC2DD",ANIMAL:"\uB3D9\uBB3C",PLANTS:"\uC2DD\uBB3C",ETHPLT:"\uC9C0\uAD6C",TOLELC:"\uB3C4\uAD6C\uC640 \uC804\uC790\uC81C\uD488",GESCKL:"\uACFC\uD559\uC0C1\uC2DD",INVDSP:"\uAC1C\uC778\uACBD\uAE30",MARART:"\uACA9\uD22C\uAE30",TEAMSP:"\uB2E8\uCCB4\uACBD\uAE30",FOOTBL:"\uCD95\uAD6C",GESPKL:"\uC2A4\uD3EC\uCE20 \uC0C1\uC2DD"}},Pf={maxUses:"\uCD5C\uB300 \uC0AC\uC6A9 \uD69F\uC218 (\uBE44\uC6CC\uB450\uBA74 \uBB34\uC81C\uD55C)",redirect:"\uC774\uB3D9\uD560 \uD398\uC774\uC9C0 URL (\uBE44\uC6CC\uB450\uBA74 \uC571 \uBA54\uC778)",creating:"\uC0DD\uC131 \uC911\u2026",create:"\uB9C1\uD06C \uC0DD\uC131",created:"\u2713 \uB9C1\uD06C\uAC00 \uC0DD\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4",copied:"\uBCF5\uC0AC\uB428!",copy:"\uBCF5\uC0AC",loading:"\uBD88\uB7EC\uC624\uB294 \uC911\u2026",empty:"\uC0DD\uC131\uB41C \uB9C1\uD06C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",uses:"{{count}}\uD68C \uC0AC\uC6A9",expiresAt:"\uB9CC\uB8CC: {{date}}",createdAt:"\uC0DD\uC131: {{date}}",confirmDelete:"\uC0AD\uC81C\uD560\uAE4C\uC694?",deactivate:"\uBE44\uD65C\uC131\uD654",delete:"\uC0AD\uC81C",status:{active:"\uC720\uD6A8",expired:"\uB9CC\uB8CC",inactive:"\uBE44\uD65C\uC131"}},If={passwordPlaceholder:"\uBE44\uBC00\uBC88\uD638 \uC785\uB825"},Ff={subtitle:"\uC8FC\uC81C\uB97C \uC120\uD0DD\uD558\uC5EC \uB4E3\uAE30 \uC5F0\uC2B5\uC744 \uC9C4\uD589\uD558\uC138\uC694."},Of={direction:{left:"\uC88C",right:"\uC6B0",label:"\uBC29\uD5A5"},wornDate:"\uCC29\uC6A9\uC77C",deviceType:"\uC885\uB958",brand:"\uBE0C\uB79C\uB4DC",fitType:"\uCC29\uC6A9\uD615\uD0DC",productName:"\uC81C\uD488\uBA85",validationError:{brandAndProduct:"\uBE0C\uB79C\uB4DC\uC640 \uC81C\uD488\uBA85\uC744 \uC785\uB825\uD574 \uC8FC\uC138\uC694."},addNew:"\uC0C8 \uAE30\uAE30 \uCD94\uAC00",selectFromList:"\uBAA9\uB85D\uC5D0\uC11C \uC120\uD0DD",removeDevice:"\uCC29\uC6A9 \uD574\uC81C",type:{hearingAid:"\uBCF4\uCCAD\uAE30",cochlearImplant:"\uC778\uACF5\uC640\uC6B0"}},Hf={stat:{totalCustomers:"\uCD1D \uACE0\uAC1D",monthlyVisits:"\uC774\uB2EC \uCD1D \uBC29\uBB38"},chart:{visitDetail:"\uC0C1\uC138 \uBC29\uBB38 \uD604\uD669",trainingDetail:"\uC0C1\uC138 \uD6C8\uB828 \uD604\uD669",weekly:"\uC8FC\uBCC4",daily:"\uC77C\uBCC4",periodMonth:"\uC6D4",periodWeek:"\uC8FC",weeklyPrefix:"\uC8FC\uAC04",monthlyPrefix:"\uC6D4\uAC04",visit:"\uBC29\uBB38",reservation:"\uC608\uC57D",trainingDone:"\uD6C8\uB828 \uC644\uB8CC",trainingInProgress:"\uD6C8\uB828 \uC911",weekRange:"{{start}}~{{end}}",week:"{{n}}\uC8FC"},subscriptionStatus:{active:"{{pct}}% \uD65C\uC131",expired:"{{pct}}% \uB9CC\uB8CC",unused:"{{pct}}% \uBBF8\uC0AC\uC6A9"}},zf={editBanner:{message:"\uC800\uC7A5\uD558\uBA74 \uC9C0\uAE08 \uC218\uC815 \uC911\uC778 \uB300\uB9BD\uC30D\uD45C\uAC00 \uAC31\uC2E0\uB429\uB2C8\uB2E4."},phonemeSelect:{title:"\uC74C\uC18C \uC120\uD0DD",vs:"\uB300"},caution:"\uC720\uC758\uC0AC\uD56D",mode:{include:"\uC74C\uC18C \uD3EC\uD568",pick:"\uC74C\uC18C \uB300\uB9BD",contrast:"\uC74C\uC18C \uB300\uB9BD \uC9C0\uC815",infoTitle:"\uB300\uB9BD \uBC29\uC2DD",infoInclude:"\uC74C\uC18C \uD3EC\uD568 \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uAC00 \uBAA8\uB450 \uB4E4\uC5B4\uAC04 \uB2E8\uC5B4\uC640 \uADF8 \uB300\uB9BD\uC30D\uC744 \uCC3E\uC544\uC694.",infoPick:"\uC74C\uC18C \uB300\uB9BD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uAC00 \uB300\uB9BD\uC30D \uB450 \uB2E8\uC5B4\uC758 \uC2E4\uC81C \uCC28\uC774\uC810\uC77C \uB54C\uB9CC \uB9E4\uCE6D\uB3FC\uC694.",infoContrast:"\uC74C\uC18C \uB300\uB9BD \uC9C0\uC815 \u2014 \uAE30\uC900 \uB2E8\uC5B4\uC640 \uB300\uB9BD \uB2E8\uC5B4\uC758 \uC74C\uC18C\uB97C \uAC01\uAC01 \uC9C1\uC811 \uC120\uD0DD\uD574 \uB300\uB9BD\uC30D\uC744 \uCC3E\uC544\uC694."},count:"{{n}}\uAC1C",input:{char:"\uAE00\uC790 \uC120\uD0DD",pron:"\uBC1C\uC74C \uC120\uD0DD",infoTitle:"\uC785\uB825 \uBC29\uC2DD",infoChar:"\uAE00\uC790 \uC120\uD0DD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uB85C \uB2E8\uC5B4(\uAE00\uC790 \uAE30\uC900)\uB97C \uCC3E\uC740 \uD6C4, \uB2E8\uC5B4\uC758 \uD45C\uC900 \uBC1C\uC74C \uB300\uB9BD\uC30D\uC744 \uCC3E\uC2B5\uB2C8\uB2E4.",infoPron:"\uBC1C\uC74C \uC120\uD0DD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uB85C \uD45C\uC900 \uBC1C\uC74C \uB300\uB9BD\uC30D\uC744 \uCC3E\uC2B5\uB2C8\uB2E4."},phonemeN:"{{n}}\uBC88 \uC74C\uC808",phonemeSingleLabel:"\uC74C\uC808",phonemeContrastSingleLabel:"\uB300\uB9BD \uC74C\uC808",ordinals:["\uCCAB\uBC88\uC9F8","\uB450\uBC88\uC9F8","\uC138\uBC88\uC9F8","\uB124\uBC88\uC9F8"],phonemeOrdinalLabel:"{{ordinal}} \uC74C\uC808",phonemeContrastOrdinalLabel:"\uB300\uB9BD {{ordinal}} \uC74C\uC808",composition:"\uC815\uB2F5 \uB2E8\uC5B4 \uAD6C\uC131",syllableCount:"\uC74C\uC808 \uC218",syllableN:"{{n}}\uC74C\uC808",syllableNPlus:"{{n}}\uC74C\uC808 \uC774\uC0C1",onset:"\uCD08\uC131",vowel:"\uBAA8\uC74C",coda:"\uC885\uC131",filter:{searchOptionsTitle:"\uB300\uB9BD \uC124\uC815",searchModeLabel:"\uB300\uB9BD \uBC29\uC2DD",countLabel:"\uC785\uB825 \uC74C\uC808 \uAC2F\uC218",inputModeLabel:"\uC785\uB825 \uBC29\uC2DD",phonemeOrder:"\uC785\uB825 \uC74C\uC808 \uC704\uCE58",phonemeOrderInfo:["\uC77C\uCE58: \uB300\uB9BD\uC30D\uC774 \uC815\uD655\uD788 \uAC19\uC740 \uC704\uCE58(\uC74C\uC808)\uC5D0\uC11C\uB9CC \uCC28\uC774 \uB098\uC57C \uB9E4\uCE6D\uB3FC\uC694.","\uBB34\uAD00: \uCC28\uC774 \uB098\uB294 \uC704\uCE58\uB294 \uC0C1\uAD00\uC5C6\uC774 \uB9E4\uCE6D\uB3FC\uC694."],orderAny:"\uBB34\uAD00",orderMatch:"\uC77C\uCE58",difficultyInfo:"\uAD6D\uB9BD\uAD6D\uC5B4\uC6D0\uC758 \uAE30\uCD08 \uC5B4\uD718 \uB4F1\uAE09\uC774 \uACB0\uACFC\uC5D0 \uBC18\uC601\uB429\uB2C8\uB2E4.",selectLabel:"\uC120\uD0DD",onlyHasImage:"\uC774\uBBF8\uC9C0 \uC788\uB294 \uB2E8\uC5B4\uB9CC",onlySameStructure:"\uC74C\uC18C \uAD6C\uC870 \uAC19\uC740 \uB2E8\uC5B4\uB9CC"},searchLabel:{error:"\uB370\uC774\uD130 \uBD88\uB7EC\uC624\uAE30 \uC2E4\uD328",loading:"\uBD88\uB7EC\uC624\uB294 \uC911\u2026"},confirmMessage:"\uC120\uD0DD\uD55C {{unit}} {{count}}\uAC1C\uB97C \uD3EC\uD568\uD55C \uB2E8\uC5B4 \uD45C \uC815\uBCF4\uAC00 \uC0AC\uB77C\uC9D1\uB2C8\uB2E4.",resetOptions:"\uAC80\uC0C9 \uC635\uC158 \uCD08\uAE30\uD654",phonemeContrast:"\uB300\uB9BD {{n}}\uBC88 \uC74C\uC808",infoNotes:["\uBBF8\uB9AC\uBCF4\uAE30 \uAE00\uC790\uB294 \uC120\uD0DD\uD55C \uC74C\uC18C\uC758 \uC870\uD569 \uC608\uC2DC\uC785\uB2C8\uB2E4. \uC2E4\uC81C \uAC80\uC0C9\uC740 \uD574\uB2F9 \uC74C\uC18C\uAC00 \uD3EC\uD568\uB41C \uBAA8\uB4E0 \uB2E8\uC5B4\uB97C \uB300\uC0C1\uC73C\uB85C \uD569\uB2C8\uB2E4.","\uCD08\uC131 '\u3147'\uC740 \uC120\uD0DD\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. \uB2E8\uC5B4 \uC55E\uC5D0 \uC624\uB294 \u3147\uC740 \uC2E4\uC9C8\uC801\uC73C\uB85C \uBB34\uC74C\uC774\uC5B4\uC11C \uB300\uB9BD\uC30D \uC131\uB9BD\uC5D0 \uC601\uD5A5\uC744 \uC8FC\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.","\uCD08\uC131\uACFC \uC885\uC131\uB9CC \uC120\uD0DD\uD558\uBA74 \uBAA8\uC74C\uC740 '\u314F'\uB85C \uC790\uB3D9 \uD45C\uC2DC\uB429\uB2C8\uB2E4.","\uC74C\uC18C \uAC1C\uC218\uB97C \uB298\uB9AC\uBA74 \uAC01 \uC74C\uC18C \uC0AC\uC774\uC758 \uB300\uB9BD\uC30D\uC744 \uAC80\uC0C9\uD569\uB2C8\uB2E4."]},Vf={sentenceTyping:{roundCount:"{{rounds}}\uBB38\uC81C \xB7 \uBB38\uC81C\uB2F9 {{timeLimit}}\uCD08"},wordDefense:{me:"\uB098"},dictation:{title:"\uBC1B\uC544\uC4F0\uAE30",desc:"\uBB38\uC7A5\uC744 \uB4E3\uACE0 \uC815\uD655\uD788 \uBC1B\uC544\uC801\uB294 \uC5F0\uC2B5\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uC74C\uC131 \uC7AC\uC0DD, \uC785\uB825 \uD544\uB4DC, \uC815\uB2F5 \uBE44\uAD50"},result:{heading:"{{number}}\uB2E8\uACC4 \uD574\uB2F5",retry:"\uB2E4\uC2DC \uD480\uAE30"},common:{accuracy:"{{pct}}% \uC815\uD655\uB3C4"},soundMatch:{title:"\uC18C\uB9AC \uB9E4\uCE6D",desc:"\uAC19\uC740 \uC18C\uB9AC\uB97C \uAC00\uC9C4 \uB2E8\uC5B4 \uB610\uB294 \uBB38\uC7A5\uC744 \uBE60\uB974\uAC8C \uB9E4\uCE6D\uD558\uB294 \uAC8C\uC784\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uD50C\uB808\uC774 \uBC84\uD2BC, \uD0C0\uC774\uBA38, \uC810\uC218 \uC9D1\uACC4"},orderSequence:{title:"\uBB38\uC7A5 \uC21C\uC11C\uD654",desc:"\uD769\uC5B4\uC9C4 \uBB38\uC7A5 \uC870\uAC01\uC744 \uC62C\uBC14\uB978 \uC21C\uC11C\uB85C \uBC30\uC5F4\uD558\uB294 \uD6C8\uB828\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uBB38\uC7A5 \uC138\uD2B8, \uC21C\uC11C \uD655\uC778 \uC778\uD130\uD398\uC774\uC2A4"},speedListen:{title:"\uC18D\uB3C4 \uB4E3\uAE30",desc:"\uC2DC\uAC04 \uC81C\uD55C \uB0B4\uC5D0 \uBB38\uC7A5\uC758 \uB2E8\uC5B4 \uC218\uB97C \uB9DE\uCD94\uB294 \uB3C4\uC804\uD615 \uAC8C\uC784\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uC81C\uD55C\uC2DC\uAC04, \uC810\uC218\uD310"},noiseChallenge:{title:"\uC18C\uC74C \uCC4C\uB9B0\uC9C0",desc:"\uBC30\uACBD \uC18C\uC74C \uC18D\uC5D0\uC11C \uBB38\uC7A5\uC744 \uBD84\uBCC4\uD558\uB294 \uC5F0\uC2B5\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uB2E4\uC591\uD55C \uC18C\uC74C \uB808\uBCA8, \uC810\uC218 \uC9D1\uACC4"},fastListen:{title:"\uBE60\uB978 \uB4E3\uAE30",desc:"\uC9E7\uC740 \uBB38\uC7A5\uC744 \uBE60\uB974\uAC8C \uB4E4\uB824\uC8FC\uACE0 \uD575\uC2EC \uB2E8\uC5B4\uB97C \uC120\uD0DD\uD558\uB294 \uAC8C\uC784\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uB09C\uC774\uB3C4\uBCC4 \uC18D\uB3C4, \uD0C0\uC774\uBA38"},shadowing:{title:"\uC250\uB3C4\uC789",desc:"\uBB38\uC7A5\uC744 \uB530\uB77C \uB9D0\uD558\uBA70 \uBC1C\uC74C\uACFC \uC5B5\uC591\uC744 \uC5F0\uC2B5\uD558\uB294 \uBAA8\uB4DC\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uC7AC\uC0DD, \uB179\uC74C, \uBE44\uAD50 \uD53C\uB4DC\uBC31"},phonemeHunt:{title:"\uC74C\uC6B4 \uCC3E\uAE30",desc:"\uD2B9\uC815 \uC74C\uC6B4(\uBC1C\uC74C)\uC744 \uD3EC\uD568\uD55C \uB2E8\uC5B4\uB97C \uCC3E\uC544\uB0B4\uB294 \uAC8C\uC784\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uC74C\uC6B4 \uD544\uD130, \uD78C\uD2B8 \uAE30\uB2A5"}},Wf={lead:`\uC544\uC774\uD574\uBE0C\uB294 \uC18C\uB9AC\uB97C \uD1B5\uD574
|
|
847
|
+
`),this.name="StorageNotConfiguredError"}};function Z0(e){Y0(e)}function zs(e,t){if(!e)return null;const a=pa();return a?.resolvePath?a.resolvePath(e,t):t?`${t}/${e}.mp3`:null}async function Vs(e){if(!e)return null;const t=pa();if(!t)throw new Hs("getSignedOrPublicUrl");try{return await t.resolveUrl(e)}catch{return null}}async function Ws(e){const t=pa();if(!t)throw new Hs("downloadSound");return t.download(e)}function X0(){return pa()?.noiseBaseUrl??"/sounds/noise"}function qs(){const e=Number(pa()?.noiseFileGain);return Number.isFinite(e)&&e>0?e:1}function J0(e){const t=AbortSignal.timeout;if(typeof t=="function")return t.call(AbortSignal,e);const a=new AbortController;return setTimeout(()=>a.abort(),e),a.signal}const Us="__ihab_core_tts_config__";function Br(){return globalThis[Us]?.urlResolver??null}function Q0(){return globalThis[Us]?.fallbackUrlResolver??null}const e2="__ihab_core_pronunciation_resolver__";function t2(){return globalThis[e2]??null}let Bn=null;const ma=new WeakMap,Nr=new WeakMap,Er=new WeakMap;let Gs=!1;const Ks=e=>Math.max(0,Math.min(1,Number.isFinite(e)?e:0));function n2(){if(Gs||typeof document>"u")return;Gs=!0;const e=()=>{try{Bn&&Bn.state!=="running"&&Bn.resume()}catch{}};for(const t of["pointerdown","touchend","keydown"])document.addEventListener(t,e,{capture:!0,passive:!0})}function Ys(){if(Bn)return Bn;try{const e=window.AudioContext||window.webkitAudioContext;return e?(Bn=new e,n2(),Bn):null}catch{return null}}function Dr(){try{Bn?.resume()}catch{}}function Sr(e,t){const a=ma.get(t);if(a)return a;try{const r=e.createMediaElementSource(t),s=e.createGain(),i=e.createAnalyser();i.fftSize=1024,i.smoothingTimeConstant=.6,s.gain.value=Ks(Nr.get(t)??t.volume),r.connect(s),s.connect(i),s.connect(e.destination);try{t.volume=1}catch{}const l={gain:s,analyser:i};return ma.set(t,l),l}catch{return null}}function Pa(e){if(!e)return Promise.resolve(null);const t=ma.get(e);if(t)return Promise.resolve(t.analyser);const a=Ys();if(!a)return Promise.resolve(null);if(a.state==="running")return Promise.resolve(Sr(a,e)?.analyser??null);const r=Er.get(e);if(r)return r;const s=Promise.resolve().then(()=>a.resume()).then(()=>a.state==="running"?Sr(a,e)?.analyser??null:null).catch(()=>null).finally(()=>{Er.delete(e)});return Er.set(e,s),s}function a2(e){if(!e)return null;const t=ma.get(e);if(t)return t.analyser;const a=Ys();return a?a.state==="running"?Sr(a,e)?.analyser??null:(Pa(e),null):null}function Nn(e,t){const a=Ks(t);Nr.set(e,a);const r=ma.get(e);if(r){try{e.volume!==1&&(e.volume=1)}catch{}const s=r.gain.gain;try{const i=r.gain.context.currentTime;s.cancelScheduledValues(i),s.setTargetAtTime(a,i,.01)}catch{try{s.value=a}catch{}}return"gain"}try{e.volume=a}catch{}return"element"}function Ia(e){return Nr.get(e)??e.volume}function r2(e,t){e.getFloatTimeDomainData(t);let a=0;for(let r=0;r<t.length;r++){const s=t[r];a+=s*s}return Math.sqrt(a/t.length)}const o2="__ihab_core_image_config__";function Gn(){return globalThis[o2]??null}const Zs="word_image_existence_map_v1";let Pn=null;const Fa=new Map;function s2(){if(Pn)return Pn;try{const e=typeof localStorage<"u"?localStorage.getItem(Zs):null,t=e?JSON.parse(e):null;Pn=t&&typeof t=="object"&&!Array.isArray(t)?t:{}}catch{Pn={}}return Pn}let jr=null;function i2(){jr||(jr=setTimeout(()=>{jr=null;try{typeof localStorage<"u"&&Pn&&localStorage.setItem(Zs,JSON.stringify(Pn))}catch{}},200))}function l2(e,t){return`${e}_${t??1}`}async function Xs(e,t){const a=s2(),r=l2(e,t);if(r in a)return a[r];if(Fa.has(r))return Fa.get(r);const s=Gn();if(!s)return!1;const i=s(e,t);if(!i)return!1;const l=fetch(i,{method:"HEAD",signal:J0(8e3)}).then(c=>c.status>=500?null:c.ok,()=>null).then(c=>(Fa.delete(r),c===null?!1:(a[r]=c,i2(),c)));return Fa.set(r,l),l}const c2={\u314F:{nucleus:"\u314F"},\u3151:{glide:"j",nucleus:"\u314F"},\u3153:{nucleus:"\u3153"},\u3155:{glide:"j",nucleus:"\u3153"},\u3157:{nucleus:"\u3157"},\u315B:{glide:"j",nucleus:"\u3157"},\u315C:{nucleus:"\u315C"},\u3160:{glide:"j",nucleus:"\u315C"},\u3161:{nucleus:"\u3161"},\u3163:{nucleus:"\u3163"},\u3150:{nucleus:"\u3154/\u3150"},\u3152:{glide:"j",nucleus:"\u3154/\u3150"},\u3154:{nucleus:"\u3154/\u3150"},\u3156:{glide:"j",nucleus:"\u3154/\u3150"},\u3158:{glide:"w",nucleus:"\u314F"},\u3159:{glide:"w",nucleus:"\u3154/\u3150"},\u315A:{glide:"w",nucleus:"\u3154/\u3150"},\u315D:{glide:"w",nucleus:"\u3153"},\u315E:{glide:"w",nucleus:"\u3154/\u3150"},\u315F:{glide:"w",nucleus:"\u3163"},\u3162:{glide:"\u0270",nucleus:"\u3163"}},Js=["\u3131","\u3132","\u3134","\u3137","\u3138","\u3139","\u3141","\u3142","\u3143","\u3145","\u3146","\u3147","\u3148","\u3149","\u314A","\u314B","\u314C","\u314D","\u314E"],Qs=["\u314F","\u3150","\u3151","\u3152","\u3153","\u3154","\u3155","\u3156","\u3157","\u3158","\u3159","\u315A","\u315B","\u315C","\u315D","\u315E","\u315F","\u3160","\u3161","\u3162","\u3163"],u2=["","\u3131","\u3132","\u3133","\u3134","\u3135","\u3136","\u3137","\u3139","\u313A","\u313B","\u313C","\u313D","\u313E","\u313F","\u3140","\u3141","\u3142","\u3144","\u3145","\u3146","\u3147","\u3148","\u314A","\u314B","\u314C","\u314D","\u314E"];function ha(e){if(!e)return null;const t=e.charCodeAt(0)-44032;return t<0||t>=11172?null:{cho:Math.floor(t/588),jung:Math.floor(t%588/28),jong:t%28}}function d2(e){const t=ha(e[0]||"");return t?Js[t.cho]:""}function p2(e){if(!e)return()=>!0;e=e.normalize("NFC");const t=[...e],a=l=>Js.includes(l),r=l=>Qs.includes(l),s=t.map(l=>a(l)?"cho":r(l)?"jung":ha(l)?"syl":"other"),i=t.map(l=>ha(l));if(s.includes("other")){const l=e.toLowerCase();return c=>c.normalize("NFC").toLowerCase().includes(l)}return l=>{const c=[...l.normalize("NFC")];for(let d=0;d+t.length<=c.length;d++){let u=!0;for(let p=0;p<t.length;p++){const m=c[d+p],f=s[p];if(f==="cho"){if(d2(m)!==t[p]){u=!1;break}}else if(f==="jung"){const g=ha(m);if(!g||Qs[g.jung]!==t[p]){u=!1;break}}else{const g=i[p];if(g&&g.jong===0){const y=ha(m);if(!y||y.cho!==g.cho||y.jung!==g.jung){u=!1;break}}else if(m!==t[p]){u=!1;break}}}if(u)return!0}return!1}}const m2={3:["\u3131","\u3145"],5:["\u3134","\u3148"],6:["\u3134","\u314E"],9:["\u3139","\u3131"],10:["\u3139","\u3141"],11:["\u3139","\u3142"],12:["\u3139","\u3145"],13:["\u3139","\u314C"],14:["\u3139","\u314D"],15:["\u3139","\u314E"],18:["\u3142","\u3145"]};Object.fromEntries(Object.entries(m2).map(([e,t])=>[t.join(""),u2[Number(e)]]));const h2="word_pair_index_v2",f2="word_pair_index_sig_v2";let Oa=null;function C2(){try{if(typeof localStorage>"u")return null;const e=localStorage.getItem(h2),t=localStorage.getItem(f2);return!e||!t?null:{index:JSON.parse(e),sig:t}}catch{return null}}function g2(){if(Oa)return Oa;const e=C2();return e?(Oa=e.index,e.sig,Oa):null}const Tr=/[ㄱ-ㅎ]/,b2=/[ㅏ-ㅣ]/;function ei(e){e=e.normalize("NFC");for(let t=e.length-1;t>=0;t--){const a=e[t],r=a.charCodeAt(0);if(r>=44032&&r<=55203||Tr.test(a)||b2.test(a))return a}return null}function y2(e){const t=ei(e);if(!t)return"\uAC00";const a=t.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uC774":"\uAC00":Tr.test(t)?"\uC774":"\uAC00"}function v2(e){return`${e}${y2(e)}`}function x2(e){const t=ei(e);if(!t)return"\uB97C";const a=t.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uC744":"\uB97C":Tr.test(t)?"\uC744":"\uB97C"}function _2(e){return`${e}${x2(e)}`}function w2(e,t,a){const r=e.slice(),[s]=r.splice(t,1);return r.splice(a,0,s),r}function fa(e,t=Math.random){const a=e.slice();for(let r=a.length-1;r>0;r--){const s=Math.floor(t()*(r+1));[a[r],a[s]]=[a[s],a[r]]}return a}const k2=()=>{const e="\uC54C \uC218 \uC5C6\uB294 \uC624\uB958",t=typeof At?.t=="function"?At.t("common.unknownError",{defaultValue:e}):void 0;return typeof t=="string"&&t?t:e};function ti(e,t){if(t===void 0&&(t=k2()),e instanceof Error)return e.message||t;if(typeof e=="string")return e||t;if(e&&typeof e=="object"){const a=e;for(const r of[a.message,a.error_description,a.error])if(typeof r=="string"&&r)return r}return t}const A2="__ihab_core_word_pool__";function ni(){return globalThis[A2]??null}const ai=globalThis;function ri(e,t){const a=r=>{};try{const r=t();r&&typeof r.catch=="function"&&r.catch(a)}catch(r){a(r)}}function B2(e){ri("time",()=>ai.__ihabTrainingTimeLogger?.(e))}function N2(e){ri("completion",()=>ai.__ihabTrainingCompletionLogger?.(e))}function Ot(e){return typeof e=="string"?e.trim()||null:typeof e=="number"?String(e):null}function E2(e){for(const t of["correct","isCorrect","heard","judgement"])if(typeof e[t]=="boolean")return e[t];return e.score===1?!0:e.score===0?!1:null}function D2(e){return Array.isArray(e)?e.map((t,a)=>{const r=t??{};return{index:a,itemId:Ot(r.contextCode)??Ot(r.itemId)??Ot(r.itemCode)??Ot(r.id),question:Ot(r.question)??Ot(r.q)??Ot(r.sentence)??Ot(r.text)??Ot(r.prompt)??Ot(r.word)??Ot(r.targetSyllable),answer:Ot(r.answer),selected:Ot(r.selectedText)??Ot(r.selected),correct:E2(r)}}):[]}const Mr=globalThis;async function S2(){try{return await Mr.__ihabNoiseSettingsStore?.load()??null}catch{return null}}function oi(e){const t=a=>{};try{const a=Mr.__ihabNoiseSettingsStore?.save(e);a&&typeof a.catch=="function"&&a.catch(t)}catch(a){t(a)}}function Ha(e){try{Mr.__ihabNoiseSettingsStore?.applied?.(e)}catch{}}async function j2(e){if(typeof document<"u"){const t=document.activeElement;let a=null;try{if(a=document.createElement("textarea"),a.value=e,a.setAttribute("readonly",""),a.style.position="fixed",a.style.top="0",a.style.left="0",a.style.opacity="0",a.style.pointerEvents="none",document.body.appendChild(a),a.focus(),a.select(),a.setSelectionRange(0,e.length),document.execCommand("copy"))return!0}catch{}finally{if(a?.parentNode&&a.parentNode.removeChild(a),t&&t!==document.activeElement&&typeof t.focus=="function"&&t.isConnected)try{t.focus({preventScroll:!0})}catch{}}}try{if(typeof navigator<"u"&&navigator.clipboard&&typeof navigator.clipboard.writeText=="function")return await navigator.clipboard.writeText(e),!0}catch{}return!1}const T2=/^(\d{4}-\d{2}-\d{2})[T ](\d{2}:\d{2})(?::(\d{2})(?:\.(\d+))?)?$/;function si(e){let t;if(e instanceof Date)t=e;else if(typeof e=="string"){const a=e.trim(),r=T2.exec(a);t=new Date(r?`${r[1]}T${r[2]}:${r[3]??"00"}${r[4]?`.${r[4].slice(0,3).padEnd(3,"0")}`:""}+09:00`:a)}else t=new Date(e);return Number.isNaN(t.getTime())?null:t}function Ca(){return $r(new Date)}function Lr(e){return e&&/^\d{4}-\d{2}-\d{2}$/.test(e)?e:Ca()}function Kn(){return L2(Ca())}const M2=540*60*1e3;function ii(e,t,a){return new Date(Date.UTC(e,t,a)-M2)}function L2(e){const[t,a,r]=e.split("-").map(Number);return new Date(t,(a||1)-1,r||1)}function $r(e){if(e==null||e==="")return"";const t=si(e);return t?new Intl.DateTimeFormat("fr-CA",{timeZone:"Asia/Seoul"}).format(t):""}function li(e,t){if(!e)return"";const a=si(e);if(!a)return"";const r=a.getTime(),s=Math.max(0,Math.floor((Date.now()-r)/1e3)),i=Math.floor(s/60),l=Math.floor(i/60),c=Math.floor(l/24),d=Math.floor(c/7),u=Math.floor(c/30),p=Math.floor(c/365);return i<1?t("store.time.justNow","\uBC29\uAE08 \uC804"):i<60?t("store.time.minutesAgo",{n:i}):l<24?t("store.time.hoursAgo",{n:l}):c<7?t("store.time.daysAgo",{n:c}):d<5?t("store.time.weeksAgo",{n:d}):c<365?t("store.time.monthsAgo",{n:Math.min(u,11)}):t("store.time.yearsAgo",{n:p})}function ci(e,t={}){const{sep:a=".",pad:r=!0,trailingDot:s=!1,fallback:i="\u2014"}=t;if(!e)return i;const l=$r(e instanceof Date?e:String(e));if(!l)return i;const[c,d,u]=l.split("-"),p=r?d:String(Number(d)),m=r?u:String(Number(u));return`${c}${a}${p}${a}${m}${s?".":""}`}function Yn(e){if(!e)return e;const t=e.trim();return/^[₩$]/.test(t)?t:/원\s*$/.test(t)?"\u20A9"+t.replace(/\s*원\s*$/,"").trim():t}function ui(e,t){if(!e)return"-";const a=/^(\d{1,2}):(\d{2})$/.exec(e.trim());if(!a)return e;const r=Number(a[1]),s=Number(a[2]),i=a[1].padStart(2,"0");return s===0?t("date.timeH",{h:r,hh:i,mm:a[2]}):t("date.timeHM",{h:r,hh:i,m:s,mm:a[2]})}function Rr(e){return(e??0).toLocaleString("ko-KR")}const $2=[{key:"FOOD",label:"\uC74C\uC2DD",icon:"salad",color:"#FF8A65",subs:[{key:"TRKRFD",label:"\uD55C\uAD6D \uC804\uD1B5\uC74C\uC2DD"},{key:"MDKRFD",label:"\uD55C\uAD6D \uD604\uB300\uC74C\uC2DD"},{key:"WRLDFD",label:"\uC138\uACC4\uC758 \uC74C\uC2DD"},{key:"MTRFRT",label:"\uC2DD\uC7AC\uB8CC\uC640 \uACFC\uC77C"},{key:"GEFDKL",label:"\uC74C\uC2DD \uC0C1\uC2DD"}]},{key:"HLTH",label:"\uAC74\uAC15",icon:"heart",color:"#66BB6A",subs:[{key:"HTETHB",label:"\uAC74\uAC15\uD55C \uC2DD\uC2B5\uAD00"},{key:"DISILL",label:"\uBCD1\uACFC \uC9C8\uD658"},{key:"EXCISE",label:"\uC6B4\uB3D9"},{key:"GEHTKL",label:"\uAC74\uAC15\uC0C1\uC2DD"}]},{key:"WETH",label:"\uB0A0\uC528",icon:"sun-medium",color:"#42A5F5",subs:[{key:"GESSKL",label:"\uACC4\uC808\uC0C1\uC2DD"},{key:"SNWRAN",label:"\uB208\uACFC \uBE44"},{key:"WTHFCT",label:"\uC77C\uAE30\uC608\uBCF4"},{key:"GEWTKL",label:"\uB0A0\uC528\uC0C1\uC2DD"}]},{key:"PRSN",label:"\uC778\uBB3C",icon:"user-round",color:"#AB47BC",subs:[{key:"JODYPS",label:"\uC870\uC120\uC2DC\uB300"},{key:"MDKRPS",label:"\uD55C\uAD6D \uADFC\uD604\uB300"},{key:"THKDPS",label:"\uC0BC\uAD6D\uC2DC\uB300"},{key:"WRLART",label:"\uC138\uACC4\uC758 \uC608\uC220\uAC00"},{key:"WRLPSN",label:"\uC138\uACC4\uC758 \uC778\uBB3C"}]},{key:"KRCT",label:"\uD55C\uAD6D\uBB38\uD654",icon:"bow-arrow",color:"#EC407A",subs:[{key:"KRLANG",label:"\uC6B0\uB9AC\uB9D0"},{key:"TRPLCT",label:"\uC804\uD1B5\uB180\uC774"},{key:"HERITG",label:"\uBB38\uD654\uC7AC"},{key:"EVTFES",label:"\uD589\uC0AC\uC640 \uCD95\uC81C"},{key:"GECTKL",label:"\uC0C1\uC2DD"}]},{key:"STRY",label:"\uC774\uC57C\uAE30",icon:"message-circle",color:"#8D6E63",subs:[{key:"FRYTAL",label:"\uB3D9\uD654"},{key:"AMZING",label:"\uC2E0\uAE30\uD55C \uC774\uC57C\uAE30"},{key:"DAYSTR",label:"\uC77C\uC0C1 \uC18D \uC774\uC57C\uAE30"}]},{key:"LOCA",label:"\uC9C0\uC5ED",icon:"map-pin",color:"#26A69A",subs:[{key:"KRLDMK",label:"\uD55C\uAD6D\uC758 \uBA85\uC18C"},{key:"SELNMK",label:"\uC11C\uC6B8\uC758 \uBA85\uC18C"},{key:"WRDTRB",label:"\uC138\uACC4\uC5EC\uD589"},{key:"NAVIGT",label:"\uAE38 \uCC3E\uAE30"}]},{key:"SOAR",label:"\uC0AC\uD68C\uC640 \uC608\uC220",icon:"landmark",color:"#5C6BC0",subs:[{key:"KRSOCI",label:"\uD55C\uAD6D"},{key:"ECONEW",label:"\uACBD\uC81C\uC640 \uB274\uC2A4"},{key:"GENART",label:"\uC608\uC220"},{key:"GELFKL",label:"\uC0DD\uD65C \uC0C1\uC2DD"}]},{key:"NTSC",label:"\uC790\uC5F0\uACFC \uACFC\uD559",icon:"leaf",color:"#9CCC65",subs:[{key:"ANIMAL",label:"\uB3D9\uBB3C"},{key:"PLANTS",label:"\uC2DD\uBB3C"},{key:"ETHPLT",label:"\uC9C0\uAD6C"},{key:"TOLELC",label:"\uB3C4\uAD6C\uC640 \uC804\uC790\uC81C\uD488"},{key:"GESCKL",label:"\uACFC\uD559\uC0C1\uC2DD"}]},{key:"SPRT",label:"\uC2A4\uD3EC\uCE20",icon:"trophy",color:"#FFCA28",subs:[{key:"INVDSP",label:"\uAC1C\uC778\uACBD\uAE30"},{key:"MARART",label:"\uACA9\uD22C\uAE30"},{key:"TEAMSP",label:"\uB2E8\uCCB4\uACBD\uAE30"},{key:"FOOTBL",label:"\uCD95\uAD6C"},{key:"GESPKL",label:"\uC2A4\uD3EC\uCE20 \uC0C1\uC2DD"}]}],R2=[{key:"LISTEN_IN_NOISE",label:"\uC18C\uC74C \uD558 \uBB38\uC7A5 \uB4E3\uAE30",icon:"party-popper",desc:"\uC18C\uC74C \uD658\uACBD \uC18D \uBB38\uC7A5 \uC774\uD574 \uD6C8\uB828"},{key:"SHORT_STORY",label:"\uC9E7\uC740 \uC774\uC57C\uAE30 \uB4E3\uAE30",icon:"message-square",desc:"\uC9E7\uC740 \uC774\uC57C\uAE30 + 4\uBB38\uC81C"},{key:"LONG_STORY",label:"\uAE34 \uC774\uC57C\uAE30 \uB4E3\uAE30",icon:"message-square-text",desc:"\uAE34 \uC774\uC57C\uAE30 \uC2EC\uD654 \uD6C8\uB828"},{key:"ORDERING_SENTENCE",label:"\uBB38\uC7A5 \uC21C\uC11C\uD654 \uD558\uAE30",icon:"align-start-vertical",desc:"\uC21C\uC11C \uBC30\uC5F4 \uD6C8\uB828"}];function di(){return $2}function P2(){return R2}const I2=[],F2=[],O2=[],H2=[];function z2(){return{LISTEN_IN_NOISE:I2,SHORT_STORY:F2,LONG_STORY:O2,ORDERING_SENTENCE:H2}}const V2=[{key:"LISTEN_IN_NOISE",label:"\uC18C\uC74C \uD558 \uBB38\uC7A5 \uB4E3\uAE30",icon:"party-popper",desc:"\uB2E4\uC591\uD55C \uC18C\uC74C \uD658\uACBD\uC5D0\uC11C \uBB38\uC7A5 \uCCAD\uB825\uC744 \uD6C8\uB828\uD569\uB2C8\uB2E4."},{key:"SHORT_STORY",label:"\uC9E7\uC740 \uC774\uC57C\uAE30 \uB4E3\uAE30",icon:"message-square",desc:"\uC9E7\uC740 \uC774\uC57C\uAE30\uB97C \uB4E3\uACE0 \uAE30\uC5B5\uD558\uC5EC \uBB38\uC81C\uB97C \uD480\uC5B4\uBD05\uB2C8\uB2E4."},{key:"LONG_STORY",label:"\uAE34 \uC774\uC57C\uAE30 \uB4E3\uAE30",icon:"message-square-text",desc:"\uAE34 \uC774\uC57C\uAE30\uB97C \uB4E3\uACE0 \uAE30\uC5B5\uD558\uC5EC \uB2E4\uC218\uC758 \uBB38\uC81C\uB97C \uD480\uC5B4\uBD05\uB2C8\uB2E4."},{key:"ORDERING_SENTENCE",label:"\uBB38\uC7A5 \uC21C\uC11C\uD654 \uD558\uAE30",icon:"align-start-vertical",desc:"\uC5EC\uB7EC\uAC1C\uC758 \uC9E7\uC740 \uBB38\uC7A5\uC744 \uB4E3\uACE0 \uAE30\uC5B5\uD558\uC5EC \uADF8 \uC21C\uC11C\uC5D0 \uB9DE\uAC8C \uBC30\uC5F4\uD569\uB2C8\uB2E4."}],pi={LISTEN_IN_NOISE:"listenInNoise",SHORT_STORY:"shortStory",LONG_STORY:"longStory",ORDERING_SENTENCE:"orderingSentence"};function W2(e){return V2.map(t=>{const a=pi[t.key];return a?{...t,label:e(`trainingType.${a}.title`),desc:e(`trainingType.${a}.desc`)}:t})}let za=null,mi=null,hi=null;function q2(){const e=ni();if(e&&e.entries.length>0){const t=g2();if(za&&mi===e&&hi===t)return za;const a=new Set,r=[];for(const s of e.entries)!s.word||a.has(s.word)||(a.add(s.word),r.push({w:s.word,s:s.syllables,p:t?.[s.word]?[...t[s.word].cho??[],...t[s.word].jung??[],...t[s.word].jong??[]]:[],pron:s.pronunciation||s.word,grade:s.grade}));return za=r,mi=e,hi=t,za}return[]}new Proxy([],{get(e,t){const a=q2(),r=a[t];return typeof r=="function"?r.bind(a):r}});const U2="0.207.0";function G2(e){if(e.includes("\\")&&e.includes("("))return!0;if(!/url\s*\(/i.test(e))return!1;const t=e.replace(/url\(\s*(['"]?)#[^)'"]*\1\s*\)/gi,"");return/url\s*\(/i.test(t)}function K2(e){if(typeof window>"u")return"";const t=(a,r)=>{typeof r.attrValue=="string"&&G2(r.attrValue)&&(r.keepAttr=!1)};kr.addHook("uponSanitizeAttribute",t);try{return kr.sanitize(e,{USE_PROFILES:{svg:!0,svgFilters:!0},FORBID_TAGS:["script","use","style"],FORBID_ATTR:["xlink:href","href"]})}finally{kr.removeHook("uponSanitizeAttribute",t)}}function Y2(e){const[t,a]=o.useState(null),[r,s]=o.useState(null),[i,l]=o.useState(null),[c,d]=o.useState(null);return o.useEffect(()=>{if(!e||typeof e!="string"||!e.endsWith(".svg")){a(null),s(null),l(null);return}const u=e.split("/").pop();let p=e;u&&(e.startsWith("/")?p=Ar(e):/^(Logo|Symbol)/i.test(u)?p=Ar(`logo/${u}`):(/^https?:\/\//i.test(e)||e.startsWith("data:"),p=e)),s(null),l(null),a(p)},[e]),o.useEffect(()=>{if(!t)return;let u=!1;async function p(){try{let m=await fetch(t);m.ok||(m=await fetch(t));const f=m.headers.get("content-type")||"";if(u)return;if(f.includes("svg")){s("mask");return}if(f.startsWith("image/")){s("img");return}const g=await fetch(t);if(!g.ok)throw new Error("not ok");const y=await g.text();if(u)return;if(/^\s*<svg[\s>]/i.test(y)){const h=K2(y);if(!h){s("none");return}l(h),s("inline");return}s("none")}catch{u||s("none")}}return p(),()=>{u=!0}},[t]),o.useEffect(()=>{let u=!1,p=null;return r==="mask"&&t&&fetch(t).then(m=>{if(!m.ok)throw new Error("fetch failed");return m.blob()}).then(m=>{u||(p=URL.createObjectURL(m),d(p))}).catch(()=>{u||s("img")}),()=>{u=!0,p&&URL.revokeObjectURL(p),d(null)}},[r,t]),{iconToUse:t,mode:r,svgText:i,blobUrl:c}}function Ue(e){const{icon:t,label:a,className:r,imgClassName:s,maskClassName:i,svgClassName:l,wrapperStyle:c,size:d}=e||{},u=r??"iconRenderer-icon",p=s??"iconRenderer-icon-image",m=i??"iconRenderer-icon-mask",f=l??"iconRenderer-icon-svg",g=typeof t=="string"?t:null,y=d0(g),{iconToUse:h,mode:w,svgText:C,blobUrl:b}=Y2(g),x=(_,B={})=>n.jsx("span",{className:u,style:c,...B,children:_}),v=typeof d=="number"?{width:d,height:d,objectFit:"contain"}:null,A=(_,B={})=>n.jsx("img",{src:_,alt:typeof a=="string"?a:typeof a=="number"?String(a):"",className:p,...B,style:v?{...B.style,...v}:B.style});if(!t)return null;if(typeof t!="string")return x(t);if(t==="none")return x(n.jsx("span",{className:f,dangerouslySetInnerHTML:{__html:'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" aria-hidden="true"></svg>'}}),{"aria-hidden":"true"});if(y)try{return x(o.createElement(y,{className:f,size:typeof d=="number"?d:20}),{"aria-hidden":"true"})}catch{}if(h&&h.endsWith(".svg")){if(w==="mask"){const _={"--icon-url":b?`url(${b})`:`url(${h})`,...typeof d=="number"?{"--icon-size":`${d}px`}:null};return x(n.jsx("span",{className:m,style:_}),{"aria-hidden":"true"})}return w==="img"?x(A(h,{onError:_=>{_.currentTarget.onerror=null,_.currentTarget.style.display="none"}}),{"aria-hidden":"true"}):w==="inline"?x(n.jsx("span",{className:f,dangerouslySetInnerHTML:C?{__html:C}:void 0}),{"aria-hidden":"true"}):x(null,{"aria-hidden":"true"})}if(t.startsWith("/")||t.includes("/assets/")||t.match(/\.(png|jpg|jpeg|webp|gif)$/i))return A(Ar(t),{style:c,onError:_=>{_.currentTarget.onerror=null,_.currentTarget.style.display="none"}});const k=typeof d=="number"?d:20,N=`<svg width="${k}" height="${k}" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><rect x="3" y="3" width="18" height="18" rx="2" ry="2" style="fill:none;stroke:currentColor;stroke-width:2"/></svg>`;return x(n.jsx("span",{className:f,dangerouslySetInnerHTML:{__html:N}}),{"aria-hidden":"true"})}function fi(e){const[t,a]=o.useState(!1),r=o.useRef(!1),s=o.useRef(!0);o.useEffect(()=>(s.current=!0,()=>{s.current=!1}),[]);const i=o.useCallback(()=>{if(!e||r.current)return;const l=e();if(l&&typeof l.then=="function"){r.current=!0,a(!0);const c=()=>{r.current=!1,s.current&&a(!1)};l.then(c,c)}},[e]);return{pending:t,press:i}}function Z2({icon:e,title:t,message:a,action:r,className:s}){const{pending:i,press:l}=fi(r?.onClick);return n.jsxs("div",{className:De("empty-state",s),children:[e&&n.jsx(Ue,{icon:e,size:48,className:"empty-state__icon"}),t&&n.jsx("p",{className:"empty-state__title h4",children:t}),a&&n.jsx("p",{className:"empty-state__message body-3",children:a}),r&&n.jsxs("button",{type:"button",className:"empty-state__action button button40 button40--bar button--variant-main button--align-center button--shape-rounded",onClick:l,disabled:i,"aria-busy":i||void 0,children:[r.icon&&n.jsx(Ue,{icon:r.icon,className:"button__icon"}),n.jsx("span",{className:"button__label button-1",children:r.label})]})]})}function X2({message:e,hint:t,icon:a="triangle-alert",onRetry:r,retryLabel:s,className:i}){const{t:l}=be.useTranslation(),{pending:c,press:d}=fi(r);return n.jsxs("div",{className:De("empty-state","error-state",i),role:"alert",children:[n.jsx(Ue,{icon:a,size:48,className:"empty-state__icon error-state__icon"}),n.jsx("p",{className:"empty-state__message body-3",children:e??l("common.errorState.message",{defaultValue:"\uBD88\uB7EC\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."})}),t&&n.jsx("p",{className:"error-state__hint caption-1",children:t}),r&&n.jsxs("button",{type:"button",className:"empty-state__action button button40 button40--bar button--variant-main button--align-center button--shape-rounded",onClick:d,disabled:c,"aria-busy":c||void 0,children:[n.jsx(Ue,{icon:"rotate-cw",className:"button__icon"}),n.jsx("span",{className:"button__label button-1",children:s??l("common.errorState.retry",{defaultValue:"\uB2E4\uC2DC \uC2DC\uB3C4"})})]})]})}function J2({icon:e,title:t,description:a,cta:r,tone:s="main",disabled:i=!1,onClick:l,className:c=""}){const d=o.useId(),u=`${d}-title`,p=`${d}-desc`,m=`${d}-cta`,f=()=>{i||l?.()};return n.jsx("section",{role:"button",tabIndex:i?-1:0,"aria-disabled":i||void 0,"aria-labelledby":u,"aria-describedby":`${p} ${m}`,onClick:f,onKeyDown:g=>{(g.key==="Enter"||g.key===" ")&&(g.preventDefault(),f())},className:De("action-card",`action-card--${s}`,i&&"action-card--disabled",c),children:n.jsxs("div",{className:"action-card__body",children:[n.jsx("span",{"aria-hidden":!0,className:"action-card__chip",children:n.jsx(Ue,{icon:e,size:34})}),n.jsxs("div",{className:"action-card__text",children:[n.jsx("h2",{id:u,className:"action-card__title",children:t}),n.jsx("p",{id:p,className:"action-card__desc",children:a})]}),n.jsxs("div",{className:"action-card__cta",children:[n.jsx("span",{id:m,children:r}),n.jsx("span",{"aria-hidden":!0,className:"action-card__arrow",children:n.jsx(Ue,{icon:"arrow-right",size:18})})]})]})})}function Q2({as:e="div",className:t="",children:a,storage:r,...s}){r&&Z0({resolveUrl:r.resolveUrl,download:r.download??(()=>Promise.reject(new Error("[ihabdevteam-core] CoreScope: download resolver\uAC00 \uC124\uC815\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4."))),exists:r.exists,resolvePath:r.resolvePath,noiseBaseUrl:r.noiseBaseUrl,noiseFileGain:r.noiseFileGain});const i=De("ihabdevteam-core-scope",t);return n.jsx(e,{className:i,...s,children:a})}function Pr(e,t=!0){o.useEffect(()=>{if(!t)return;const a=e.current;if(!a)return;const r=s=>{if(s.key!=="Tab")return;const i=Array.from(a.querySelectorAll(Cn)).filter(p=>!p.closest('[aria-hidden="true"]'));if(!i.length){s.preventDefault();return}const l=i[0],c=i[i.length-1],d=document.activeElement,u=d===a;s.shiftKey&&(d===l||u)?(s.preventDefault(),c.focus()):!s.shiftKey&&d===c&&(s.preventDefault(),l.focus())};return a.addEventListener("keydown",r),()=>a.removeEventListener("keydown",r)},[e,t])}const Cn='a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])',Ir=new WeakMap;function Fr(e,t){e&&Ir.set(e,t)}function Or(e){let t=e;for(let a=0;t&&!t.isConnected&&a<10;a++){let r=t;for(;r&&!Ir.has(r);)r=r.parentElement;if(!r)return t;t=Ir.get(r)??null}return t}function Ci(e){return!(!e||!e.isConnected||e===document.body||typeof e.focus!="function"||e.disabled||e instanceof HTMLInputElement&&e.type==="hidden"||e.closest('[inert],[aria-hidden="true"],[hidden]'))}function Va(e,t,a){const r=e?.isConnected?e:a?.isConnected?a:null;if(Ci(t)&&!(e&&e.contains(t)))return t.focus(),t;if(!r)return null;const s=Array.from(document.querySelectorAll(Cn)).filter(d=>!(e&&e.contains(d))&&Ci(d));let i=null,l=null;for(const d of s)r.compareDocumentPosition(d)&Node.DOCUMENT_POSITION_PRECEDING?i=d:l||(l=d);const c=i??l;return c?.focus(),c}function ef({title:e="",lines:t=[],notices:a=null,children:r,variant:s="default",dismissible:i=!1,className:l=""}){const{t:c}=be.useTranslation(),[d,u]=o.useState(!1),p=o.useRef(null),m=o.useCallback(()=>{const h=p.current;h&&h.contains(document.activeElement)&&Va(h),u(!0)},[]);if(d)return null;const f=`notice-box notice-box--${s} body-2 ${l}`.trim(),g=i&&n.jsx("button",{type:"button",className:"notice-box__dismiss",onClick:m,"aria-label":c("common.close","\uB2EB\uAE30"),children:"\xD7"});if(a&&Array.isArray(a)&&a.length)return n.jsxs("div",{className:f,role:"note",children:[a.map((h,w)=>n.jsxs("div",{className:"notice-box__inner",children:[h.title?n.jsx("span",{className:"notice-box__title body-3",children:h.title}):null,n.jsx("div",{className:"notice-box__body",children:h.lines&&h.lines.length?n.jsx("div",{children:h.lines.map((C,b)=>n.jsx("span",{className:"notice-box__line body-3",children:C},b))}):h.children??null})]},w)),g]});const y=e||t.length?n.jsxs("div",{className:"notice-box__inner",children:[e?n.jsx("span",{className:"notice-box__title body-1",children:e}):null,n.jsx("div",{className:"notice-box__body",children:t.length?n.jsx("ul",{children:t.map((h,w)=>n.jsx("li",{className:"notice-box__line",children:h},w))}):r})]}):n.jsx("div",{className:"notice-box__inner",children:r});return n.jsxs("div",{ref:p,className:f,role:"note",children:[y,g]})}const Zn=[];let Wa=!1;function gi(e){if(e.key!=="Escape"||e.defaultPrevented||e.isComposing||e.keyCode===229)return;const t=Zn[Zn.length-1];t&&(e.stopPropagation(),t())}function In(e){return Zn.push(e),!Wa&&typeof document<"u"&&(document.addEventListener("keydown",gi),Wa=!0),()=>{const t=Zn.lastIndexOf(e);t>=0&&Zn.splice(t,1),Zn.length===0&&Wa&&typeof document<"u"&&(document.removeEventListener("keydown",gi),Wa=!1)}}const bi=o.createContext(null);function tf(e){return/max-width:\s*7[0-9][0-9]px/.test(e)}const yi=e=>typeof window>"u"||!window.matchMedia?!1:window.matchMedia(e).matches;function nf(e){const t=o.useCallback(a=>{if(typeof window>"u"||!window.matchMedia)return()=>{};const r=window.matchMedia(e);return r.addEventListener?r.addEventListener("change",a):r.addListener&&r.addListener(a),()=>{r.removeEventListener?r.removeEventListener("change",a):r.removeListener&&r.removeListener(a)}},[e]);return Jo.useSyncExternalStore(t,()=>yi(e),()=>!1)}function af(e){const[t,a]=o.useState(yi(e));return o.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const r=window.matchMedia(e),s=l=>a(l.matches),i=r;return i.addEventListener?i.addEventListener("change",s):i.addListener&&i.addListener(s),a(r.matches),()=>{i.removeEventListener?i.removeEventListener("change",s):i.removeListener&&i.removeListener(s)}},[e]),t}const rf=typeof Jo.useSyncExternalStore=="function"?nf:af;function Zt(e){const t=o.useContext(bi),a=rf(e);return t&&typeof t.mobile=="boolean"&&tf(e)?t.mobile:a}const of="(prefers-reduced-motion: reduce)";function Hr(){return Zt(of)}function Qt(e){const{anchorRect:t,anchorEl:a,offset:r=20,edgeMargin:s=20,onClose:i,closeOnOutsideClick:l=!0,className:c="",role:d="dialog",ariaLabel:u="",children:p,backdrop:m=!1,isMobilePopup:f=!1,useBorder:g=!0,header:y}=e||{},h=o.useRef(null),[w,C]=o.useState({position:"fixed",left:0,top:-9999}),[b,x]=o.useState(!1),[v,A]=o.useState("bottom"),[k,N]=o.useState(!1),[_,B]=o.useState(!1),E=!t&&!a,P=o.useCallback((Q=!1)=>{if(_&&f)return;const z=a?a.getBoundingClientRect():t;if(!z||!h.current)return;const q=h.current,{offsetWidth:W,offsetHeight:L}=q,D=window.innerWidth,F=window.innerHeight,R=D-z.right,O=z.left,$=z.top,Y=F-z.bottom;let ee=0,Z=0,ae="top";if($>=L+r)ae="top",Z=z.top-r-L,ee=z.left+z.width/2-W/2;else if(Y>=L+r)ae="bottom",Z=z.bottom+r,ee=z.left+z.width/2-W/2;else if(R>=W+r)ae="right",ee=z.right+r,Z=z.top+z.height/2-L/2;else if(O>=W+r)ae="left",ee=z.left-r-W,Z=z.top+z.height/2-L/2;else{const U=Math.max($,Y,R,O);U===$?(ae="top",Z=z.top-r-L,ee=z.left+z.width/2-W/2):U===Y?(ae="bottom",Z=z.bottom+r,ee=z.left+z.width/2-W/2):U===R?(ae="right",ee=z.right+r,Z=z.top+z.height/2-L/2):(ae="left",ee=z.left-r-W,Z=z.top+z.height/2-L/2)}const _e=Number.isFinite(Number(s))?Number(s):8;ee=Math.min(Math.max(ee,_e),D-W-_e),Z=Math.min(Math.max(Z,_e),F-L-_e);const re=Math.round(ee),ue=Math.round(Z);Q&&h.current?(h.current.style.left=`${re}px`,h.current.style.top=`${ue}px`,h.current.dataset.placement=ae):(A(ae||v),C({position:"fixed",left:re,top:ue}),N(!0))},[_,f,a,t,r,s,v]);o.useLayoutEffect(()=>{if(E)return;if(_&&f){C({position:"fixed",left:"50%",top:"50%",transform:"translate(-50%, -50%)",width:"calc(100% - 40px)",maxWidth:"calc(100% - 40px)"}),N(!0);return}P();const Q=requestAnimationFrame(()=>P());return()=>cancelAnimationFrame(Q)},[t,a,r,p,s,E,_,f,P]),o.useEffect(()=>{if(E||_&&f||!h.current||typeof ResizeObserver>"u")return;const Q=new ResizeObserver(()=>{t&&P()});return Q.observe(h.current),()=>Q.disconnect()},[t,p,s,E,_,f,P]),o.useEffect(()=>{if(E||_&&f)return;const Q=()=>P(!0),z=q=>{if(!a&&i){const W=q.target;if(W&&h.current&&h.current.contains(W))return;try{if(W&&W.closest&&W.closest("[data-tooltip-ignore]"))return}catch{}M.current(!0);return}Q()};return window.addEventListener("resize",Q),document.addEventListener("scroll",z,{passive:!0,capture:!0}),()=>{window.removeEventListener("resize",Q),document.removeEventListener("scroll",z,{capture:!0})}},[t,a,i,r,p,s,E,_,f,P]),o.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const Q=window.matchMedia("(max-width: 768px)"),z=()=>B(!!Q.matches);z();try{Q.addEventListener?Q.addEventListener("change",z):Q.addListener(z)}catch{try{Q.addListener(z)}catch{}}return()=>{try{Q.removeEventListener?Q.removeEventListener("change",z):Q.removeListener(z)}catch{}}},[]);const H=o.useRef(!1),S=o.useRef(null),V=Hr(),j=o.useCallback((Q=!1)=>{if(i&&!(b||H.current)){if(H.current=!0,Q){x(!0);try{i&&i()}catch{H.current=!1,x(!1)}return}x(!0),S.current=setTimeout(()=>{S.current=null;try{i&&i()}catch{H.current=!1,x(!1)}},V?0:200)}},[b,i,x,V]);o.useEffect(()=>()=>{S.current&&clearTimeout(S.current)},[]),o.useEffect(()=>{if(E)return;const Q=W=>{const L=h.current;if(!L)return;const D=W.target;if(D&&!L.contains(D)){try{if(D.closest&&D.closest("[data-tooltip-ignore]"))return}catch{}l&&j(!0)}},z=W=>{const L=h.current;if(!L)return;const D=W.target;if(D&&!L.contains(D)){try{if(D.closest&&D.closest("[data-tooltip-ignore]"))return}catch{}l&&j(!0)}},q=W=>{if(W.key==="Tab"){const L=h.current;if(!L)return;const D=L.querySelectorAll(Cn);if(!D||D.length===0)return;const F=D[0],R=D[D.length-1],O=document.activeElement;W.shiftKey?O===F&&(W.preventDefault(),R.focus()):O===R&&(W.preventDefault(),F.focus())}};return document.addEventListener("pointerdown",Q,!0),document.addEventListener("click",z,!0),document.addEventListener("keydown",q),()=>{document.removeEventListener("pointerdown",Q,!0),document.removeEventListener("click",z,!0),document.removeEventListener("keydown",q)}},[i,l,j,E]);const M=o.useRef(j);o.useEffect(()=>{M.current=j});const I=!!i;o.useEffect(()=>{if(!(E||!I))return In(()=>M.current())},[E,I]),o.useEffect(()=>{const Q=()=>{j(!0)};return typeof document<"u"&&document.addEventListener("speechear-close-tooltips",Q),()=>{typeof document<"u"&&document.removeEventListener("speechear-close-tooltips",Q)}},[j]);const G=n.jsxs("div",{ref:h,className:`tooltip-content ${E?"tooltip-content--inline":""} ${g?"tooltip-content--bordered":""} ${b?"is-closing":""} ${c} ${_&&f?"is-mobile":""}`,role:d,"aria-label":u||void 0,style:E?{}:{...w,visibility:k?"visible":"hidden"},tabIndex:-1,"data-placement":v,"data-left":E?"":w.left,"data-top":E?"":w.top,"data-anchor-left":t?Math.round(t.left):"","data-anchor-top":t?Math.round(t.top):"","data-anchor-width":t?Math.round(t.width):"","data-anchor-height":t?Math.round(t.height):"",children:[y!=null&&n.jsx("div",{className:"tooltip-content__header h5",children:y}),p]});if(E||typeof document>"u")return G;if(m||_&&f){const Q=n.jsxs("div",{className:"tooltip-portal",children:[n.jsx("div",{className:"tooltip-backdrop",onClick:()=>{l&&j(!0)}}),G]});return Ut.createPortal(Q,document.body)}return Ut.createPortal(G,document.body)}function gn(e){const{anchorRect:t,text:a,offset:r=8,onClose:s,className:i="",ariaLabel:l}=e||{};return a?n.jsx(Qt,{anchorRect:t,offset:r,onClose:s,closeOnOutsideClick:!1,className:`tooltip-info ${i}`,ariaLabel:l||a,children:n.jsx("div",{className:"tooltip-info__content body-3",children:a})}):null}function Fn(e){const{t}=be.useTranslation(),{anchorRect:a,title:r,items:s,activeIndex:i=-1,showIndex:l=!0,onClose:c,offset:d=12,closeOnOutsideClick:u=!0}=e||{},p=(Array.isArray(s)?s:s?[s]:[]).map(m=>typeof m=="string"?{text:m}:m);return!p.length&&!r?null:n.jsx(Qt,{anchorRect:a,offset:d,onClose:c,closeOnOutsideClick:u,useBorder:!1,className:"tooltip-description",ariaLabel:r||t("tooltip.description","\uC124\uBA85"),children:n.jsxs("div",{className:"tooltip-description__box",children:[r&&n.jsx("span",{className:"tooltip-description__title body-2",children:r}),n.jsx("ol",{className:"tooltip-description__items",children:p.map((m,f)=>n.jsxs("li",{className:`tooltip-description__item body-3${f===i?" tooltip-description__item--active":""}`,children:[l&&p.length>1&&n.jsxs("span",{className:"tooltip-description__index button-1",children:[f+1,"."]}),m.color&&n.jsx("span",{className:"tooltip-description__dot",style:{background:m.color},"aria-hidden":"true"}),n.jsx("span",{children:m.text})]},f))})]})})}function ga(e){const t=o.useRef(e);return o.useEffect(()=>{t.current=e}),t}let zr=0,vi=!1;function xi(){vi||typeof document>"u"||(vi=!0,document.addEventListener("pointerdown",e=>{e.pointerType==="touch"&&(zr=Date.now())},!0),document.addEventListener("touchstart",()=>{zr=Date.now()},{capture:!0,passive:!0}))}xi();function Xn(e){return!!e&&e.pointerType==="touch"}function Jn(e=1e3){return xi(),Date.now()-zr<e}function Vr(e,t,a,{enabled:r=!0,fallbackOnParent:s=!1}={}){const i=ga(e),l=ga(t),c=o.useRef(null),d=o.useRef(0);o.useEffect(()=>{if(!r||typeof document>"u")return;const p=m=>{const f=m,g=m.target,y=a.current,h=!!(g&&y&&y.contains(g));if(f.pointerType!=="touch"){h&&(c.current=null);return}if(h){c.current=i.current;return}c.current=null,i.current&&!(g&&g.closest?.(".tooltip-content"))&&l.current(!1,y)};return document.addEventListener("pointerdown",p,!0),()=>document.removeEventListener("pointerdown",p,!0)},[r,a,i,l]);const u=o.useCallback(p=>{const m=c.current;return m===null?!1:(c.current=null,d.current=Date.now(),l.current(!m,p??a.current),!0)},[a,l]);return o.useEffect(()=>{if(!r||!s)return;const p=a.current,m=p?.parentElement;if(!p||!m)return;let f=null;const g=w=>{const C=w.changedTouches?.[0];if(!C)return!1;const b=p.getBoundingClientRect();return C.clientX>=b.left&&C.clientX<=b.right&&C.clientY>=b.top&&C.clientY<=b.bottom},y=w=>{f=g(w)?i.current:null},h=w=>{const C=f;f=null,!(C===null||Date.now()-d.current<700||!g(w))&&(c.current=null,d.current=Date.now(),l.current(!C,p))};return m.addEventListener("touchstart",y,{passive:!0}),m.addEventListener("touchend",h),()=>{m.removeEventListener("touchstart",y),m.removeEventListener("touchend",h)}},[r,s,a,i,l]),{touchPress:u}}function sf(e,t){const{size:a=48,type:r,htmlType:s,href:i,target:l,rel:c,icon:d,rightIcon:u,label:p,count:m,subLabel:f,children:g,ariaLabel:y,variant:h="default",align:w="center",nowrap:C=!1,selected:b,toggleable:x=!1,ariaExpanded:v,ariaControls:A,disabled:k=!1,useLabel:N=!0,useBorder:_=!0,useBG:B=!0,useDisabledCovered:E=!1,useDisabledInvisible:P=!1,width:H,minWidth:S,onClick:V,onDisabledClick:j,showTooltipInfo:M=!1,tooltipInfoText:I=null,tooltipDescription:G=null,tooltipOnly:Q=!1,iconSize:z="medium",iconColor:q,shape:W="rounded",color:L,className:D,...F}=e,R=typeof a=="string"&&isNaN(Number(a))?a.toLowerCase():String(Number(a)||48),O=R.match(/^\d+$/)?`button${R}`:`button-${R}`,$=Number(a),Y=!isNaN($)&&$<40?"button-2":"button-1",ee=p??g,Z=k||!!F.disabled,ae=Z?E?"disabled-covered":P?"disabled-invisibled":"disabled":h,_e=ae?`button--variant-${ae}`:"",re=w?`button--align-${w}`:"",ue=C?"button--nowrap":"",U=W?`button--shape-${W}`:"",oe=typeof q=="string"&&q.startsWith("--")?`var(${q})`:q,de={...H?{width:typeof H=="number"?`${H}px`:H}:{},...S?{minWidth:typeof S=="number"?`${S}px`:S}:{},..._?{}:{"--button-border":Z?"0":"1px solid transparent"},...oe?{"--button-icon-color":oe}:{},...L?{"--color-main":L}:{}},ve=N===!1?"":ee,ge=Array.isArray(ve)?ve.length>0:!!ve,Se=!!u,Ce=r??(ge||d||Se?"bar":"dot"),Ee=`${O}--${Ce}`,Be=o.useRef(null),Re=o.useRef(t);Re.current=t;const Le=o.useCallback(Fe=>{Be.current=Fe;const rt=Re.current;typeof rt=="function"?rt(Fe):rt&&(rt.current=Fe)},[]),me=o.useRef(Z),[ke,Me]=o.useState(!!b),[Te,Ae]=o.useState(!1),[ie,ye]=o.useState(null),se=o.useCallback(()=>Ae(!1),[]),[Ie,ze]=o.useState(!1),Ge=o.useId();o.useEffect(()=>{typeof b=="boolean"&&Me(b)},[b]),o.useEffect(()=>{if(me.current&&!Z&&Be.current){const Fe=Be.current;let rt=!1;try{rt=Fe.matches(":focus:not(:focus-visible)")}catch{rt=!1}rt&&Fe.blur(),Fe.style.pointerEvents="none";const bt=requestAnimationFrame(()=>{requestAnimationFrame(()=>{Be.current&&(Be.current.style.pointerEvents="")})});return()=>cancelAnimationFrame(bt)}me.current=Z},[Z]);const Ze=typeof b=="boolean"?!!b:ke,Ye=typeof v=="boolean"?void 0:x||typeof b=="boolean"?Ze?"true":"false":F["aria-pressed"],Ke=De("button",O,Ee,_e,re,ue,U,Ze?"is-selected":null,B?null:"button--no-bg",Q?"button--tooltip-only":null,D),Oe=`button__icon button__icon--${z}`,Pe=Array.isArray(f)?f:f!==void 0?[f]:[],lt=()=>{if(Array.isArray(ve))return ve.map((rt,bt)=>{const zt=Pe[bt];return n.jsxs("span",{className:`button__label-text${zt!==void 0?" button__label-text--has-sub":""}`,children:[rt,zt!==void 0&&n.jsx("span",{className:"button__sub-label-text caption-1",children:zt})]},bt)});const Fe=f!==void 0;return n.jsxs("span",{className:`button__label-text${Fe?" button__label-text--has-sub":""}`,children:[ve,m!=null&&n.jsx("span",{className:"button__count",children:m}),Fe&&n.jsx("span",{className:"button__sub-label-text caption-1",children:f})]})},wt=Fe=>{typeof b!="boolean"&&!x&&Me(!1),Fe.currentTarget.blur()},Dt=Fe=>{Z||(typeof F.onMouseLeave=="function"&&F.onMouseLeave(Fe),wt(Fe))},Nt=Fe=>{if(Q&&at&&Qe.touchPress(Fe.currentTarget),Z){at&&Qe.touchPress(Fe.currentTarget),Fe.preventDefault(),j?.(Fe);return}typeof b!="boolean"&&x&&Me(rt=>!rt),V?.(Fe)},nt=o.useCallback(()=>{(M||G)&&(Ae(!0),ye(Be.current?.getBoundingClientRect()??null))},[M,G]),Je=o.useCallback(()=>{(M||G)&&(Ae(!1),ye(null))},[M,G]),at=!!(M||G),Qe=Vr(Te,Fe=>{Fe?nt():Je()},Be,{enabled:at&&(Z||Q),fallbackOnParent:at&&Z}),We={...F};delete We.disabled,delete We.className,delete We.faded,delete We.useFaded,delete We.loading,delete We.onMouseLeave,delete We.onPointerEnter,delete We.onPointerLeave,delete We.onPointerUp,delete We.onFocus,delete We.onBlur,Z&&(Object.keys(We).forEach(Fe=>{/^on[A-Z]/.test(Fe)&&typeof We[Fe]=="function"&&delete We[Fe]}),We["aria-disabled"]="true");const mt=(typeof M=="string"?M:null)??(typeof I=="string"?I:null)??(typeof y=="string"?y:null)??(typeof ee=="string"?ee:null)??void 0,He=typeof y=="string"?y:typeof ee=="string"?ee:mt,st=G?[G.title,...G.items??[]].filter(Boolean).join(". "):M&&mt&&mt!==He?mt:"",Ct=[typeof F["aria-describedby"]=="string"?F["aria-describedby"]:void 0,st?Ge:null].filter(Boolean).join(" ")||void 0,ut=(Fe,rt)=>n.jsx(Ue,{icon:Fe,label:rt??He,className:Oe,imgClassName:"button__icon-img",maskClassName:"button__icon-mask",svgClassName:"button__icon-svg"}),vt=()=>Ce==="dot"?n.jsxs(n.Fragment,{children:[ut(d),ge&&n.jsx("span",{className:`button__label ${Y}`,children:lt()})]}):w==="center"&&d?n.jsxs(n.Fragment,{children:[n.jsxs("span",{className:"button__center-group",children:[n.jsx("span",{className:"button__left",children:ut(d)}),ge&&n.jsx("span",{className:`button__label ${Y}`,children:lt()})]}),Se&&n.jsx("span",{className:"button__right",children:ut(u)})]}):n.jsxs(n.Fragment,{children:[d&&n.jsx("span",{className:"button__left",children:ut(d,y??ee)}),ge&&n.jsx("span",{className:`button__label ${Y}`,children:lt()}),Se&&n.jsx("span",{className:"button__right",children:ut(u)})]}),ot=!!i&&!Z;return n.jsxs(n.Fragment,{children:[n.jsxs(ot?"a":"button",{...We,ref:Le,...ot?{href:i,target:l,rel:c??(l==="_blank"?"noreferrer":void 0)}:{type:s,disabled:Z&&!j&&!Ie},className:Ke,"aria-pressed":Ye,"aria-expanded":typeof v=="boolean"?v:F["aria-expanded"],"aria-controls":A??F["aria-controls"],"aria-label":He,"aria-disabled":Z&&(ot||j||Ie)?!0:void 0,"aria-describedby":Ct,style:de,onClick:Nt,onMouseLeave:Dt,onPointerEnter:Fe=>{Xn(Fe)||nt(),!Z&&typeof F.onPointerEnter=="function"&&F.onPointerEnter(Fe)},onPointerLeave:Fe=>{Xn(Fe)||Je(),!Z&&typeof F.onPointerLeave=="function"&&F.onPointerLeave(Fe)},onPointerUp:Fe=>{Z&&at&&Qe.touchPress(Fe.currentTarget),!Z&&typeof F.onPointerUp=="function"&&F.onPointerUp(Fe)},onFocus:Fe=>{ze(!0),Jn()||nt(),!Z&&typeof F.onFocus=="function"&&F.onFocus(Fe)},onBlur:Fe=>{ze(!1),Z||wt(Fe),Je(),!Z&&typeof F.onBlur=="function"&&F.onBlur(Fe)},children:[vt(),st?n.jsx("span",{id:Ge,hidden:!0,"aria-label":st}):null]}),Te&&G?n.jsx(Fn,{anchorRect:ie,title:G.title,items:G.items,onClose:se}):Te&&mt?n.jsx(gn,{anchorRect:ie,text:mt,onClose:se}):null]})}const pe=o.forwardRef(sf);pe.displayName="Button";var lf={statusFilter:"\uC0C1\uD0DC \uD544\uD130",pageSizeSelect:"\uD398\uC774\uC9C0\uB2F9 \uD45C\uC2DC \uAC1C\uC218",selectedCount:"{{count}}\uAC1C \uC120\uD0DD\uB428",cancel:"\uCDE8\uC18C",info:"\uC124\uBA85",errorState:{message:"\uBD88\uB7EC\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4.",retry:"\uB2E4\uC2DC \uC2DC\uB3C4"},save:"\uC800\uC7A5",confirm:"\uD655\uC778",discardConfirm:{title:"\uC785\uB825\uC744 \uCDE8\uC18C\uD560\uAE4C\uC694?",body:"\uC800\uC7A5\uD558\uC9C0 \uC54A\uC73C\uBA74 \uC9C0\uAE08\uAE4C\uC9C0 \uC785\uB825\uD55C \uB0B4\uC6A9\uC774 \uC0AC\uB77C\uC9D1\uB2C8\uB2E4.",confirm:"\uC785\uB825 \uCDE8\uC18C"},close:"\uB2EB\uAE30",back:"\uB4A4\uB85C",emptyTrainingName:"\uD6C8\uB828 \uC774\uB984\uC774 \uBE44\uC5B4 \uC788\uC2B5\uB2C8\uB2E4.",remove:"\uC81C\uAC70",image:"\uC774\uBBF8\uC9C0",delete:"\uC0AD\uC81C",reset:"\uCD08\uAE30\uD654",update:"\uC5C5\uB370\uC774\uD2B8",download:"\uB2E4\uC6B4\uB85C\uB4DC",search:"\uAC80\uC0C9",empty:"\uB370\uC774\uD130\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",yes:"\uC608",no:"\uC544\uB2C8\uC624",all:"\uC804\uCCB4",none:"\uC5C6\uC74C",days:"{{count}}\uC77C",loadMore:"\uB354\uBCF4\uAE30",more:"\uB354\uBCF4\uAE30",moreFor:"{{name}} \uB354\uBCF4\uAE30",retry:"\uB2E4\uC2DC \uC2DC\uB3C4",prevPage:"\uC774\uC804 \uD398\uC774\uC9C0",nextPage:"\uB2E4\uC74C \uD398\uC774\uC9C0",play:"\uC7AC\uC0DD",pause:"\uBA48\uCDA4",playPause:"\uC7AC\uC0DD / \uBA48\uCDA4",replay:"\uB2E4\uC2DC\uB4E3\uAE30",subscription:"\uC774\uC6A9\uAD8C",done:"\uC644\uB8CC",failed:"\uC2E4\uD328",continue:"\uACC4\uC18D",notification:"\uC54C\uB9BC",emptyList:"\uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",menu:"\uBA54\uB274",resetSelection:"\uC120\uD0DD \uCD08\uAE30\uD654",pageSizeLabel:"{{n}}\uAC1C\uC529 \uBCF4\uAE30",totalCountPrefix:"\uCD1D ",totalCountSuffix:"\uAC1C",expand:"\uD3BC\uCE58\uAE30",collapse:"\uC811\uAE30",popup:"\uD31D\uC5C5",codeBlock:"\uCF54\uB4DC \uBE14\uB85D",totalPrefix:"\uCD1D ",copyCode:"\uCF54\uB4DC \uBCF5\uC0AC",copied:"\uBCF5\uC0AC\uB428",col:{problem:"\uBB38\uC81C"},phonetics:{place:{labial:"\uC591\uC21C\uC74C",alveolar:"\uCE58\uC870\uC74C",palatal:"\uACBD\uAD6C\uAC1C\uC74C",velar:"\uC5F0\uAD6C\uAC1C\uC74C",glottal:"\uC131\uBB38\uC74C"},vowel:{frontHigh:"\uC804\uC124 \uACE0\uBAA8\uC74C",backHighUnrounded:"\uD6C4\uC124 \uACE0\uBAA8\uC74C \uD3C9\uC21C",backHighRounded:"\uD6C4\uC124 \uACE0\uBAA8\uC74C \uC6D0\uC21C",frontMid:"\uC804\uC124 \uC911\uBAA8\uC74C",backMidUnrounded:"\uD6C4\uC124 \uC911\uBAA8\uC74C \uD3C9\uC21C",backMidRounded:"\uD6C4\uC124 \uC911\uBAA8\uC74C \uC6D0\uC21C",low:"\uC800\uBAA8\uC74C"},glide:{j:"j\uD65C\uC74C",w:"w\uD65C\uC74C",velar:"\u0270\uD65C\uC74C"}},unknownError:"\uC54C \uC218 \uC5C6\uB294 \uC624\uB958",networkError:"\uB124\uD2B8\uC6CC\uD06C \uC5F0\uACB0\uC774 \uBD88\uC548\uC815\uD569\uB2C8\uB2E4. \uC5F0\uACB0 \uC0C1\uD0DC\uB97C \uD655\uC778\uD55C \uB4A4 \uB2E4\uC2DC \uC2DC\uB3C4\uD574 \uC8FC\uC138\uC694."},cf={rangeSelect:"\uAE30\uAC04 \uC120\uD0DD",dow:["\uC77C","\uC6D4","\uD654","\uC218","\uBAA9","\uAE08","\uD1A0"],yearMonth:"{{year}}\uB144 {{month}}\uC6D4",prevMonth:"\uC774\uC804 \uB2EC",addOnDate:"{{date}}\uC5D0 \uBC29\uBB38 \uB4F1\uB85D",nextMonth:"\uB2E4\uC74C \uB2EC",prevWeek:"\uC774\uC804 \uC8FC",nextWeek:"\uB2E4\uC74C \uC8FC",legend:{visited:"\uBC29\uBB38",scheduled:"\uC608\uC57D",noVisit:"\uBBF8\uBC29\uBB38"},periodSelect:"\uAE30\uAC04 \uB2E8\uC704",visitCount:"\uBC29\uBB38 {{count}}\uAC74"},uf={planSuffix:"\uC774\uC6A9\uAD8C",labeledPlan:"{{label}} \uC774\uC6A9\uAD8C",couponCode:"\uC774\uC6A9\uAD8C \uCF54\uB4DC",specialLabel:"\uC624\uD508\uD2B9\uAC00",unitDay:"\uC77C",unitYear:"\uB144",remainingDay:"{{n}}\uC77C \uB0A8\uC74C",remainingHour:"{{n}}\uC2DC\uAC04 \uB0A8\uC74C",remainingMinute:"{{n}}\uBD84 \uB0A8\uC74C",remainingSecond:"{{n}}\uCD08 \uB0A8\uC74C",menu:{use:"\uC0AC\uC6A9\uD558\uAE30",refund:"\uD658\uBD88\uD558\uAE30",delete:"\uC0AD\uC81C\uD558\uAE30"}},df={clearAriaLabel:"\uAC80\uC0C9\uC5B4 \uC9C0\uC6B0\uAE30"},pf={starLabel:"{{n}}\uBC88\uC9F8 \uBCC4 \uC120\uD0DD",valueLabel:"{{max}}\uC810 \uB9CC\uC810\uC5D0 {{value}}\uC810",groupLabel:"\uBCC4\uC810"},mf={selected:"\uC120\uD0DD\uB428"},hf={placeholder:"\uC120\uD0DD"},ff={collapse:"\uC811\uAE30",expand:"\uD3BC\uCE58\uAE30"},Cf={biArea:"BI \uC601\uC5ED",biSymbol:"BI \uC2EC\uBCFC",logoMalgwi:"\uB9D0\uADC0 \uB85C\uACE0",logoManager:"\uB9D0\uADC0\uB9E4\uB2C8\uC800 \uB85C\uACE0",menuOpen:"\uBA54\uB274 \uC5F4\uAE30",utilMenu:"\uC720\uD2F8\uB9AC\uD2F0 \uBA54\uB274",menuClose:"\uBA54\uB274 \uB2EB\uAE30"},gf={mainMenu:"\uBA54\uC778 \uBA54\uB274",bottomNav:"\uD558\uB2E8 \uB124\uBE44\uAC8C\uC774\uC158",goToManager:"\uB9D0\uADC0\uB9E4\uB2C8\uC800\uB85C \uC774\uB3D9",goToMalgwi:"\uB9D0\uADC0\uB85C \uC774\uB3D9",modeLabelManager:"\uB9D0\uADC0 \uB9E4\uB2C8\uC800",modeLabelMalgwi:"\uB9D0\uADC0",training:"\uD6C8\uB828",settings:"\uC124\uC815",notifications:"\uC54C\uB9BC",account:"\uACC4\uC815",help:"\uB3C4\uC6C0\uB9D0",feedback:"\uBC84\uADF8\uC2E0\uACE0",debug:"\uB514\uBC84\uADF8",coupons:"\uCFE0\uD3F0",topic:"\uC8FC\uC81C\uBCC4 \uB4E3\uAE30",trainingType:"\uD6C8\uB828\uBCC4 \uB4E3\uAE30",wordPairs:"\uB300\uB9BD\uC30D \uCC3E\uAE30",wordSearch:"\uB2E8\uC5B4 \uCC3E\uAE30",wordTable:"\uB2E8\uC5B4\uD45C \uB9CC\uB4E4\uAE30",company:"\uC5C5\uCCB4\uC815\uBCF4",more:"\uB354\uBCF4\uAE30",moreMenu:"\uB354\uBCF4\uAE30 \uBA54\uB274",badgeLabel:"{{label}}, {{count}}\uAC1C"},bf={language:{training:{label:"\uD6C8\uB828 \uC5B8\uC5B4",sub:"\uD6C8\uB828\uC5D0 \uC0AC\uC6A9\uB418\uB294 \uB2E8\uC5B4\uC640 \uC74C\uC131 \uC5B8\uC5B4"}},notifications:{title:"\uC54C\uB9BC"},display:{fontSize:{small:"\uC791\uAC8C",large:"\uD06C\uAC8C"}},cache:{title:"\uCE90\uC2DC \uAD00\uB9AC",confirmMessage:"\uCE90\uC2DC({{size}})\uB97C \uC0AD\uC81C\uD569\uB2C8\uB2E4. \uACC4\uC18D\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C?",delete:"\uC0AD\uC81C",deleting:"\uC0AD\uC81C \uC911",cleared:"\uCE90\uC2DC\uAC00 \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",group:{wordData:{label:"\uB2E8\uC5B4 \uB370\uC774\uD130",sub:"\uB2E8\uC5B4 \uBAA9\uB85D \uBC0F \uBC84\uC804 \uC815\uBCF4"},pairIndex:{label:"\uB2E8\uC5B4\uC30D \uC778\uB371\uC2A4",sub:"\uCD08\uC131\xB7\uC911\uC131\xB7\uC885\uC131 \uB300\uB9BD\uC30D \uBD84\uC11D \uCE90\uC2DC"},imageCache:{label:"\uC774\uBBF8\uC9C0 \uCE90\uC2DC",sub:"\uB2E8\uC5B4\uBCC4 \uC774\uBBF8\uC9C0 \uC874\uC7AC \uC5EC\uBD80 \uD655\uC778 \uACB0\uACFC"},trainingRecord:{label:"\uD6C8\uB828 \uAE30\uB85D",sub:"\uC624\uB298\uC758 \uD6C8\uB828 \uC9C4\uD589\uB960 \uBC0F \uD559\uC2B5 \uC77C\uC218"}}},button:{save:"\uC124\uC815 \uC800\uC7A5"},popup:{clear:{confirm:"\uCD08\uAE30\uD654"},update:{confirm:"\uC5C5\uB370\uC774\uD2B8"},cache:{title:"{{label}} \uC0AD\uC81C",message:"{{label}}({{size}})\uB97C \uC0AD\uC81C\uD569\uB2C8\uB2E4. \uACC4\uC18D\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C?"}},saved:"\u2713 \uC800\uC7A5\uB428",account:{title:"\uACC4\uC815",delete:{sub:"\uD0C8\uD1F4 \uD6C4 30\uC77C \uC774\uB0B4 \uC7AC\uAC00\uC785 \uC2DC \uBCF5\uAD6C \uAC00\uB2A5\uD569\uB2C8\uB2E4."}}},yf={addButton:"\uC774\uC6A9\uAD8C \uCD94\uAC00\uD558\uAE30",couponButton:"\uCFE0\uD3F0 \uC785\uB825",loading:"\uBD88\uB7EC\uC624\uB294 \uC911\u2026",segment:{personal:"\uB9D0\uADC0",org:"\uB9D0\uADC0\uB9E4\uB2C8\uC800"},org:{title:"\uD604\uC7AC \uC774\uC6A9\uAD8C",disc:"\uAE30\uAD00\uC5D0\uC11C \uC0AC\uC6A9 \uC911\uC778 \uC774\uC6A9\uAD8C \uC815\uBCF4\uC785\uB2C8\uB2E4.",empty:"\uB4F1\uB85D\uB41C \uAE30\uAD00 \uC774\uC6A9\uAD8C\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",fallbackTitle:"\uAE30\uAD00 \uC774\uC6A9\uAD8C",startDate:"\uC2DC\uC791\uC77C",endDate:"\uB9CC\uB8CC\uC77C",remaining:"\uB0A8\uC740 \uAE30\uAC04",duration:"\uC774\uC6A9 \uAE30\uAC04"},active:{infoTitle:"\uC774\uC6A9 \uC815\uBCF4",refund:"\uD658\uBD88 \uC694\uCCAD",startDate:"\uC0AC\uC6A9 \uC2DC\uC791\uC77C",endDate:"\uC885\uB8CC\uC77C",remaining:"\uB0A8\uC740 \uAE30\uAC04"},pending:{title:"\uBCF4\uC720",empty:"\uB300\uAE30 \uC911\uC778 \uC774\uC6A9\uAD8C\uC774 \uC5C6\uC2B5\uB2C8\uB2E4."}},vf={profile:{planSuffix:"\uD50C\uB79C",plan:"\uD50C\uB79C"},basicInfo:{name:{placeholder:"\uD64D\uAE38\uB3D9"}},security:{title:"\uBCF4\uC548",password:{label:"\uBE44\uBC00\uBC88\uD638",currentRequired:"\uD604\uC7AC \uBE44\uBC00\uBC88\uD638\uB97C \uC785\uB825\uD558\uC138\uC694.",newRequired:"\uC0C8 \uBE44\uBC00\uBC88\uD638\uB97C \uC785\uB825\uD558\uC138\uC694.",mismatch:"\uC0C8 \uBE44\uBC00\uBC88\uD638\uAC00 \uC77C\uCE58\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.",changed:"\uBE44\uBC00\uBC88\uD638\uAC00 \uBCC0\uACBD\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},twoFactor:{label:"2\uB2E8\uACC4 \uC778\uC99D",sub:"\uACC4\uC815 \uBCF4\uC548\uC744 \uAC15\uD654\uD558\uC138\uC694"}}},xf={guide:{faq:{title:"\uC790\uC8FC \uBB3B\uB294 \uC9C8\uBB38",desc:"FAQ \uBAA8\uC544\uBCF4\uAE30"}}},_f={settings:"\uC124\uC815",start:{title:"\uB2E8\uC5B4\uD6C8\uB828 \uC2DC\uC791",description:"\uC544\uB798 \uD6C8\uB828 \uC720\uD615\uC744 \uC120\uD0DD\uD574 \uC2DC\uC791\uD558\uC138\uC694"},difficulty:{tooltip:"\uAC00\uC7A5 \uC26C\uC6B4 \uB09C\uC774\uB3C4\uB294 '\uBB34\uC791\uC704', \uAC00\uC7A5 \uC5B4\uB824\uC6B4 \uB09C\uC774\uB3C4\uB294 '\uCD08\uC131\uCC28\uC774' \uC785\uB2C8\uB2E4."},contrast:{label:"\uB300\uB9BD",type:"\uB300\uB9BD \uC885\uB958",count:"\uB300\uB9BD \uAC2F\uC218",n:"{{n}}\uAC1C"},filter:{random:"\uBB34\uC791\uC704",trainOnset:"\uCD08\uC131",trainVowel:"\uBAA8\uC74C",trainCoda:"\uC885\uC131",phonemeGroup:"\uD6C8\uB828 \uC74C\uC808",noLimit:"\uBB34\uAD00",codaExclude:"\uC81C\uC678",gradeLabel:"\uB4F1\uAE09",excludeImageInfo:"\uC774\uBBF8\uC9C0 \uC788\uB294 \uB2E8\uC5B4\uB9CC: \uB2E8\uC5B4 \uC911\uC5D0 \uC774\uBBF8\uC9C0\uAC00 \uC788\uB294 \uB2E8\uC5B4\uB9CC \uACB0\uACFC\uC5D0 \uBCF4\uC5EC\uC90D\uB2C8\uB2E4.",sameStructureInfo:"\uC74C\uC18C \uAD6C\uC870 \uAC19\uC740 \uB2E8\uC5B4\uB9CC: \uC815\uB2F5\uACFC \uC624\uB2F5\uC758 \uC74C\uC808 \uAD6C\uC870(\uAE00\uC790 \uC218\xB7\uBC1B\uCE68 \uC720\uBB34 \uB4F1)\uAC00 \uAC19\uC740 \uACB0\uACFC\uB9CC \uB0A8\uACA8\uC694.",selectSection:"\uC120\uD0DD",excludeImage:"\uC774\uBBF8\uC9C0 \uC788\uB294 \uB2E8\uC5B4\uB9CC",sameStructure:"\uC74C\uC18C \uAD6C\uC870 \uAC19\uC740 \uB2E8\uC5B4\uB9CC"},noQuestions:"\uBB38\uC81C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",countQuestions:"{{n}}\uBB38\uC81C",countSentences:"{{n}}\uBB38\uC7A5",comingSoon:"\uC900\uBE44 \uC911",nextQuestion:"\uB2E4\uC74C \uBB38\uC81C",noiseRatioTitle:"\uC18C\uC74C \uBE44\uC728",noiseRatioValue:"{{ratio}}\uBC30",noiseTypeTitle:"\uC18C\uC74C \uC885\uB958",playVolumeTitle:"\uC804\uCCB4 \uC18C\uB9AC",playSpeedTitle:"\uC7AC\uC0DD \uC18D\uB3C4",meter:{sentence:"\uC7AC\uC0DD",noise:"\uC18C\uC74C",toggle:"\uC624\uB514\uC624 \uBBF8\uD130 \uD45C\uC2DC"},viewResult:"\uACB0\uACFC\uBCF4\uAE30",problemNotice:"{{n}}\uBC88 \uBB38\uC81C \uC785\uB2C8\uB2E4.",trainingSettingsTitle:"\uD6C8\uB828 \uC124\uC815",sentencePreview:"\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30",notHeard:"\uC548 \uB4E4\uB838\uC5B4\uC694.",heardWell:"\uC798 \uB4E4\uB838\uC5B4\uC694.",confirmTitle:"\uBB38\uC7A5\uC744 \uD655\uC778\uD558\uACE0 \uC798 \uB4E4\uB838\uB294\uC9C0 \uC120\uD0DD\uD558\uC138\uC694.",noSoundWaveform:"\uC18C\uB9AC \uBE44\uAD50 \uBB38\uC81C\uB294 \uC6E8\uC774\uBE0C\uD3FC\uC744 \uD45C\uD604\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.",noise:{level:{none:"\uC5C6\uC74C",weak:"\uC57D\uD568",medium:"\uBCF4\uD1B5",strong:"\uAC15\uD568",veryStrong:"\uB9E4\uC6B0 \uAC15\uD568"},type:{none:"\uC5C6\uC74C",default:"\uAE30\uBCF8",street:"\uAE38\uAC70\uB9AC",buzz:"\uC640\uAE00\uC640\uAE00",restaurant:"\uC2DD\uB2F9"}},listenTitle:"\uC81C\uC2DC\uD558\uB294 \uBB38\uC7A5\uC744 \uB4E4\uC5B4\uC8FC\uC138\uC694.",listenButton:"\uBB38\uC7A5 \uB4E3\uAE30",playSound:"\uC18C\uB9AC \uB4E3\uAE30",playAll:"\uBAA8\uB450 \uB4E3\uAE30",selectInOrder:"\uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uCE74\uB4DC\uB97C \uC120\uD0DD\uD558\uC138\uC694.",stop:"\uC815\uC9C0",preview:"\uBBF8\uB9AC \uB4E3\uAE30",next:"\uB2E4\uC74C",completed:"\uD6C8\uB828 \uC644\uB8CC",selected:"\uC120\uD0DD\uB428",nthSelected:"{{n}}\uBC88\uC9F8 \uC120\uD0DD",fontSizeMin:"\uAE00\uC528 \uD06C\uAE30\uAC00 \uCD5C\uC18C\uC785\uB2C8\uB2E4.",fontSizeMax:"\uAE00\uC528 \uD06C\uAE30\uAC00 \uCD5C\uB300\uC785\uB2C8\uB2E4.",fontSizeDecrease:"\uAE00\uC790 \uD06C\uAE30 \uAC10\uC18C",fontSizeIncrease:"\uAE00\uC790 \uD06C\uAE30 \uC99D\uAC00",toggleBackground:"\uBC30\uACBD \uC804\uD658",cardInstructions:"\uB0B1\uB9D0 \uCE74\uB4DC\uB97C \uBCF4\uACE0 \uC18C\uB9AC\uB97C \uB4E3\uACE0 \uD655\uC778\uD558\uC138\uC694.",noCards:"\uCE74\uB4DC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",audioFetchError:"\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4.",ttsUnavailable:"\uC774 \uAE30\uAE30\uC5D0\uC11C\uB294 \uC74C\uC131\uC744 \uB4E4\uB824\uC904 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",selectConfirm:"\uBB38\uC81C\uB97C \uBCF4\uACE0 \uD574\uB2F9\uD558\uB294 \uB0B4\uC6A9\uC744 \uC120\uD0DD\uD558\uC138\uC694.",orderListDefault:"\uBB38\uC7A5\uC744 \uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uBC30\uCE58\uD558\uC138\uC694.",result:{pendingDone:"\uACB0\uACFC\uB97C \uACC4\uC0B0\uD558\uB294 \uC911\uC774\uB77C \uC544\uC9C1 \uC644\uB8CC\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",eyebrow:"\uD6C8\uB828 \uC644\uB8CC",title:"\uD6C8\uB828\uC744 \uBAA8\uB450 \uB9C8\uCCE4\uC2B5\uB2C8\uB2E4.",scoreAria:"{{correct}} / {{total}} \uBB38\uD56D",elapsed:"\uC18C\uC694 \uC2DC\uAC04",summary:"{{correct}}\uAC1C\uC758 \uBB38\uD56D\uC744 \uC798 \uB4E4\uC5C8\uC2B5\uB2C8\uB2E4.",tableAriaLabel:"\uBB38\uD56D\uBCC4 \uD310\uC815",colJudge:"\uD310\uC815",colAnswerSelected:"\uC815\uB2F5 \xB7 \uC120\uD0DD",colAnswer:"\uC815\uB2F5",colSelected:"\uC120\uD0DD",heardWell:"\uC798 \uB4E4\uC5C8\uC5B4\uC694",notHeard:"\uBABB \uB4E4\uC5C8\uC5B4\uC694",notJudged:"\uBBF8\uD310\uC815",replay:"\uB2E4\uC2DC\uD558\uAE30",done:"\uC644\uB8CC",viewResult:"\uACB0\uACFC \uD655\uC778",noContent:"(\uB0B4\uC6A9\uC5C6\uC74C)"},up:"\uC704\uB85C",down:"\uC544\uB798\uB85C",prev:"\uC774\uC804",listenLabel:"\uBB38\uC7A5 \uB4E3\uAE30",sourcePlay:"\uC18C\uC2A4 {{n}} \uC7AC\uC0DD",listen:"\uB4E3\uAE30",audioStatus:{idle:"\uB300\uAE30",resolving:"\uB9AC\uC18C\uC2A4 \uB9E4\uD551 \uC911\u2026",checking_exists:"\uD30C\uC77C \uC874\uC7AC \uD655\uC778\u2026",getting_signed_url:"\uC11C\uBA85 URL \uC870\uD68C\u2026",downloading:"\uB2E4\uC6B4\uB85C\uB4DC \uC911\u2026",measuring_duration:"\uC624\uB514\uC624 \uAE38\uC774 \uCE21\uC815\u2026",ready:"\uC900\uBE44 \uC644\uB8CC",error:"\uC624\uB958 \uBC1C\uC0DD"}},wf={totalCount:"\uAC1C\uC758 \uD6C8\uB828 \uBB36\uC74C",renameGroup:"\uADF8\uB8F9 \uC774\uB984 \uBC14\uAFB8\uAE30",itemCount:"\uD6C8\uB828 \uAC1C\uC218",menu:{edit:"\uD6C8\uB828 \uBB36\uC74C \uC218\uC815",rename:"\uC774\uB984 \uBC14\uAFB8\uAE30",move:"\uADF8\uB8F9 \uC774\uB3D9",duplicate:"\uD6C8\uB828 \uBB36\uC74C \uBCF5\uC0AC",publish:"\uB9D0\uADC0\uC790\uB8CC\uC2E4\uC5D0 \uC62C\uB9AC\uAE30"},sort:{customers:"\uD6C8\uB828 \uACE0\uAC1D"},copyLink:"\uB9C1\uD06C \uBCF5\uC0AC",removeLink:"\uB9C1\uD06C \uC81C\uAC70",linkRemoved:"\uB9C1\uD06C\uAC00 \uC81C\uAC70\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",linkSaveFirst:"\uBA3C\uC800 \uD6C8\uB828 \uBB36\uC74C\uC744 \uC800\uC7A5\uD574\uC8FC\uC138\uC694.",linkSaveFirstHint:"\uC800\uC7A5\uB41C \uD6C8\uB828 \uBB36\uC74C\uC5D0\uC11C\uB9CC \uACF5\uC720 \uB9C1\uD06C\uB97C \uC0DD\uC131\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.",linkCopySelect:"\uBCF5\uC0AC\uAC00 \uB9C9\uD600 \uB9C1\uD06C\uB97C \uC120\uD0DD\uD588\uC2B5\uB2C8\uB2E4. Ctrl/\u2318+C\uB85C \uBCF5\uC0AC\uD558\uC138\uC694.",nameRequired:"\uD6C8\uB828 \uBB36\uC74C \uC774\uB984\uC744 \uC785\uB825\uD574\uC8FC\uC138\uC694.",itemRequired:"\uD6C8\uB828\uC744 1\uAC1C \uC774\uC0C1 \uB2F4\uC544\uC8FC\uC138\uC694.",randomAdd:"\uBB34\uC791\uC704 \uCD94\uAC00"},kf={totalCount:"\uBA85\uC758 \uACE0\uAC1D",loadError:"\uBAA9\uB85D\uC744 \uBD88\uB7EC\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4.",basicInfo:{editTooltip:"\uC218\uC815\uD558\uAE30"},member:{placeholder:"\uC774\uBA54\uC77C \uB610\uB294 \uC804\uD654",link:"\uC5F0\uACB0",linking:"\uC5F0\uACB0 \uC911\u2026"},device:{title:"\uCCAD\uAC01\uC7AC\uD65C\uAE30\uAE30",addTooltip:"\uC0C8\uB85C \uC0DD\uC131",addButton:"\uAE30\uAE30 \uCD94\uAC00",listTooltip:"\uBAA9\uB85D \uBCF4\uAE30",listTitle:"\uCE21 \uAE30\uAE30 \uBAA9\uB85D",historyEmpty:"\uB4F1\uB85D\uB41C \uAE30\uAE30 \uC774\uB825\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",wearing:"\uCE21 \uCC29\uC6A9\uC911",notRegistered:"\uBBF8\uB4F1\uB85D",unit:"\uAC1C",wearingNow:"\uCC29\uC6A9",wear:"\uCC29\uC6A9",unwear:"\uCC29\uC6A9 \uD574\uC81C",wornSince:"{{date}}\uBD80\uD130",release:"\uD574\uC81C",historyTitle:"\uCCAD\uAC01\uC7AC\uD65C\uAE30\uAE30 \uC774\uB825"},schedule:{title:"\uBC29\uBB38 \uC608\uC815",addTooltip:"\uC608\uC815 \uB4F1\uB85D",listTooltip:"\uC804\uCCB4 \uBCF4\uAE30",empty:"\uC608\uC815\uB41C \uBC29\uBB38\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",registerTitle:" \uACE0\uAC1D\uB2D8 \uBC29\uBB38 \uC608\uC815 \uB4F1\uB85D",memoPlaceholder:"\uBC29\uBB38 \uC608\uC815 \uAD00\uB828 \uBA54\uBAA8\uB97C \uC785\uB825\uD574 \uC8FC\uC138\uC694."},visitHistory:{title:"\uBC29\uBB38 \uC774\uB825",addTooltip:"\uC2E0\uADDC \uB4F1\uB85D",empty:"\uC544\uC9C1 \uBC29\uBB38 \uAE30\uB85D\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",popupTitle:" \uACE0\uAC1D\uB2D8 \uBC29\uBB38 \uC774\uB825",registerTitle:" \uACE0\uAC1D\uB2D8 \uC2E0\uADDC \uBC29\uBB38 \uB4F1\uB85D"},homework:{title:"\uC219\uC81C \uC9C4\uD589\uC0C1\uD669",active:"\uD65C\uC131",inactive:"\uBE44\uD65C\uC131",copy:"\uB9C1\uD06C \uBCF5\uC0AC",copied:"\uB9C1\uD06C\uAC00 \uBCF5\uC0AC\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},moreItems:"\uB354 \uC788\uC74C",viewAll:"\uC804\uCCB4 \uBCF4\uAE30",visits:{title:"\uBC29\uBB38"},trainingRecord:{title:"\uACE0\uAC1D \uD6C8\uB828 \uAE30\uB85D"},status:{trainingSubtitle:"\uD6C8\uB828 \uD604\uD669"},detail:{session:{completedFmt:"\uC644\uB8CC {{done}}/{{total}} \xB7 {{duration}}"},visitSuffix:"\uC758 \uBC29\uBB38"},duration:{minSec:"{{m}}\uBD84 {{s}}\uCD08",min:"{{m}}\uBD84",sec:"{{s}}\uCD08"}},Af={plan:{recommendedFor:"\uC774\uB7F0 \uBD84\uAED8 \uCD94\uCC9C\uD569\uB2C8\uB2E4.",features:"\uD575\uC2EC \uAE30\uB2A5",freePrice:"\uBB34\uB8CC",contact:"\uBB38\uC758\uD558\uAE30",tierFallback:"\uC774\uC6A9\uAD8C",openPromo:"\uC624\uD508 \uD2B9\uAC00"},products:{mgrEnterprise:{tier:{price:"\uBB38\uC758"}}}},Bf={title:"\uCFE0\uD3F0",subtitle:"\uCFE0\uD3F0 \uCF54\uB4DC\uB97C \uC785\uB825\uD558\uAC70\uB098 \uBCF4\uC720 \uCFE0\uD3F0\uC744 \uD655\uC778\uD558\uC138\uC694.",input:{label:"\uCFE0\uD3F0 \uCF54\uB4DC",placeholder:"\uCFE0\uD3F0 \uCF54\uB4DC \uC785\uB825"},applyButton:"\uC801\uC6A9",error:{invalid:"\uC720\uD6A8\uD558\uC9C0 \uC54A\uC740 \uCFE0\uD3F0 \uCF54\uB4DC\uC785\uB2C8\uB2E4.",alreadyUsed:"\uC774\uBBF8 \uC0AC\uC6A9\uB41C \uCFE0\uD3F0\uC785\uB2C8\uB2E4."},success:{applied:'"{{name}}" \uCFE0\uD3F0\uC774 \uC801\uC6A9\uB418\uC5C8\uC2B5\uB2C8\uB2E4.'},section:{owned:"\uBCF4\uC720 \uCFE0\uD3F0"},status:{used:"\uC0AC\uC6A9 \uC644\uB8CC",available:"\uC0AC\uC6A9 \uAC00\uB2A5"}},Nf={unitVisit:"\uAC74",periodAll:"\uC804\uCCB4",showN:"{{n}}\uAC1C\uC529"},Ef={subtitle:"\uC5C5\uCCB4 \uBC0F \uBC95\uC778 \uC815\uBCF4\uB97C \uAD00\uB9AC\uD558\uC138\uC694.",editButton:"\uC815\uBCF4 \uC218\uC815",basicInfo:{title:"\uAE30\uBCF8 \uC815\uBCF4"},contactInfo:{title:"\uC5F0\uB77D\uCC98 \uC815\uBCF4"}},Df={title:"\uD6C8\uB828\uBCC4 \uB4E3\uAE30",subtitle:"\uC6D0\uD558\uB294 \uD6C8\uB828 \uC720\uD615\uC744 \uC120\uD0DD\uD558\uC138\uC694.",listenInNoise:{title:"\uC18C\uC74C \uD558 \uBB38\uC7A5 \uB4E3\uAE30",desc:"\uB2E4\uC591\uD55C \uC18C\uC74C \uD658\uACBD\uC5D0\uC11C \uBB38\uC7A5 \uCCAD\uB825\uC744 \uD6C8\uB828\uD569\uB2C8\uB2E4."},shortStory:{title:"\uC9E7\uC740 \uC774\uC57C\uAE30 \uB4E3\uAE30",desc:"\uC9E7\uC740 \uC774\uC57C\uAE30\uB97C \uB4E3\uACE0 \uB0B4\uC6A9\uC744 \uC774\uD574\uD569\uB2C8\uB2E4."},longStory:{title:"\uAE34 \uC774\uC57C\uAE30 \uB4E3\uAE30",desc:"\uAE34 \uC774\uC57C\uAE30\uB97C \uC9D1\uC911\uD574\uC11C \uB4E3\uACE0 \uB0B4\uC6A9\uC744 \uD30C\uC545\uD569\uB2C8\uB2E4."},orderingSentence:{title:"\uBB38\uC7A5 \uC21C\uC11C\uD654",desc:"\uB4E4\uC740 \uBB38\uC7A5\uB4E4\uC744 \uC62C\uBC14\uB978 \uC21C\uC11C\uB85C \uBC30\uC5F4\uD569\uB2C8\uB2E4."},SAME_SOUND_PICK:{label:"\uAC19\uC740 \uC18C\uB9AC \uACE0\uB974\uAE30",sub:"\uB4E4\uC740 \uC18C\uB9AC\uC640 \uAC19\uC740 \uB2E8\uC5B4 \uCE74\uB4DC\uB97C \uACE0\uB974\uC138\uC694."},SAME_OR_DIFF:{label:"\uAC19\uC740\uC9C0 \uB2E4\uB978\uC9C0 \uB9DE\uD788\uAE30",sub:"\uB450 \uC18C\uB9AC\uAC00 \uAC19\uC740\uC9C0, \uB2E4\uB978\uC9C0 \uAD6C\uBD84\uD558\uC138\uC694."},HEAR_AND_PICK_SAME:{label:"\uC77C\uCE58\uD558\uB294 \uB2E8\uC5B4 \uB9DE\uD788\uAE30",sub:"\uB4E4\uC740 \uC18C\uB9AC\uC758 \uB2E8\uC5B4 \uCE74\uB4DC\uB97C \uACE0\uB974\uC138\uC694."},HEAR_AND_PICK_INCLUDED:{label:"\uD55C \uC74C\uC808 \uD3EC\uD568 \uB2E8\uC5B4 \uB9DE\uD788\uAE30",sub:"\uB4E4\uC740 \uC74C\uC808\uC774 \uD3EC\uD568\uB41C \uB2E8\uC5B4 \uCE74\uB4DC\uB97C \uACE0\uB974\uC138\uC694."},STARTS_WITH_SAME_SOUND:{label:"\uCCAB \uC74C\uC808\uC774 \uAC19\uC740 \uB2E8\uC5B4 \uB9DE\uD788\uAE30",sub:"\uB4E4\uC740 \uB2E8\uC5B4\uC640 \uAC19\uC740 \uC18C\uB9AC\uB85C \uC2DC\uC791\uD558\uB294 \uB2E8\uC5B4\uB97C \uACE0\uB974\uC138\uC694."},LISTEN_AND_REMEMBER_ORDER:{label:"\uB4E3\uACE0 \uC21C\uC11C\uB300\uB85C \uAE30\uC5B5\uD558\uAE30",sub:"\uC138 \uB2E8\uC5B4\uB97C \uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uCE74\uB4DC\uB97C \uC120\uD0DD\uD558\uC138\uC694."},MERGE_2_SYLLABLES:{label:"\uC74C\uC808 2\uAC1C \uD569\uCE58\uAE30",sub:"\uB450 \uC74C\uC808\uC744 \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uB2E8\uC5B4\uAC00 \uB420\uAE4C\uC694?"},MERGE_3_SYLLABLES:{label:"\uC74C\uC808 3\uAC1C \uD569\uCE58\uAE30",sub:"\uC138 \uC74C\uC808\uC744 \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uB2E8\uC5B4\uAC00 \uB420\uAE4C\uC694?"},MERGE_2_PHONEMES:{label:"\uC74C\uC18C 2\uAC1C \uD569\uCE58\uAE30",sub:"\uB450 \uC74C\uC18C\uB97C \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},MERGE_3_PHONEMES:{label:"\uC74C\uC18C 3\uAC1C \uD569\uCE58\uAE30",sub:"\uC138 \uC74C\uC18C\uB97C \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},DROP_1_FROM_2SYLL:{label:"2\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC808 \uD0C8\uB77D",sub:"2\uC74C\uC808 \uB2E8\uC5B4\uC5D0\uC11C \uD55C \uC74C\uC808\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},DROP_1_FROM_3SYLL:{label:"3\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC808 \uD0C8\uB77D",sub:"3\uC74C\uC808 \uB2E8\uC5B4\uC5D0\uC11C \uD55C \uC74C\uC808\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},DROP_PART_FROM_COMPOUND:{label:"\uD569\uC131\uC5B4\uC5D0\uC11C \uBD80\uBD84 \uD0C8\uB77D",sub:"\uD569\uC131\uC5B4\uC758 \uC77C\uBD80\uB97C \uBE7C\uBA74 \uC5B4\uB5A4 \uB2E8\uC5B4\uAC00 \uB420\uAE4C\uC694?"},DROP_FINAL_CONSONANT_FROM_1SYLL:{label:"1\uC74C\uC808\uC5D0\uC11C \uBC1B\uCE68 \uD0C8\uB77D",sub:"\uBC1B\uCE68\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},REMOVE_CONSONANT_AND_IDENTIFY_PHONEME:{label:"1\uC74C\uC808\uC5D0\uC11C \uC790\uC74C \uD0C8\uB77D",sub:"\uC790\uC74C\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB0A8\uC744\uAE4C\uC694?"},CHANGE_1_SYLL_IN_2SYLL:{label:"2\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC808 \uBC14\uAFB8\uAE30",sub:"2\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC808\uC744 \uBC14\uAFD4 \uC0C8 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uC138\uC694."},CHANGE_1_SYLL_IN_3SYLL:{label:"3\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC808 \uBC14\uAFB8\uAE30",sub:"3\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC808\uC744 \uBC14\uAFD4 \uC0C8 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uC138\uC694."},CHANGE_1_PHONEME_IN_1SYLL:{label:"1\uC74C\uC808 \uB2E8\uC5B4 \uC911 1\uAC1C \uC74C\uC18C \uBC14\uAFB8\uAE30",sub:"1\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC18C\uB97C \uBC14\uAFD4 \uC0C8 \uC18C\uB9AC\uB97C \uB9CC\uB4DC\uC138\uC694."},CHANGE_1_PHONEME_IN_2SYLL:{label:"2\uC74C\uC808 \uB2E8\uC5B4 \uC911 1\uAC1C \uC74C\uC18C \uBC14\uAFB8\uAE30",sub:"2\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC18C\uB97C \uBC14\uAFD4 \uC0C8 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uC138\uC694."}},Sf={comingSoon:"\uB2E8\uC5B4\uD6C8\uB828 \uAE30\uB2A5\uC744 \uC900\uBE44 \uC911\uC785\uB2C8\uB2E4."},jf={colName:"\uB2E8\uC5B4\uD45C \uC774\uB984",open:"\uC5F4\uAE30",countSuffix:"\uAC1C\uC758 \uB2E8\uC5B4\uD45C",tab:{cards:"\uB2E8\uC5B4\uD45C \uCE74\uB4DC",tables:"\uB2E8\uC5B4\uD45C"},cardsEmpty:"\uC544\uC9C1 \uB9CC\uB4E0 \uB2E8\uC5B4\uD45C \uCE74\uB4DC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",addCard:"\uB2E8\uC5B4\uD45C \uCE74\uB4DC \uCD94\uAC00",menu:{publishStore:"\uB9D0\uADC0\uC790\uB8CC\uC2E4\uC5D0 \uC62C\uB9AC\uAE30",unpublishStore:"\uB9D0\uADC0\uC790\uB8CC\uC2E4\uC5D0\uC11C \uB0B4\uB9AC\uAE30"},newBadge:"\uC0C8\uB85C \uB9CC\uB4E0 \uD45C",publishedBadge:"\uBC1C\uD589\uB428",sharedBadge:"\uACF5\uC720 \uC911"},Tf={title:"\uC8FC\uC694 \uB2E8\uC5B4",empty:"\uCD94\uCD9C\uB41C \uC8FC\uC694 \uB2E8\uC5B4\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4."},Mf={defaultName:"\uB2E8\uC5B4 \uD45C",title:"\uB2E8\uC5B4 \uD45C \uB9CC\uB4E4\uAE30",subtitle:"\uCE78\uC744 \uC124\uC815\uD558\uACE0 \uB2E8\uC5B4\uB97C \uCD94\uAC00\uD558\uC5EC \uD45C\uB97C \uB9CC\uB4ED\uB2C8\uB2E4.",filterTitle:"\uD45C \uC124\uC815",filter:{composition:"\uAD6C\uC131",image:"\uC774\uBBF8\uC9C0",word:"\uB2E8\uC5B4",standardPron:"\uD45C\uC900 \uBC1C\uC74C",colloquialPron:"\uAD6C\uC5B4\uCCB4 \uBC1C\uC74C",paperOrientation:"\uC6A9\uC9C0 \uBC29\uD5A5",landscape:"\uAC00\uB85C",portrait:"\uC138\uB85C",columns:"\uCE78 \uC218",column:"{{count}}\uCE78",itemsPerPageWord:"\uD398\uC774\uC9C0\uB2F9 \uB2E8\uC5B4 \uC218",itemsPerPagePair:"\uD398\uC774\uC9C0\uB2F9 \uB300\uB9BD\uC30D \uC218",itemsPerPageOption:"{{count}}\uAC1C",pageIndicator:"{{current}} / {{total}}",pageNumber:"\uD398\uC774\uC9C0 \uBC88\uD638",pageNumberLeft:"\uC67C\uCABD",pageNumberCenter:"\uC911\uC559",pageNumberRight:"\uC624\uB978\uCABD",border:"\uC678\uACFD\uC120",cutLine:"\uC808\uCDE8\uC120",show:"\uD45C\uC2DC",hide:"\uBBF8\uD45C\uC2DC",dotted:"\uC810\uC120",corner:"\uCF54\uB108"},addWord:"\uCD94\uAC00\uD558\uAE30",wordInfo:"{{word}} \uB0B1\uB9D0 \uC815\uBCF4",emptyItems:"\uB2E8\uC5B4\uB97C 1\uAC1C \uC774\uC0C1 \uCD94\uAC00\uD574\uC8FC\uC138\uC694.",load:"\uBD88\uB7EC\uC624\uAE30",openNewWindow:"\uC0C8 \uCC3D\uC73C\uB85C \uBCF4\uAE30",saveButton:"\uC800\uC7A5\uD558\uAE30",saveAsNewButton:"\uB2E4\uB978 \uC774\uB984\uC73C\uB85C \uC800\uC7A5",print:"\uC778\uC1C4\uD558\uAE30",popupBlocked:"\uD31D\uC5C5\uC774 \uCC28\uB2E8\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uBE0C\uB77C\uC6B0\uC800 \uC124\uC815\uC5D0\uC11C \uD31D\uC5C5\uC744 \uD5C8\uC6A9\uD574 \uC8FC\uC138\uC694.",printFileNameSingle:"\uB2E8\uC5B4\uD45C",printFileNamePair:"\uB300\uB9BD\uC30D\uD45C",save:{title:"\uB2E8\uC5B4\uD45C \uC800\uC7A5\uD558\uAE30",nameLabel:"\uC774\uB984",desc:"\uC800\uC7A5\uD560 \uB2E8\uC5B4 \uD45C\uC758 \uC774\uB984\uC744 \uC785\uB825\uD558\uC138\uC694.",placeholder:"\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC81C\uBAA9\uC744 \uC785\uB825\uD558\uC138\uC694.",descriptionLabel:"\uC124\uBA85",descriptionPlaceholder:"\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC124\uBA85\uC744 \uC785\uB825\uD558\uC138\uC694.",duplicateName:"\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4.",nameRequired:"\uD45C \uC774\uB984\uC744 \uC785\uB825\uD574 \uC8FC\uC138\uC694.",autoFillHint:" (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)",copyName:"{{name}} (\uBCF5\uC0AC)"},loadTable:{title:"\uC800\uC7A5\uB41C \uB2E8\uC5B4 \uD45C \uBD88\uB7EC\uC624\uAE30",empty:"\uC800\uC7A5\uB41C \uB2E8\uC5B4 \uD45C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",loadButton:"\uBD88\uB7EC\uC624\uAE30",itemCount:"{{count}}\uAC1C",deleteAriaLabel:"{{name}} \uC0AD\uC81C",sort:{newest:"\uCD5C\uC2E0\uC21C",oldest:"\uC624\uB798\uB41C\uC21C",name:"\uC774\uB984\uC21C",count:"\uB2E8\uC5B4 \uC218"},view:{grid:"\uD45C\uB85C \uBCF4\uAE30",list:"\uB9AC\uC2A4\uD2B8\uB85C \uBCF4\uAE30"}},groupDeleteMessage:"\uADF8\uB8F9 \uB0B4 \uB2E8\uC5B4\uD45C\uB294 '\uADF8\uB8F9 \uC5C6\uC74C'\uC73C\uB85C \uC774\uB3D9\uD569\uB2C8\uB2E4.",groupNamePlaceholder:"\uADF8\uB8F9 \uC774\uB984",store:{badge:"\uB9D0\uADC0\uC790\uB8CC\uC2E4"},card:{sub:"\uB2E8\uC5B4\uD45C \uCE74\uB4DC",empty:"\uC774 \uCE74\uB4DC\uC5D0 \uB2E8\uC5B4\uD45C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4."},toast:{renameError:"\uC774\uB984 \uBCC0\uACBD\uC5D0 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4",saveError:"\uC800\uC7A5\uC5D0 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4",deleteError:"\uC0AD\uC81C\uC5D0 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4",duplicateError:"\uBCF5\uC81C\uC5D0 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4",saveSuccess:"\uB2E8\uC5B4\uD45C\uAC00 \uC800\uC7A5\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},scoring:{o:"{{word}} \uB9DE\uC74C",triangle:"{{word}} \uC560\uB9E4",x:"{{word}} \uD2C0\uB9BC",button:"\uCC44\uC810\uD558\uAE30",pickTitle:"\uB204\uAD6C\uB97C \uCC44\uC810\uD560\uAE4C\uC694?",pickSubtitle:"\u2018{{name}}\u2019 \uD45C\uB85C \uD6C8\uB828\uD55C \uACE0\uAC1D\uC744 \uACE0\uB974\uC138\uC694.",pickSearch:"\uC774\uB984 \uB610\uB294 \uC804\uD654\uBC88\uD638\uB85C \uCC3E\uAE30",pickEmpty:"\uB4F1\uB85D\uB41C \uACE0\uAC1D\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",pickNoMatch:"\uCC3E\uB294 \uACE0\uAC1D\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",pickAgain:"\uACE0\uAC1D \uB2E4\uC2DC \uACE0\uB974\uAE30",scoringFor:"{{name}} \uB2D8 \uCC44\uC810 \uC911",none:"\uCE78 \uC544\uB798 \u25CB \xB7 \u25B3 \xB7 \u2715 \uB97C \uB20C\uB7EC \uB9E4\uAE30\uC138\uC694. \uB9C8\uC6B0\uC2A4\uB85C\uB294 \uCE78\uC5D0 \uC190\uC744 \uC5B9\uC73C\uBA74 \uB098\uD0C0\uB0A9\uB2C8\uB2E4.",tally:"{{marked}}\uCE78 \uCC44\uC810 \xB7 \u25CB {{o}} \xB7 \u25B3 {{triangle}} \xB7 \u2715 {{x}} \xB7 \uC815\uB2F5\uB960 {{rate}}%",save:"\uCC44\uC810 \uC800\uC7A5",saved:"{{name}} \uB2D8\uC758 \uCC44\uC810 {{count}}\uCE78\uC744 \uC800\uC7A5\uD588\uC2B5\uB2C8\uB2E4.",reviewTitle:"\uBCF5\uC2B5\uD45C\uB97C \uB9CC\uB4E4\uAE4C\uC694?",reviewMessage:"{{name}} \uB2D8\uC774 \uD2C0\uB9AC\uAC70\uB098 \uC560\uB9E4\uD588\uB358 {{count}}\uCE78\uC73C\uB85C \uC0C8 \uD45C\uB97C \uB9CC\uB4ED\uB2C8\uB2E4. \uB9DE\uD78C \uCE78\uC740 \uBE60\uC9D1\uB2C8\uB2E4.",reviewConfirm:"\uBCF5\uC2B5\uD45C \uB9CC\uB4E4\uAE30",reviewDescription:"\u2018{{name}}\u2019 \uCC44\uC810\uC5D0\uC11C \uD2C0\uB9AC\uAC70\uB098 \uC560\uB9E4\uD588\uB358 {{count}}\uCE78\uC744 \uBAA8\uC740 \uD45C\uC785\uB2C8\uB2E4.",reviewCreated:"\u2018{{name}}\u2019\uC744(\uB97C) \uB9CC\uB4E4\uC5C8\uC2B5\uB2C8\uB2E4 \u2014 {{count}}\uCE78.",discardTitle:"\uB9E4\uAE34 \uCC44\uC810\uC744 \uBC84\uB9B4\uAE4C\uC694?",discardMessage:"{{count}}\uCE78\uC744 \uB9E4\uACBC\uC9C0\uB9CC \uC544\uC9C1 \uC800\uC7A5\uD558\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4. \uB098\uAC00\uBA74 \uC0AC\uB77C\uC9D1\uB2C8\uB2E4.",discardConfirm:"\uBC84\uB9AC\uACE0 \uB098\uAC00\uAE30"},info:{grade:"\uB09C\uC774\uB3C4: {{n}}\uB4F1\uAE09",syllables:"\uC74C\uC808 \uC218: {{n}}\uC74C\uC808",pos:"\uD488\uC0AC: {{v}}",wordType:"\uC720\uD615: {{v}}"},pos:{noun:"\uBA85\uC0AC",verb:"\uB3D9\uC0AC",adjective:"\uD615\uC6A9\uC0AC",adverb:"\uBD80\uC0AC",numeral:"\uC218\uC0AC",determiner:"\uAD00\uD615\uC0AC",interjection:"\uAC10\uD0C4\uC0AC",particle:"\uC870\uC0AC",affix:"\uC811\uC0AC",dependentNoun:"\uC758\uC874\uBA85\uC0AC",pronoun:"\uB300\uBA85\uC0AC",auxVerb:"\uBCF4\uC870\uB3D9\uC0AC",auxAdjective:"\uBCF4\uC870\uD615\uC6A9\uC0AC"},reorder:{moved:"{{total}}\uCE78 \uAC00\uC6B4\uB370 {{n}}\uBC88\uC9F8\uB85C \uC62E\uAE40",handle:"{{word}} \uC21C\uC11C \uBC14\uAFB8\uAE30 (Alt + \uD654\uC0B4\uD45C)",hint:"Alt + \u2190 \u2192 \uB85C \uC21C\uC11C \uBC14\uAFB8\uAE30"}},Lf={editBanner:{message:"\uC800\uC7A5\uD558\uBA74 \uC9C0\uAE08 \uC218\uC815 \uC911\uC778 \uB2E8\uC5B4\uD45C\uAC00 \uAC31\uC2E0\uB429\uB2C8\uB2E4."},filterTitle:"\uB2E8\uC5B4 \uAC80\uC0C9 \uC124\uC815",filter:{positionAny:"\uBB34\uAD00",positionHead:"\uC5B4\uB450",positionMid:"\uC5B4\uC911",positionTail:"\uC5B4\uB9D0",difficulty:"\uB4F1\uAE09",grade:"{{n}}\uB4F1\uAE09",syllables:"\uC74C\uC808 \uC218",syllable:"{{n}}\uC74C\uC808",syllable5plus:"5\uC74C\uC808 \uC774\uC0C1",partOfSpeech:"\uD488\uC0AC",pos:{noun:"\uCCB4\uC5B8(\uBA85\uC0AC, \uC218\uC0AC)",verb:"\uC6A9\uC5B8(\uB3D9\uC0AC, \uD615\uC6A9\uC0AC)",modifier:"\uC218\uC2DD\uC5B8(\uBD80\uC0AC, \uAD00\uD615\uC0AC)"},wordType:"\uC720\uD615",type:{native:"\uACE0\uC720\uC5B4",sino:"\uD55C\uC790\uC5B4",foreign:"\uC678\uB798\uC5B4",mixed:"\uD63C\uC885\uC5B4"},exclude:"\uC81C\uC678",excludeNoImage:"\uC774\uBBF8\uC9C0 \uC5C6\uC74C"},searchButton:"\uAC80\uC0C9\uD558\uAE30",resultUnit:"\uB2E8\uC5B4",remaining:"{{count}}\uAC1C \uB0A8\uC74C",resultDisc:"\uC6D0\uD558\uB294 {{unit}} \uC120\uD0DD\uD558\uC138\uC694. {{max}}\uAC1C\uAE4C\uC9C0 \uC120\uD0DD\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4. ({{selected}}/{{max}})",resultTitlePrefix:"\uCD1D ",resultTitleSuffix:"\uAC1C\uC758 {{unit}} \uAC80\uC0C9\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",emptyResult:"\uAC80\uC0C9 \uACB0\uACFC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",groupCount:"{{count}}\uAC1C",sort:{aria:"\uC815\uB82C",match:"\uC2DC\uC791 \uC6B0\uC120",ganada:"\uAC00\uB098\uB2E4\uC21C \u2191",ganadaDesc:"\uAC00\uB098\uB2E4\uC21C \u2193",syllable:"\uC74C\uC808 \uC218 \u2191",syllableDesc:"\uC74C\uC808 \uC218 \u2193",grade:"\uB4F1\uAE09\uC21C \u2191",gradeDesc:"\uB4F1\uAE09\uC21C \u2193",original:"\uBC1B\uC740 \uC21C\uC11C"},pageSize:"{{count}}\uAC1C\uC529 \uBCF4\uAE30",pageSizeAria:"\uD398\uC774\uC9C0 \uD06C\uAE30",popup:{title:"{{n}}\uBC88 \uCE78\uC5D0 \uB123\uC744 \uB2E8\uC5B4\uB97C \uC120\uD0DD\uD558\uC138\uC694"}},$f={clearAllSelection:"\uBAA8\uB450 \uC120\uD0DD \uD574\uC81C",divLine:"\uB300\uB9BD\uC120",removePair:"\uB300\uB9BD\uC30D \uBE7C\uAE30",removeWord:"\uB2E8\uC5B4 \uBE7C\uAE30"},Rf={title:"\uC8FC\uC81C\uBCC4 \uB4E3\uAE30",subtitle:"\uC8FC\uC81C\uB97C \uC120\uD0DD\uD558\uACE0 \uB4E3\uAE30 \uD6C8\uB828\uC744 \uC2DC\uC791\uD558\uC138\uC694.",noiseTitle:"\uC18C\uC74C \uD558 \uBB38\uC7A5\uB4E3\uAE30",shortStoryTitle:"\uC9E7\uC740 \uC774\uC57C\uAE30 \uB4E3\uAE30",FOOD:"\uC74C\uC2DD",HLTH:"\uAC74\uAC15",WETH:"\uB0A0\uC528",PRSN:"\uC778\uBB3C",KRCT:"\uD55C\uAD6D\uBB38\uD654",STRY:"\uC774\uC57C\uAE30",LOCA:"\uC9C0\uC5ED",SOAR:"\uC0AC\uD68C\uC640 \uC608\uC220",NTSC:"\uC790\uC5F0\uACFC \uACFC\uD559",SPRT:"\uC2A4\uD3EC\uCE20",sub:{TRKRFD:"\uD55C\uAD6D \uC804\uD1B5\uC74C\uC2DD",MDKRFD:"\uD55C\uAD6D \uD604\uB300\uC74C\uC2DD",WRLDFD:"\uC138\uACC4\uC758 \uC74C\uC2DD",MTRFRT:"\uC2DD\uC7AC\uB8CC\uC640 \uACFC\uC77C",GEFDKL:"\uC74C\uC2DD \uC0C1\uC2DD",HTETHB:"\uAC74\uAC15\uD55C \uC2DD\uC2B5\uAD00",DISILL:"\uBCD1\uACFC \uC9C8\uD658",EXCISE:"\uC6B4\uB3D9",GEHTKL:"\uAC74\uAC15\uC0C1\uC2DD",GESSKL:"\uACC4\uC808\uC0C1\uC2DD",SNWRAN:"\uB208\uACFC \uBE44",WTHFCT:"\uC77C\uAE30\uC608\uBCF4",GEWTKL:"\uB0A0\uC528\uC0C1\uC2DD",JODYPS:"\uC870\uC120\uC2DC\uB300",MDKRPS:"\uD55C\uAD6D \uADFC\uD604\uB300",THKDPS:"\uC0BC\uAD6D\uC2DC\uB300",WRLART:"\uC138\uACC4\uC758 \uC608\uC220\uAC00",WRLPSN:"\uC138\uACC4\uC758 \uC778\uBB3C",KRLANG:"\uC6B0\uB9AC\uB9D0",TRPLCT:"\uC804\uD1B5\uB180\uC774",HERITG:"\uBB38\uD654\uC7AC",EVTFES:"\uD589\uC0AC\uC640 \uCD95\uC81C",GECTKL:"\uC0C1\uC2DD",FRYTAL:"\uB3D9\uD654",AMZING:"\uC2E0\uAE30\uD55C \uC774\uC57C\uAE30",DAYSTR:"\uC77C\uC0C1 \uC18D \uC774\uC57C\uAE30",KRLDMK:"\uD55C\uAD6D\uC758 \uBA85\uC18C",SELNMK:"\uC11C\uC6B8\uC758 \uBA85\uC18C",WRDTRB:"\uC138\uACC4\uC5EC\uD589",NAVIGT:"\uAE38 \uCC3E\uAE30",KRSOCI:"\uD55C\uAD6D",ECONEW:"\uACBD\uC81C\uC640 \uB274\uC2A4",GENART:"\uC608\uC220",GELFKL:"\uC0DD\uD65C \uC0C1\uC2DD",ANIMAL:"\uB3D9\uBB3C",PLANTS:"\uC2DD\uBB3C",ETHPLT:"\uC9C0\uAD6C",TOLELC:"\uB3C4\uAD6C\uC640 \uC804\uC790\uC81C\uD488",GESCKL:"\uACFC\uD559\uC0C1\uC2DD",INVDSP:"\uAC1C\uC778\uACBD\uAE30",MARART:"\uACA9\uD22C\uAE30",TEAMSP:"\uB2E8\uCCB4\uACBD\uAE30",FOOTBL:"\uCD95\uAD6C",GESPKL:"\uC2A4\uD3EC\uCE20 \uC0C1\uC2DD"}},Pf={maxUses:"\uCD5C\uB300 \uC0AC\uC6A9 \uD69F\uC218 (\uBE44\uC6CC\uB450\uBA74 \uBB34\uC81C\uD55C)",redirect:"\uC774\uB3D9\uD560 \uD398\uC774\uC9C0 URL (\uBE44\uC6CC\uB450\uBA74 \uC571 \uBA54\uC778)",creating:"\uC0DD\uC131 \uC911\u2026",create:"\uB9C1\uD06C \uC0DD\uC131",created:"\u2713 \uB9C1\uD06C\uAC00 \uC0DD\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4",copied:"\uBCF5\uC0AC\uB428!",copy:"\uBCF5\uC0AC",loading:"\uBD88\uB7EC\uC624\uB294 \uC911\u2026",empty:"\uC0DD\uC131\uB41C \uB9C1\uD06C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",uses:"{{count}}\uD68C \uC0AC\uC6A9",expiresAt:"\uB9CC\uB8CC: {{date}}",createdAt:"\uC0DD\uC131: {{date}}",confirmDelete:"\uC0AD\uC81C\uD560\uAE4C\uC694?",deactivate:"\uBE44\uD65C\uC131\uD654",delete:"\uC0AD\uC81C",status:{active:"\uC720\uD6A8",expired:"\uB9CC\uB8CC",inactive:"\uBE44\uD65C\uC131"}},If={passwordPlaceholder:"\uBE44\uBC00\uBC88\uD638 \uC785\uB825"},Ff={subtitle:"\uC8FC\uC81C\uB97C \uC120\uD0DD\uD558\uC5EC \uB4E3\uAE30 \uC5F0\uC2B5\uC744 \uC9C4\uD589\uD558\uC138\uC694."},Of={direction:{left:"\uC88C",right:"\uC6B0",label:"\uBC29\uD5A5"},wornDate:"\uCC29\uC6A9\uC77C",deviceType:"\uC885\uB958",brand:"\uBE0C\uB79C\uB4DC",fitType:"\uCC29\uC6A9\uD615\uD0DC",productName:"\uC81C\uD488\uBA85",validationError:{brandAndProduct:"\uBE0C\uB79C\uB4DC\uC640 \uC81C\uD488\uBA85\uC744 \uC785\uB825\uD574 \uC8FC\uC138\uC694."},addNew:"\uC0C8 \uAE30\uAE30 \uCD94\uAC00",selectFromList:"\uBAA9\uB85D\uC5D0\uC11C \uC120\uD0DD",removeDevice:"\uCC29\uC6A9 \uD574\uC81C",type:{hearingAid:"\uBCF4\uCCAD\uAE30",cochlearImplant:"\uC778\uACF5\uC640\uC6B0"}},Hf={stat:{totalCustomers:"\uCD1D \uACE0\uAC1D",monthlyVisits:"\uC774\uB2EC \uCD1D \uBC29\uBB38"},chart:{visitDetail:"\uC0C1\uC138 \uBC29\uBB38 \uD604\uD669",trainingDetail:"\uC0C1\uC138 \uD6C8\uB828 \uD604\uD669",weekly:"\uC8FC\uBCC4",daily:"\uC77C\uBCC4",periodMonth:"\uC6D4",periodWeek:"\uC8FC",weeklyPrefix:"\uC8FC\uAC04",monthlyPrefix:"\uC6D4\uAC04",visit:"\uBC29\uBB38",reservation:"\uC608\uC57D",trainingDone:"\uD6C8\uB828 \uC644\uB8CC",trainingInProgress:"\uD6C8\uB828 \uC911",weekRange:"{{start}}~{{end}}",week:"{{n}}\uC8FC"},subscriptionStatus:{active:"{{pct}}% \uD65C\uC131",expired:"{{pct}}% \uB9CC\uB8CC",unused:"{{pct}}% \uBBF8\uC0AC\uC6A9"}},zf={editBanner:{message:"\uC800\uC7A5\uD558\uBA74 \uC9C0\uAE08 \uC218\uC815 \uC911\uC778 \uB300\uB9BD\uC30D\uD45C\uAC00 \uAC31\uC2E0\uB429\uB2C8\uB2E4."},phonemeSelect:{title:"\uC74C\uC18C \uC120\uD0DD",vs:"\uB300"},caution:"\uC720\uC758\uC0AC\uD56D",mode:{include:"\uC74C\uC18C \uD3EC\uD568",pick:"\uC74C\uC18C \uB300\uB9BD",contrast:"\uC74C\uC18C \uB300\uB9BD \uC9C0\uC815",infoTitle:"\uB300\uB9BD \uBC29\uC2DD",infoInclude:"\uC74C\uC18C \uD3EC\uD568 \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uAC00 \uBAA8\uB450 \uB4E4\uC5B4\uAC04 \uB2E8\uC5B4\uC640 \uADF8 \uB300\uB9BD\uC30D\uC744 \uCC3E\uC544\uC694.",infoPick:"\uC74C\uC18C \uB300\uB9BD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uAC00 \uB300\uB9BD\uC30D \uB450 \uB2E8\uC5B4\uC758 \uC2E4\uC81C \uCC28\uC774\uC810\uC77C \uB54C\uB9CC \uB9E4\uCE6D\uB3FC\uC694.",infoContrast:"\uC74C\uC18C \uB300\uB9BD \uC9C0\uC815 \u2014 \uAE30\uC900 \uB2E8\uC5B4\uC640 \uB300\uB9BD \uB2E8\uC5B4\uC758 \uC74C\uC18C\uB97C \uAC01\uAC01 \uC9C1\uC811 \uC120\uD0DD\uD574 \uB300\uB9BD\uC30D\uC744 \uCC3E\uC544\uC694."},count:"{{n}}\uAC1C",input:{char:"\uAE00\uC790 \uC120\uD0DD",pron:"\uBC1C\uC74C \uC120\uD0DD",infoTitle:"\uC785\uB825 \uBC29\uC2DD",infoChar:"\uAE00\uC790 \uC120\uD0DD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uB85C \uB2E8\uC5B4(\uAE00\uC790 \uAE30\uC900)\uB97C \uCC3E\uC740 \uD6C4, \uB2E8\uC5B4\uC758 \uD45C\uC900 \uBC1C\uC74C \uB300\uB9BD\uC30D\uC744 \uCC3E\uC2B5\uB2C8\uB2E4.",infoPron:"\uBC1C\uC74C \uC120\uD0DD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uB85C \uD45C\uC900 \uBC1C\uC74C \uB300\uB9BD\uC30D\uC744 \uCC3E\uC2B5\uB2C8\uB2E4."},phonemeN:"{{n}}\uBC88 \uC74C\uC808",phonemeSingleLabel:"\uC74C\uC808",phonemeContrastSingleLabel:"\uB300\uB9BD \uC74C\uC808",ordinals:["\uCCAB\uBC88\uC9F8","\uB450\uBC88\uC9F8","\uC138\uBC88\uC9F8","\uB124\uBC88\uC9F8"],phonemeOrdinalLabel:"{{ordinal}} \uC74C\uC808",phonemeContrastOrdinalLabel:"\uB300\uB9BD {{ordinal}} \uC74C\uC808",composition:"\uC815\uB2F5 \uB2E8\uC5B4 \uAD6C\uC131",syllableCount:"\uC74C\uC808 \uC218",syllableN:"{{n}}\uC74C\uC808",syllableNPlus:"{{n}}\uC74C\uC808 \uC774\uC0C1",onset:"\uCD08\uC131",vowel:"\uBAA8\uC74C",coda:"\uC885\uC131",filter:{searchOptionsTitle:"\uB300\uB9BD \uC124\uC815",searchModeLabel:"\uB300\uB9BD \uBC29\uC2DD",countLabel:"\uC785\uB825 \uC74C\uC808 \uAC2F\uC218",inputModeLabel:"\uC785\uB825 \uBC29\uC2DD",phonemeOrder:"\uC785\uB825 \uC74C\uC808 \uC704\uCE58",phonemeOrderInfo:["\uC77C\uCE58: \uB300\uB9BD\uC30D\uC774 \uC815\uD655\uD788 \uAC19\uC740 \uC704\uCE58(\uC74C\uC808)\uC5D0\uC11C\uB9CC \uCC28\uC774 \uB098\uC57C \uB9E4\uCE6D\uB3FC\uC694.","\uBB34\uAD00: \uCC28\uC774 \uB098\uB294 \uC704\uCE58\uB294 \uC0C1\uAD00\uC5C6\uC774 \uB9E4\uCE6D\uB3FC\uC694."],orderAny:"\uBB34\uAD00",orderMatch:"\uC77C\uCE58",difficultyInfo:"\uAD6D\uB9BD\uAD6D\uC5B4\uC6D0\uC758 \uAE30\uCD08 \uC5B4\uD718 \uB4F1\uAE09\uC774 \uACB0\uACFC\uC5D0 \uBC18\uC601\uB429\uB2C8\uB2E4.",selectLabel:"\uC120\uD0DD",onlyHasImage:"\uC774\uBBF8\uC9C0 \uC788\uB294 \uB2E8\uC5B4\uB9CC",onlySameStructure:"\uC74C\uC18C \uAD6C\uC870 \uAC19\uC740 \uB2E8\uC5B4\uB9CC"},searchLabel:{error:"\uB370\uC774\uD130 \uBD88\uB7EC\uC624\uAE30 \uC2E4\uD328",loading:"\uBD88\uB7EC\uC624\uB294 \uC911\u2026"},confirmMessage:"\uC120\uD0DD\uD55C {{unit}} {{count}}\uAC1C\uB97C \uD3EC\uD568\uD55C \uB2E8\uC5B4 \uD45C \uC815\uBCF4\uAC00 \uC0AC\uB77C\uC9D1\uB2C8\uB2E4.",resetOptions:"\uAC80\uC0C9 \uC635\uC158 \uCD08\uAE30\uD654",phonemeContrast:"\uB300\uB9BD {{n}}\uBC88 \uC74C\uC808",infoNotes:["\uBBF8\uB9AC\uBCF4\uAE30 \uAE00\uC790\uB294 \uC120\uD0DD\uD55C \uC74C\uC18C\uC758 \uC870\uD569 \uC608\uC2DC\uC785\uB2C8\uB2E4. \uC2E4\uC81C \uAC80\uC0C9\uC740 \uD574\uB2F9 \uC74C\uC18C\uAC00 \uD3EC\uD568\uB41C \uBAA8\uB4E0 \uB2E8\uC5B4\uB97C \uB300\uC0C1\uC73C\uB85C \uD569\uB2C8\uB2E4.","\uCD08\uC131 '\u3147'\uC740 \uC120\uD0DD\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. \uB2E8\uC5B4 \uC55E\uC5D0 \uC624\uB294 \u3147\uC740 \uC2E4\uC9C8\uC801\uC73C\uB85C \uBB34\uC74C\uC774\uC5B4\uC11C \uB300\uB9BD\uC30D \uC131\uB9BD\uC5D0 \uC601\uD5A5\uC744 \uC8FC\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.","\uCD08\uC131\uACFC \uC885\uC131\uB9CC \uC120\uD0DD\uD558\uBA74 \uBAA8\uC74C\uC740 '\u314F'\uB85C \uC790\uB3D9 \uD45C\uC2DC\uB429\uB2C8\uB2E4.","\uC74C\uC18C \uAC1C\uC218\uB97C \uB298\uB9AC\uBA74 \uAC01 \uC74C\uC18C \uC0AC\uC774\uC758 \uB300\uB9BD\uC30D\uC744 \uAC80\uC0C9\uD569\uB2C8\uB2E4."]},Vf={sentenceTyping:{roundCount:"{{rounds}}\uBB38\uC81C \xB7 \uBB38\uC81C\uB2F9 {{timeLimit}}\uCD08"},wordDefense:{me:"\uB098"},dictation:{title:"\uBC1B\uC544\uC4F0\uAE30",desc:"\uBB38\uC7A5\uC744 \uB4E3\uACE0 \uC815\uD655\uD788 \uBC1B\uC544\uC801\uB294 \uC5F0\uC2B5\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uC74C\uC131 \uC7AC\uC0DD, \uC785\uB825 \uD544\uB4DC, \uC815\uB2F5 \uBE44\uAD50"},result:{heading:"{{number}}\uB2E8\uACC4 \uD574\uB2F5",retry:"\uB2E4\uC2DC \uD480\uAE30"},common:{accuracy:"{{pct}}% \uC815\uD655\uB3C4"},soundMatch:{title:"\uC18C\uB9AC \uB9E4\uCE6D",desc:"\uAC19\uC740 \uC18C\uB9AC\uB97C \uAC00\uC9C4 \uB2E8\uC5B4 \uB610\uB294 \uBB38\uC7A5\uC744 \uBE60\uB974\uAC8C \uB9E4\uCE6D\uD558\uB294 \uAC8C\uC784\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uD50C\uB808\uC774 \uBC84\uD2BC, \uD0C0\uC774\uBA38, \uC810\uC218 \uC9D1\uACC4"},orderSequence:{title:"\uBB38\uC7A5 \uC21C\uC11C\uD654",desc:"\uD769\uC5B4\uC9C4 \uBB38\uC7A5 \uC870\uAC01\uC744 \uC62C\uBC14\uB978 \uC21C\uC11C\uB85C \uBC30\uC5F4\uD558\uB294 \uD6C8\uB828\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uBB38\uC7A5 \uC138\uD2B8, \uC21C\uC11C \uD655\uC778 \uC778\uD130\uD398\uC774\uC2A4"},speedListen:{title:"\uC18D\uB3C4 \uB4E3\uAE30",desc:"\uC2DC\uAC04 \uC81C\uD55C \uB0B4\uC5D0 \uBB38\uC7A5\uC758 \uB2E8\uC5B4 \uC218\uB97C \uB9DE\uCD94\uB294 \uB3C4\uC804\uD615 \uAC8C\uC784\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uC81C\uD55C\uC2DC\uAC04, \uC810\uC218\uD310"},noiseChallenge:{title:"\uC18C\uC74C \uCC4C\uB9B0\uC9C0",desc:"\uBC30\uACBD \uC18C\uC74C \uC18D\uC5D0\uC11C \uBB38\uC7A5\uC744 \uBD84\uBCC4\uD558\uB294 \uC5F0\uC2B5\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uB2E4\uC591\uD55C \uC18C\uC74C \uB808\uBCA8, \uC810\uC218 \uC9D1\uACC4"},fastListen:{title:"\uBE60\uB978 \uB4E3\uAE30",desc:"\uC9E7\uC740 \uBB38\uC7A5\uC744 \uBE60\uB974\uAC8C \uB4E4\uB824\uC8FC\uACE0 \uD575\uC2EC \uB2E8\uC5B4\uB97C \uC120\uD0DD\uD558\uB294 \uAC8C\uC784\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uB09C\uC774\uB3C4\uBCC4 \uC18D\uB3C4, \uD0C0\uC774\uBA38"},shadowing:{title:"\uC250\uB3C4\uC789",desc:"\uBB38\uC7A5\uC744 \uB530\uB77C \uB9D0\uD558\uBA70 \uBC1C\uC74C\uACFC \uC5B5\uC591\uC744 \uC5F0\uC2B5\uD558\uB294 \uBAA8\uB4DC\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uC7AC\uC0DD, \uB179\uC74C, \uBE44\uAD50 \uD53C\uB4DC\uBC31"},phonemeHunt:{title:"\uC74C\uC6B4 \uCC3E\uAE30",desc:"\uD2B9\uC815 \uC74C\uC6B4(\uBC1C\uC74C)\uC744 \uD3EC\uD568\uD55C \uB2E8\uC5B4\uB97C \uCC3E\uC544\uB0B4\uB294 \uAC8C\uC784\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uC74C\uC6B4 \uD544\uD130, \uD78C\uD2B8 \uAE30\uB2A5"}},Wf={lead:`\uC544\uC774\uD574\uBE0C\uB294 \uC18C\uB9AC\uB97C \uD1B5\uD574
|
|
848
848
|
\uC2E0\uB8B0\uB97C \uC313\uACE0
|
|
849
849
|
\uD68C\uBCF5\uC744 \uB3D5\uC2B5\uB2C8\uB2E4.`,site:{title:"\uC0AC\uC774\uD2B8",malgwi:"\uB9D0\uADC0",soundDirection:"\uC18C\uB9AC\uBC29\uD5A5\uC131\uC2DC\uC2A4\uD15C",vrSoundDirection:"VR\uC18C\uB9AC\uBC29\uD5A5\uC131\uC2DC\uC2A4\uD15C",hearingTest:"\uCCAD\uB825\uD14C\uC2A4\uD2B8 \uD504\uB85C"},sns:{title:"SNS",naverBlog:"\uB124\uC774\uBC84 \uBE14\uB85C\uADF8",kakao:"KAKAO Talk \uC624\uD508\uCC44\uD305"},policy:{title:"\uC815\uCC45",terms:"\uC774\uC6A9\uC57D\uAD00",privacy:"\uAC1C\uC778\uC815\uBCF4 \uCC98\uB9AC\uBC29\uCE68"},ceo:"\uB300\uD45C",address:"\uC8FC\uC18C",support:"\uACE0\uAC1D\uC13C\uD130",ceoName:"\uD55C\uC9C0\uD61C",addressValue:"\uAC15\uC6D0\uB3C4 \uCD98\uCC9C\uC2DC \uC2DC\uCCAD\uAE38 32 \uD574\uCC2C\uBE4C\uB529 3\uCE35 302\uD638"},qf={trainingPhone:{topic:"\uD143\uBC2D\uAC00\uAFB8\uAE30",prev:"\uC774\uC804",next:"\uB2E4\uC74C",speed:"\uBE60\uB974\uAE30 3",noiseType:"\uC640\uAE00\uC640\uAE00",settings:"\uC124\uC815",start:{caption:"\uC544\uB798 \uD50C\uB808\uC774(\u25B6) \uBC84\uD2BC\uC744 \uB20C\uB7EC \uBB38\uC7A5\uC744 \uC798 \uB4E4\uC5B4\uBCF4\uC138\uC694. \uC798 \uB4E4\uC73C\uC2E0 \uB4A4 \uBB38\uC7A5\uC744 \uD655\uC778\uD558\uC138\uC694."},feedback:{caption:"\uC798 \uD0A4\uC6B4 \uBAA8\uC885\uC744 \uD143\uBC2D\uC5D0 \uC2EC\uACE0 \uBE44\uB2D0\uC744 \uC798 \uB36E\uC5B4 \uC90D\uB2C8\uB2E4."},done:{heardWell:"\uC798 \uB4E4\uB9B0 \uBB38\uC7A5",listenAgain:"\uD55C \uBC88 \uB354 \uB4E3\uAE30"}}},Uf={timeHM:"{{h}}\uC2DC {{m}}\uBD84",timeH:"{{h}}\uC2DC"},Gf={options:"\uD6C8\uB828 \uC635\uC158",difficulty:"\uB09C\uC774\uB3C4",exclude:"\uC81C\uC678",chosung:"\uCD08\uC131",excludeOptions:{none:"\uC5C6\uC74C",noImage:"\uC774\uBBF8\uC9C0 \uC5C6\uC74C"}},Kf={answer:"\uC815\uB2F5",distractor:"\uC624\uB2F5"},Yf={phaseWordDownload:"\uB2E8\uC5B4 \uB370\uC774\uD130 \uB2E4\uC6B4\uB85C\uB4DC",phaseImageCheck:"\uC774\uBBF8\uC9C0 \uD655\uC778",phasePairAnalysis:"\uB2E8\uC5B4\uC30D \uBD84\uC11D",downloadingCount:"{{n}}\uAC1C \uB2E4\uC6B4\uB85C\uB4DC \uC911",checkingPage:"{{page}}\uD398\uC774\uC9C0 \uBAA9\uB85D \uD655\uC778 \uC911",imageCount:"{{done}} / {{total}}\uAC1C"},Zf={clearAriaLabel:"\uC785\uB825\uAC12 \uC9C0\uC6B0\uAE30"},Xf={ariaLabel:"\uC120\uD0DD \uD0ED"},Jf={ariaLabel:"\uD0ED"},Qf={dragPrompt:"\uD30C\uC77C\uC744 \uC774\uACF3\uC5D0 \uB4DC\uB798\uADF8\uD558\uC5EC \uC5C5\uB85C\uB4DC",browseButton:"\uD30C\uC77C \uC120\uD0DD",removeAriaLabel:"{{name}} \uC81C\uAC70"},eC={ariaLabel:"\uC0AC\uC6A9\uC790 \uC544\uBC14\uD0C0"},tC={relativeDay:{today:"\uC624\uB298",yesterday:"\uC5B4\uC81C",daysAgo:"{{n}}\uC77C \uC804"},reason:{notLoggedIn:"\uB85C\uADF8\uC778\uC774 \uD544\uC694\uD569\uB2C8\uB2E4."},list:{title:"\uBC1B\uC740 \uC219\uC81C"},status:{expired:"\uB9CC\uB8CC\uB428",done:"\uC644\uB8CC {{count}}\uD68C \xB7 {{date}}",notDone:"\uBBF8\uC644\uB8CC"}},nC={weekly:{title:"\uC8FC\uAC04 \uD6C8\uB828 \uD604\uD669",daily:"\uC624\uB298\uC758 \uB4E3\uAE30",crossword:"\uAC00\uB85C\uC138\uB85C"},homework:{title:"\uC219\uC81C \uC9C4\uD589\uD604\uD669",totalRate:"\uC804\uCCB4 \uC644\uB8CC\uC728",count:"\uC804\uCCB4",done:"\uC644\uB8CC",remaining:"\uBBF8\uC644\uB8CC"},today:{tooltipTotal:"\uC804\uCCB4",tooltipDone:"\uC644\uB8CC"},filter:{countSuffix:" \uD6C8\uB828"},time:{countLabel:"{{n}}\uD68C \uD6C8\uB828",empty:"\uD6C8\uB828 \uAE30\uB85D\uC774 \uC5C6\uC2B5\uB2C8\uB2E4."},daily:{title:"\uC624\uB298\uC758 \uB4E3\uAE30 \uAE30\uB85D",empty:"\uC644\uB8CC\uD55C \uD68C\uCC28\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4."},crossword:{title:"\uAC00\uB85C\uC138\uB85C\uD034\uC988",empty:"\uC644\uB8CC\uD55C \uB808\uBCA8\uC774 \uC5C6\uC2B5\uB2C8\uB2E4"},visit:{title:"\uBC29\uBB38 \uC5F0\uB3D9 \uAE30\uB85D"},detail:"\uC0C1\uC138\uBCF4\uAE30",trainingType:{LISTEN_IN_NOISE:"\uC18C\uC74C \uD558 \uBB38\uC7A5",SHORT_STORY:"\uC9E7\uC740 \uC774\uC57C\uAE30",LONG_STORY:"\uAE34 \uC774\uC57C\uAE30",ORDERING_SENTENCE:"\uBB38\uC7A5 \uC21C\uC11C\uD654"}},aC={publish:{descPlaceholder:"\uB9D0\uADC0\uC790\uB8CC\uC2E4\uC5D0 \uD45C\uC2DC\uD560 \uD55C \uC904 \uC124\uBA85 (\uC120\uD0DD)"},import:"\uB0B4 \uD6C8\uB828\uC5D0 \uAC00\uC838\uC624\uAE30",publisher:"\uAC8C\uC2DC\uC790",time:{justNow:"\uBC29\uAE08 \uC804",minutesAgo:"{{n}}\uBD84 \uC804",hoursAgo:"{{n}}\uC2DC\uAC04 \uC804",daysAgo:"{{n}}\uC77C \uC804",weeksAgo:"{{n}}\uC8FC \uC804",monthsAgo:"{{n}}\uAC1C\uC6D4 \uC804",yearsAgo:"{{n}}\uB144 \uC804"},badge:{shared:"\uB9D0\uADC0\uC790\uB8CC\uC2E4"}},rC={manage:{unit:"\uAC74"}},oC={cancelLabel:"\uCDE8\uC18C"},sC={steps:"\uC9C4\uD589 \uB2E8\uACC4 {{current}} / {{total}}"},iC={panelTitle:"\uD6C8\uB828 \uC624\uB2F5",viewItems:"\uBB38\uD56D",viewTypes:"\uC720\uD615",colPending:"\uB0A8\uC740 \uAC83",colTrend:"\uBCC0\uD654",colRuns:"\uD310",unitItem:"\uAC1C",skippedOnly:"\uC61B \uAE30\uB85D {{n}}\uAC74\uC740 \uBB34\uC5C7\uC744 \uD47C \uAC83\uC778\uC9C0 \uC548 \uB0A8\uC544 \uC788\uC5B4 \uC148\uC5D0\uC11C \uBE90\uC2B5\uB2C8\uB2E4.",summaryLabel:"\uC313\uC778 \uAE30\uB85D",summaryValue:"{{items}}\uBB38\uD56D \xB7 \uC544\uC9C1 \uBABB \uC7A1\uC740 \uAC83 {{pending}}\uAC1C",nextLabel:"\uB2E4\uC74C\uC5D0 \uBCFC \uAC83",nextCount:"{{count}}\uAC1C",nextCountCapped:"{{total}}\uAC1C \uC911 {{shown}}\uAC1C",picked:"\u2192 {{what}}",typeClear:"\uB2E4 \uC7A1\uC558\uC5B4\uC694",typePending:"{{total}}\uAC1C \uC911 {{pending}}\uAC1C \uB0A8\uC74C",flat:"\uBCC0\uD654 \uC5C6\uC74C",runs:"{{count}}\uD310",avgDuration:"\uD3C9\uADE0 {{sec}}\uCD08"},lC={resetColumns:"\uCE78 \uB108\uBE44 \uCD08\uAE30\uD654"},cC={panelTitle:"\uB2E8\uC5B4\uD45C \uCC44\uC810",viewWords:"\uB0B1\uB9D0",viewTables:"\uD45C",colLatest:"\uB9C8\uC9C0\uB9C9",colTrend:"\uBCC0\uD654",unitTime:"\uD68C",summaryLabel:"\uC313\uC778 \uCC44\uC810",summaryValue:"{{times}}\uD68C \xB7 \uB0B1\uB9D0 {{words}}\uAC1C",nextLabel:"\uB2E4\uC74C\uC5D0 \uBCFC \uAC83",nextCount:"{{count}}\uAC1C",allClear:"\uC9C0\uB09C\uBC88\uC5D0 \uBAA8\uB450 \uB9DE\uD614\uC2B5\uB2C8\uB2E4.",times:"{{count}}\uD68C",flat:"\uBCC0\uD654 \uC5C6\uC74C",recentLabel:"\uCD5C\uADFC \uCC44\uC810",nextCountCapped:"{{total}}\uAC1C \uC911 {{shown}}\uAC1C"},uC={ariaLabel:"\uBC30\uB108",dotAriaLabel:"{{count}}\uAC1C \uC911 {{index}}\uBC88\uC9F8 \uBC30\uB108"},dC={selectYearMonth:"\uC5F0\uC6D4 \uC120\uD0DD",chooseDate:"\uB0A0\uC9DC \uC120\uD0DD"},pC={previewRegion:"\uBCF4\uACE0\uC11C \uBBF8\uB9AC\uBCF4\uAE30 \u2014 \uC88C\uC6B0\uB85C \uAD74\uB824 \uBCFC \uC218 \uC788\uC2B5\uB2C8\uB2E4"},mC={description:"\uC124\uBA85",textbox:"\uBCF8\uBB38",training:"\uD6C8\uB828 \uC548\uB0B4",menu:"\uBA54\uB274"},hC={devNone:"\uBC1C\uB2EC \uC790\uB8CC \uC5C6\uC74C",place:{labial:"\uC591\uC21C\uC74C",alveolar:"\uCE58\uC870\uC74C",palatal:"\uACBD\uAD6C\uAC1C\uC74C",velar:"\uC5F0\uAD6C\uAC1C\uC74C",glottal:"\uC131\uBB38\uC74C"}},fC={clearSelection:"\uC120\uD0DD \uD574\uC81C"},CC={showResult:"{{type}} \uACB0\uACFC\uBCF4\uAE30"},gC={selected:"\uC120\uD0DD\uB428",remove:"\uC81C\uAC70",exclude:"\uC81C\uC678",nthSelected:"{{n}}\uBC88\uC9F8 \uC120\uD0DD"},bC={loading:"\uBD88\uB7EC\uC624\uB294 \uC911\u2026"},yC={state:{active:"\uC18C\uB9AC \uB098\uB294 \uC911",played:"\uB4E4\uC74C",correct:"\uC815\uB2F5",wrong:"\uC624\uB2F5"}},vC={ariaLabel:"\uC774\uB3D9 \uACBD\uB85C"},xC={empty:"\uB4F1\uB85D\uB41C \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4."},_C={main:"\uBA54\uC778 \uADF8\uB77C\uB514\uC5B8\uD2B8",soft:"\uC18C\uD504\uD2B8",sub:"\uC11C\uBE0C \uCEEC\uB7EC",deep:"\uB525 \uADF8\uB77C\uB514\uC5B8\uD2B8",softSub:"\uC18C\uD504\uD2B8 \uC11C\uBE0C",warm:"\uC6DC(\uAC15\uC870)",dark:"\uB2E4\uD06C",radial:"\uBC29\uC0AC\uD615 \uADF8\uB77C\uB514\uC5B8\uD2B8",diagonal:"\uB300\uAC01\uC120 \uD328\uD134",dots:"\uB3C4\uD2B8 \uD328\uD134",outline:"\uC544\uC6C3\uB77C\uC778",success:"\uC131\uACF5/\uC644\uB8CC",naver:"\uB124\uC774\uBC84 \uBE14\uB85C\uADF8 \uC548\uB0B4",instagram:"\uC778\uC2A4\uD0C0\uADF8\uB7A8 \uC548\uB0B4"},wC={common:lf,calendar:cf,passCard:uf,searchField:df,rating:pf,colorPicker:mf,dropdown:hf,accordion:ff,header:Cf,nav:gf,settings:bf,usage:yf,account:vf,help:xf,training:_f,trainingSettings:wf,customers:kf,payment:Af,coupons:Bf,visits:Nf,company:Ef,trainingType:Df,myWordTraining:Sf,myWordTable:jf,keyWords:Tf,wordTable:Mf,wordSearch:Lf,wordPrint:$f,topic:Rf,accessLinkManager:Pf,login:If,trainingPlanRun:Ff,device:Of,manager:Hf,wordPairs:zf,game:Vf,footer:Wf,landing:qf,date:Uf,trainingSetPage:Gf,wordTrainingPreview:Kf,wordData:Yf,textField:Zf,segmentedControl:Xf,tabs:Jf,fileUpload:Qf,avatar:eC,myHomework:tC,trainingStatus:nC,store:aC,homework:rC,inquiry:oC,progress:sC,trainingMiss:iC,table:lC,wordScore:cC,topBanner:uC,datePicker:dC,report:pC,tooltip:mC,phonemeProfile:hC,bulkBar:fC,debug:CC,badge:gC,loader:bC,soundCompass:yC,breadcrumb:vC,board:xC,promoBannerBg:_C},kC={statusFilter:"Filter by status",pageSizeSelect:"Items per page",selectedCount_one:"{{count}} selected",selectedCount_other:"{{count}} selected",moreFor:"More options for {{name}}",cancel:"Cancel",info:"Info",errorState:{message:"Couldn't load this.",retry:"Try again"},save:"Save",confirm:"Confirm",discardConfirm:{title:"Discard your changes?",body:"If you do not save, everything you have entered will be lost.",confirm:"Discard"},close:"Close",back:"Back",emptyTrainingName:"Training name is empty.",remove:"Remove",image:"Image",delete:"Delete",reset:"Reset",update:"Update",download:"Download",search:"Search",empty:"No data.",yes:"Yes",no:"No",all:"All",none:"None",days_one:"{{count}} day",days_other:"{{count}} days",loadMore:"Load More",retry:"Try Again",prevPage:"Previous page",nextPage:"Next page",play:"Play",pause:"Pause",playPause:"Play / Pause",replay:"Replay",subscription:"Subscription",done:"Done",failed:"Failed",continue:"Continue",notification:"Notice",emptyList:"No items",menu:"Menu",resetSelection:"Reset Selection",pageSizeLabel:"Show {{n}}",totalCountPrefix:"Total: ",totalCountSuffix:"",expand:"Expand",collapse:"Collapse",popup:"Popup",more:"More",codeBlock:"Code block",totalPrefix:"",copyCode:"Copy code",copied:"Copied",col:{problem:"Question"},phonetics:{place:{labial:"Bilabial",alveolar:"Alveolar",palatal:"Palatal",velar:"Velar",glottal:"Glottal"},vowel:{frontHigh:"Front high vowel",backHighUnrounded:"Back high unrounded vowel",backHighRounded:"Back high rounded vowel",frontMid:"Front mid vowel",backMidUnrounded:"Back mid unrounded vowel",backMidRounded:"Back mid rounded vowel",low:"Low vowel"},glide:{j:"j-glide",w:"w-glide",velar:"\u0270-glide"}},unknownError:"Unknown error",networkError:"The network connection is unstable. Check your connection and try again."},AC={rangeSelect:"Select period",dow:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],yearMonth:"{{month}}/{{year}}",prevMonth:"Previous month",addOnDate:"Add a visit on {{date}}",nextMonth:"Next month",prevWeek:"Previous week",nextWeek:"Next week",legend:{visited:"Visited",scheduled:"Scheduled",noVisit:"No Show"},periodSelect:"Period unit",visitCount:"{{count}} visit(s)"},BC={planSuffix:"Plan",labeledPlan:"{{label}} Plan",couponCode:"Pass Code",specialLabel:"Open Special",unitDay:"d",unitYear:"yr",remainingDay:"{{n}}d left",remainingHour:"{{n}}h left",remainingMinute:"{{n}}m left",remainingSecond:"{{n}}s left",menu:{use:"Activate",refund:"Refund",delete:"Delete"}},NC={clearAriaLabel:"Clear search"},EC={starLabel:"Select star {{n}}",valueLabel:"{{value}} out of {{max}}",groupLabel:"Rating"},DC={selected:"selected"},SC={placeholder:"Select"},jC={collapse:"Collapse",expand:"Expand"},TC={biArea:"BI area",biSymbol:"BI symbol",logoMalgwi:"Malgwi logo",logoManager:"Malgwi Manager logo",menuOpen:"Open menu",utilMenu:"Utility menu",menuClose:"Close menu"},MC={mainMenu:"Main menu",bottomNav:"Bottom navigation",goToManager:"Go to Malgwi Manager",goToMalgwi:"Go to Malgwi",modeLabelManager:"Malgwi Manager",modeLabelMalgwi:"Malgwi",training:"Training",settings:"Settings",notifications:"Notifications",account:"Account",help:"Help",feedback:"Report a bug",debug:"Debug",coupons:"Coupons",topic:"By Topic",trainingType:"By Training Type",wordPairs:"Word Pairs",wordSearch:"Word Search",wordTable:"Word Table Creator",company:"Company Info",more:"More",moreMenu:"More menu",badgeLabel:"{{label}}, {{count}}"},LC={language:{training:{label:"Training Language",sub:"Language used for training words and speech"}},notifications:{title:"Notifications"},display:{fontSize:{small:"Small",large:"Large"}},cache:{title:"Cache Management",confirmMessage:"Delete cache ({{size}}). Do you want to continue?",delete:"Delete",deleting:"Deleting",cleared:"Cache cleared successfully.",group:{wordData:{label:"Word Data",sub:"Word list and version info"},pairIndex:{label:"Pair Index",sub:"Onset\xB7vowel\xB7coda minimal pair analysis cache"},imageCache:{label:"Image Cache",sub:"Word image existence check results"},trainingRecord:{label:"Training Record",sub:"Daily training progress and streak"}}},button:{save:"Save Settings"},popup:{clear:{confirm:"Reset"},update:{confirm:"Update"},cache:{title:"Delete {{label}}",message:"Delete {{label}} ({{size}}). Do you want to continue?"}},saved:"\u2713 Saved",account:{title:"Account",delete:{sub:"You can restore your account within 30 days of withdrawal."}}},$C={addButton:"Add Subscription",couponButton:"Enter Coupon",active:{infoTitle:"Subscription Info",refund:"Request Refund",startDate:"Start Date",endDate:"End Date",remaining:"Remaining"},pending:{title:"Pending",empty:"No pending subscriptions."},loading:"Loading\u2026",segment:{personal:"Malgwi",org:"Malgwi Manager"},org:{title:"Current Plan",disc:"Subscription plan in use by your organization.",empty:"No organization plan registered.",fallbackTitle:"Organization Plan",startDate:"Start Date",endDate:"End Date",remaining:"Remaining",duration:"Duration"}},RC={profile:{planSuffix:"",plan:"Plan"},basicInfo:{name:{placeholder:"John Doe"}},security:{title:"Security",password:{label:"Password",currentRequired:"Enter your current password.",newRequired:"Enter a new password.",mismatch:"The new passwords do not match.",changed:"Your password has been changed."},twoFactor:{label:"Two-Factor Authentication",sub:"Strengthen your account security"}}},PC={guide:{faq:{title:"FAQ",desc:"View all frequently asked questions"}}},IC={settings:"Settings",start:{title:"Start Word Training",description:"Select a training type below to begin"},difficulty:{tooltip:"The easiest difficulty is 'Random', the hardest is 'Initial Consonant Difference'."},contrast:{label:"Contrast",type:"Contrast Type",count:"Contrast Count",n:"{{n}}"},filter:{random:"Random",trainOnset:"Onset",trainVowel:"Vowel",trainCoda:"Coda",phonemeGroup:"Training phonemes",noLimit:"Any",codaExclude:"Exclude",gradeLabel:"Grade",excludeImageInfo:"Only words with images: keeps only results with a registered word image.",sameStructureInfo:"Only same phoneme structure: keeps only pairs where the correct and wrong answers share the same syllable structure (length, batchim, etc.).",selectSection:"Select",excludeImage:"Only words with images",sameStructure:"Only same phoneme structure"},noQuestions:"No questions available.",countQuestions:"{{n}} questions",countSentences:"{{n}} sentences",comingSoon:"Coming Soon",nextQuestion:"Next",noiseRatioTitle:"Noise Ratio",noiseRatioValue:"{{ratio}}\xD7",noiseTypeTitle:"Noise Type",playVolumeTitle:"Volume",playSpeedTitle:"Speed",meter:{sentence:"Playback",noise:"Noise",toggle:"Show Audio Meter"},viewResult:"View Results",problemNotice:"Problem {{n}}.",trainingSettingsTitle:"Training Settings",sentencePreview:"Sentence Preview",notHeard:"Didn't hear it.",heardWell:"Heard it well.",confirmTitle:"Check the sentence and select whether you heard it.",noSoundWaveform:"Waveform is not shown for sound-comparison questions.",noise:{level:{none:"None",weak:"Weak",medium:"Medium",strong:"Strong",veryStrong:"Very Strong"},type:{none:"None",default:"Default",street:"Street",buzz:"Buzzing",restaurant:"Restaurant"}},listenTitle:"Please listen to the sentence.",listenButton:"Listen",playSound:"Play Sound",playAll:"Play All",selectInOrder:"Select the cards in the order you heard.",stop:"Stop",preview:"Preview",next:"Next",completed:"Completed",selected:"Selected",nthSelected:"Selection {{n}}",fontSizeMin:"Font size is at the minimum.",fontSizeMax:"Font size is at the maximum.",fontSizeDecrease:"Decrease font size",fontSizeIncrease:"Increase font size",toggleBackground:"Toggle background",cardInstructions:"Look at the word card, listen to the sound, and check it.",noCards:"No cards.",audioFetchError:"Failed to load the sound source.",ttsUnavailable:"Speech playback isn't available on this device.",selectConfirm:"Look at the question and select the answer.",orderListDefault:"Arrange the sentences in the order you heard.",result:{pendingDone:"Results are still being calculated, so you can't finish yet.",eyebrow:"Training Complete",title:"You've finished all the training!",scoreAria:"{{correct}} / {{total}} questions",elapsed:"Time Elapsed",summary:"You heard {{correct}} item(s) correctly.",tableAriaLabel:"Per-question judgement",colJudge:"Judgement",colAnswerSelected:"Answer \xB7 Selected",colAnswer:"Answer",colSelected:"Selected",heardWell:"Heard well",notHeard:"Didn't hear",notJudged:"Not judged",replay:"Replay",done:"Done",viewResult:"View Results",noContent:"(No content)"},up:"Move up",down:"Move down",prev:"Previous",listenLabel:"Listen",sourcePlay:"Play source {{n}}",listen:"Listen",audioStatus:{idle:"Idle",resolving:"Resolving\u2026",checking_exists:"Checking file\u2026",getting_signed_url:"Getting URL\u2026",downloading:"Downloading\u2026",measuring_duration:"Measuring length\u2026",ready:"Ready",error:"Error"}},FC={totalCount:" training bundles",sort:{customers:"Customers"},copyLink:"Copy Link",removeLink:"Remove Link",linkRemoved:"Link removed.",linkSaveFirst:"Please save the training bundle first.",linkSaveFirstHint:"You can only create a shared link from a saved training bundle.",linkCopySelect:"Copy blocked \u2014 link selected. Press Ctrl/\u2318+C to copy.",nameRequired:"Please enter a training bundle name.",itemRequired:"Please add at least one training item.",randomAdd:"Random Add",menu:{publish:"Post to Store",duplicate:"Duplicate Training Bundle",edit:"Edit Training Bundle",move:"Move Group",rename:"Rename"},itemCount:"Number of Items",renameGroup:"Rename Group"},OC={totalCount:" customers",loadError:"Failed to load list",basicInfo:{editTooltip:"Edit"},member:{placeholder:"Email or phone",link:"Link",linking:"Linking\u2026"},device:{title:"Hearing Devices",addTooltip:"Add New",addButton:"Add device",listTooltip:"View List",listTitle:" Device List",historyEmpty:"No device history registered",wearing:" in use",notRegistered:"Not registered",unit:"",wearingNow:"In use",wear:"Wear",unwear:"Remove",wornSince:"Since {{date}}",release:"Release",historyTitle:"Hearing device history"},schedule:{title:"Upcoming Visits",addTooltip:"Add Schedule",listTooltip:"View All",empty:"No upcoming visits",registerTitle:" Register Schedule",memoPlaceholder:"Enter a memo for this visit."},visitHistory:{title:"Visit History",addTooltip:"Add Visit",empty:"No visit history yet",popupTitle:" Visit History",registerTitle:" Register Visit"},moreItems:"more",viewAll:"View All",visits:{title:"Visits"},trainingRecord:{title:"Customer Training Records"},status:{trainingSubtitle:"Training Status"},detail:{session:{completedFmt:"Done {{done}}/{{total}} \xB7 {{duration}}"},visitSuffix:" visits"},homework:{active:"Active",copied:"Link copied.",copy:"Copy Link",inactive:"Inactive",title:"Homework Progress"},duration:{minSec:"{{m}}m {{s}}s",min:"{{m}}m",sec:"{{s}}s"}},HC={plan:{recommendedFor:"Recommended for",features:"Key Features",freePrice:"Free",contact:"Contact Us",tierFallback:"Plan",openPromo:"Launch offer"},products:{mgrEnterprise:{tier:{price:"Contact us"}}}},zC={title:"Coupons",subtitle:"Enter a coupon code or view your coupons",input:{label:"Coupon code",placeholder:"Enter coupon code"},applyButton:"Apply",error:{invalid:"Invalid coupon code.",alreadyUsed:"This coupon has already been used."},success:{applied:'"{{name}}" coupon applied.'},section:{owned:"My Coupons"},status:{used:"Used",available:"Available"}},VC={unitVisit:"",periodAll:"All",showN:"Show {{n}}"},WC={subtitle:"Manage company and business information",editButton:"Edit Info",basicInfo:{title:"Basic Info"},contactInfo:{title:"Contact Info"}},qC={title:"Training by Type",subtitle:"Select the training type you want",listenInNoise:{title:"Sentence Listening in Noise",desc:"Train sentence comprehension in various noise environments."},shortStory:{title:"Short Story Listening",desc:"Listen to short stories and understand the content."},longStory:{title:"Long Story Listening",desc:"Focus on listening to long stories and grasp the content."},orderingSentence:{title:"Sentence Ordering",desc:"Arrange heard sentences in the correct order."},SAME_SOUND_PICK:{label:"Listen & Pick Same Sound",sub:"Pick the word card that matches what you heard."},SAME_OR_DIFF:{label:"Same or Different?",sub:"Decide whether the two sounds are the same or different."},HEAR_AND_PICK_SAME:{label:"Hear & Match Word",sub:"Pick the word card that matches the sound you heard."},HEAR_AND_PICK_INCLUDED:{label:"Find Word Containing Sound",sub:"Pick the word card that contains the syllable you heard."},STARTS_WITH_SAME_SOUND:{label:"Find Word Starting with Same Sound",sub:"Pick a word that starts with the same sound as what you heard."},LISTEN_AND_REMEMBER_ORDER:{label:"Listen & Recall Order",sub:"Select the cards in the order you heard the three words."},MERGE_2_SYLLABLES:{label:"Combine 2 Syllables",sub:"What word do two syllables make?"},MERGE_3_SYLLABLES:{label:"Combine 3 Syllables",sub:"What word do three syllables make?"},MERGE_2_PHONEMES:{label:"Combine 2 Phonemes",sub:"What sound do two phonemes make?"},MERGE_3_PHONEMES:{label:"Combine 3 Phonemes",sub:"What sound do three phonemes make?"},DROP_1_FROM_2SYLL:{label:"Drop 1 Syllable from 2-Syllable",sub:"What sound remains when you remove a syllable from a 2-syllable word?"},DROP_1_FROM_3SYLL:{label:"Drop 1 Syllable from 3-Syllable",sub:"What sound remains when you remove a syllable from a 3-syllable word?"},DROP_PART_FROM_COMPOUND:{label:"Drop Part of Compound Word",sub:"What word remains when you remove part of a compound word?"},DROP_FINAL_CONSONANT_FROM_1SYLL:{label:"Drop Final Consonant",sub:"What sound remains when you remove the final consonant?"},REMOVE_CONSONANT_AND_IDENTIFY_PHONEME:{label:"Drop Consonant",sub:"What sound remains when you remove the consonant?"},CHANGE_1_SYLL_IN_2SYLL:{label:"Change 1 Syllable (2-Syllable)",sub:"Change one syllable in a 2-syllable word to make a new word."},CHANGE_1_SYLL_IN_3SYLL:{label:"Change 1 Syllable (3-Syllable)",sub:"Change one syllable in a 3-syllable word to make a new word."},CHANGE_1_PHONEME_IN_1SYLL:{label:"Change 1 Phoneme (1-Syllable)",sub:"Change one phoneme in a 1-syllable word to make a new sound."},CHANGE_1_PHONEME_IN_2SYLL:{label:"Change 1 Phoneme (2-Syllable)",sub:"Change one phoneme in a 2-syllable word to make a new word."}},UC={comingSoon:"Word training is coming soon."},GC={colName:"Table Name",open:"Open",countSuffix:" tables",addCard:"Add Word Table Card",cardsEmpty:"No word table cards created yet.",menu:{publishStore:"Post to Training Store",unpublishStore:"Remove from Training Store"},newBadge:"Newly created",tab:{cards:"Word Table Cards",tables:"Word Tables"},publishedBadge:"Published",sharedBadge:"Shared"},KC={title:"Key Words",empty:"No key words available."},YC={defaultName:"Word Table",title:"Word Table Builder",subtitle:"Set columns and add words to build a table.",filterTitle:"Table Settings",filter:{composition:"Composition",image:"Image",word:"Word",standardPron:"Standard Pronunciation",colloquialPron:"Colloquial Pronunciation",paperOrientation:"Paper Orientation",landscape:"Landscape",portrait:"Portrait",columns:"Columns",column:"{{count}} col",itemsPerPageWord:"Words per page",itemsPerPagePair:"Pairs per page",itemsPerPageOption:"{{count}}",pageIndicator:"{{current}} / {{total}}",pageNumber:"Page Number",pageNumberLeft:"Left",pageNumberCenter:"Center",pageNumberRight:"Right",border:"Border",cutLine:"Cut Line",show:"Show",hide:"Hide",dotted:"Dotted",corner:"Corner"},addWord:"Add",wordInfo:"Info for {{word}}",emptyItems:"Please add at least one word.",load:"Load",openNewWindow:"Open in New Window",saveButton:"Save",saveAsNewButton:"Save as New",print:"Print",popupBlocked:"Popup was blocked. Please allow popups in your browser settings.",printFileNameSingle:"Word Table",printFileNamePair:"Contrast Pair Table",save:{title:"Save Word Table",nameLabel:"Name",desc:"Enter a name for the word table.",placeholder:"Enter a title for this word table.",descriptionLabel:"Description",descriptionPlaceholder:"Enter a description for this word table.",duplicateName:"This name is already in use.",nameRequired:"Please enter a table name.",autoFillHint:" (Press Tab or Space to autofill)",copyName:"{{name}} (copy)"},loadTable:{title:"Load Saved Word Table",empty:"No saved word tables.",loadButton:"Load",itemCount:"{{count}} words",deleteAriaLabel:"Delete {{name}}",sort:{newest:"Newest",oldest:"Oldest",name:"Name",count:"Word Count"},view:{grid:"Grid View",list:"List View"}},groupDeleteMessage:"Word tables in this group will be moved to 'No Group'.",groupNamePlaceholder:"Group name",store:{badge:"Training Store"},card:{sub:"Word Table Card",empty:"No word tables in this card."},toast:{renameError:"Failed to rename",saveError:"Failed to save",deleteError:"Failed to delete",duplicateError:"Failed to duplicate",saveSuccess:"Word table saved."},scoring:{o:"{{word}} correct",triangle:"{{word}} partial",x:"{{word}} incorrect",button:"Score",pickTitle:"Who are you scoring?",pickSubtitle:"Choose the customer who trained with \u201C{{name}}\u201D.",pickSearch:"Search by name or phone",pickEmpty:"No customers registered.",pickNoMatch:"No matching customer.",pickAgain:"Choose another",scoringFor:"Scoring {{name}}",none:"Tap \u25CB \xB7 \u25B3 \xB7 \u2715 under a cell to mark it. With a mouse, hover the cell to reveal them.",tally:"{{marked}} scored \xB7 \u25CB {{o}} \xB7 \u25B3 {{triangle}} \xB7 \u2715 {{x}} \xB7 {{rate}}%",save:"Save score",saved:"Saved {{count}} marks for {{name}}.",reviewTitle:"Create a review table?",reviewMessage:"Builds a new table from the {{count}} cells {{name}} got wrong or partial. Correct ones are left out.",reviewConfirm:"Create review table",reviewDescription:"Cells marked wrong or partial in \u201C{{name}}\u201D \u2014 {{count}} of them.",reviewCreated:"Created \u201C{{name}}\u201D \u2014 {{count}} cells.",discardTitle:"Discard this scoring?",discardMessage:"You marked {{count}} cells but have not saved. Leaving discards them.",discardConfirm:"Discard and leave"},info:{grade:"Grade: {{n}}",syllables:"Syllables: {{n}}",pos:"Part of speech: {{v}}",wordType:"Type: {{v}}"},pos:{noun:"Noun",verb:"Verb",adjective:"Adjective",adverb:"Adverb",numeral:"Numeral",determiner:"Determiner",interjection:"Interjection",particle:"Particle",affix:"Affix",dependentNoun:"Dependent noun",pronoun:"Pronoun",auxVerb:"Auxiliary verb",auxAdjective:"Auxiliary adjective"},reorder:{moved:"Moved to position {{n}} of {{total}}",handle:"Reorder {{word}} (Alt + arrow keys)",hint:"Alt + \u2190 \u2192 to reorder"}},ZC={editBanner:{message:"Saving will update the word table you're editing."},filterTitle:"Word Search Settings",filter:{positionAny:"Any",positionHead:"Start",positionMid:"Middle",positionTail:"End",difficulty:"Grade",grade:"Grade {{n}}",syllables:"Syllables",syllable:"{{n}} Syll.",syllable5plus:"5+ Syllables",partOfSpeech:"Part of Speech",pos:{noun:"Noun/Numeral",verb:"Verb/Adjective",modifier:"Adverb/Determiner"},wordType:"Word Type",type:{native:"Native Korean",sino:"Sino-Korean",foreign:"Loanword",mixed:"Hybrid"},exclude:"Exclude",excludeNoImage:"No Image"},searchButton:"Search",resultUnit:"words",remaining:"{{count}} remaining",resultDisc:"Select {{unit}}. Up to {{max}} items. ({{selected}}/{{max}})",resultTitlePrefix:"",resultTitleSuffix:" {{unit}} found.",emptyResult:"No results found.",groupCount:"{{count}}",sort:{aria:"Sort",match:"Best Match",ganada:"A\u2013Z \u2191",ganadaDesc:"A\u2013Z \u2193",syllable:"Syllables \u2191",syllableDesc:"Syllables \u2193",grade:"Grade \u2191",gradeDesc:"Grade \u2193",original:"Original order"},pageSize:"Show {{count}}",pageSizeAria:"Page size",popup:{title:"Select a word for cell {{n}}"}},XC={clearAllSelection:"Clear All Selections",divLine:"Contrast Line",removePair:"Remove pair",removeWord:"Remove word"},JC={title:"By Topic",subtitle:"Select a topic to start listening training",noiseTitle:"Sentence Listening in Noise",shortStoryTitle:"Short Story Listening",FOOD:"Food",HLTH:"Health",WETH:"Weather",PRSN:"People",KRCT:"Korean Culture",STRY:"Stories",LOCA:"Locations",SOAR:"Society & Arts",NTSC:"Nature & Science",SPRT:"Sports",sub:{TRKRFD:"Traditional Korean Food",MDKRFD:"Modern Korean Food",WRLDFD:"World Cuisine",MTRFRT:"Ingredients & Fruits",GEFDKL:"Food Facts",HTETHB:"Healthy Eating",DISILL:"Diseases",EXCISE:"Exercise",GEHTKL:"Health Facts",GESSKL:"Seasons",SNWRAN:"Snow & Rain",WTHFCT:"Weather Forecast",GEWTKL:"Weather Facts",JODYPS:"Joseon Dynasty",MDKRPS:"Modern Korea",THKDPS:"Three Kingdoms",WRLART:"World Artists",WRLPSN:"World Figures",KRLANG:"Korean Language",TRPLCT:"Traditional Games",HERITG:"Heritage",EVTFES:"Events & Festivals",GECTKL:"General Knowledge",FRYTAL:"Fairy Tales",AMZING:"Amazing Stories",DAYSTR:"Everyday Stories",KRLDMK:"Korean Landmarks",SELNMK:"Seoul Landmarks",WRDTRB:"World Travel",NAVIGT:"Navigation",KRSOCI:"Korea",ECONEW:"Economy & News",GENART:"Arts",GELFKL:"Life Tips",ANIMAL:"Animals",PLANTS:"Plants",ETHPLT:"Earth",TOLELC:"Tools & Electronics",GESCKL:"Science Facts",INVDSP:"Individual Sports",MARART:"Martial Arts",TEAMSP:"Team Sports",FOOTBL:"Soccer",GESPKL:"Sports Facts"}},QC={maxUses:"Max uses (leave blank for unlimited)",redirect:"Redirect URL (leave blank for app home)",creating:"Creating\u2026",create:"Create link",created:"\u2713 Link created",copied:"Copied!",copy:"Copy",loading:"Loading\u2026",empty:"No links created yet.",uses:"Used {{count}} times",expiresAt:"Expires: {{date}}",createdAt:"Created: {{date}}",confirmDelete:"Delete this link?",deactivate:"Deactivate",delete:"Delete",status:{active:"Active",expired:"Expired",inactive:"Inactive"}},eg={passwordPlaceholder:"Enter password"},tg={direction:{left:"L",right:"R",label:"Side"},wornDate:"Date Worn",deviceType:"Device Type",brand:"Brand",fitType:"Fit Type",productName:"Product Name",validationError:{brandAndProduct:"Please enter brand and product name."},addNew:"Add New Device",selectFromList:"Select from List",removeDevice:"Remove",type:{hearingAid:"Hearing Aid",cochlearImplant:"Cochlear Implant"}},ng={stat:{totalCustomers:"Total Customers",monthlyVisits:"This Month's Visits"},chart:{visitDetail:"Visit Details",trainingDetail:"Training Details",weekly:"Weekly",daily:"Daily",periodMonth:"Month",periodWeek:"Week",weeklyPrefix:"Weekly",monthlyPrefix:"Monthly",visit:"Visits",reservation:"Reservations",trainingDone:"Completed",trainingInProgress:"In Progress",weekRange:"{{start}}\u2013{{end}}",week:"W{{n}}"},subscriptionStatus:{active:"{{pct}}% Active",expired:"{{pct}}% Expired",unused:"{{pct}}% Unused"}},ag={editBanner:{message:"Saving will update the contrast pair table you're editing."},phonemeSelect:{title:"Phoneme Selection",vs:"vs"},caution:"Caution",mode:{include:"Phoneme Include",pick:"Phoneme Contrast",contrast:"Specify Contrast",infoTitle:"Contrast Mode",infoInclude:"Include \u2014 finds words containing all selected phonemes, plus their minimal pair.",infoPick:"Contrast \u2014 matches only if the selected phoneme is the actual point of difference in the pair.",infoContrast:"Specify Contrast \u2014 directly choose phonemes for the base word and the contrasting word to find pairs."},count:"{{n}}",input:{char:"Choose Letters",pron:"Choose Sound",infoTitle:"Input mode",infoChar:"Choose Letters \u2014 finds words by the selected phonemes (spelling), then finds their standard-pronunciation contrast pairs.",infoPron:"Choose Sound \u2014 finds standard-pronunciation contrast pairs directly from the selected phonemes."},phonemeN:"Syllable {{n}}",phonemeSingleLabel:"Syllable",phonemeContrastSingleLabel:"Contrast Syllable",ordinals:["First","Second","Third","Fourth"],phonemeOrdinalLabel:"{{ordinal}} Syllable",phonemeContrastOrdinalLabel:"Contrast {{ordinal}} Syllable",composition:"Answer Word Composition",syllableCount:"Syllables",syllableN:"{{n}} syll.",syllableNPlus:"{{n}}+ syll.",onset:"Onset",vowel:"Vowel",coda:"Coda",filter:{searchOptionsTitle:"Contrast Settings",searchModeLabel:"Contrast Mode",countLabel:"Input Syllable Count",inputModeLabel:"Input mode",phonemeOrder:"Input Syllable Position",phonemeOrderInfo:["Match: the pair must differ at exactly the same position (syllable).","Any: the differing position doesn't matter."],orderAny:"Any",orderMatch:"Match",difficultyInfo:"Reflects the National Institute of Korean Language's basic vocabulary grade.",selectLabel:"Select",onlyHasImage:"Only words with images",onlySameStructure:"Only same phoneme structure"},searchLabel:{error:"Failed to load data",loading:"Loading\u2026"},confirmMessage:"The word table with {{count}} selected {{unit}} will be lost.",resetOptions:"Reset Options",phonemeContrast:"Contrast Syllable {{n}}",infoNotes:["The preview character is an example of the selected phoneme combination. The actual search covers all words containing the phoneme.","Initial consonant '\u3147' cannot be selected. \u3147 at the start of a word is effectively silent.","If only onset and coda are selected, the vowel is automatically displayed as '\u314F'.","Increasing the phoneme count searches for minimal pairs between each phoneme."]},rg={sentenceTyping:{roundCount:"{{rounds}} rounds \xB7 {{timeLimit}}s each"},wordDefense:{me:"Me"},dictation:{title:"Dictation",desc:"Practice writing down exactly what you hear.",comingSoon:"Coming soon: audio playback, input field, answer comparison"},result:{heading:"Level {{number}} Answer",retry:"Try Again"},common:{accuracy:"{{pct}}% accuracy"},soundMatch:{title:"Sound Match",desc:"Quickly match words or sentences that share the same sound.",comingSoon:"Coming soon: play button, timer, score tracking"},orderSequence:{title:"Sentence Ordering",desc:"Arrange scattered sentence fragments in the correct order.",comingSoon:"Coming soon: sentence sets, ordering interface"},speedListen:{title:"Speed Listen",desc:"A challenge game to count the number of words in a sentence within a time limit.",comingSoon:"Coming soon: time limit, scoreboard"},noiseChallenge:{title:"Noise Challenge",desc:"Practice distinguishing sentences amid background noise.",comingSoon:"Coming soon: various noise levels, score tracking"},fastListen:{title:"Fast Listen",desc:"Listen to short sentences at speed and select the key word.",comingSoon:"Coming soon: speed by difficulty, timer"},shadowing:{title:"Shadowing",desc:"Practice pronunciation and intonation by repeating sentences aloud.",comingSoon:"Coming soon: playback, recording, comparison feedback"},phonemeHunt:{title:"Phoneme Hunt",desc:"Find words that contain a specific phoneme (sound).",comingSoon:"Coming soon: phoneme filter, hint feature"}},og={lead:`IHAB builds trust
|
|
850
850
|
through sound
|
|
851
|
-
and aids recovery.`,site:{title:"Site",malgwi:"Malgwi",soundDirection:"Sound Direction System",vrSoundDirection:"VR Sound Direction System",hearingTest:"Hearing Test Pro"},sns:{title:"SNS",naverBlog:"Naver Blog",kakao:"KAKAO Talk Open Chat"},policy:{title:"Policy",terms:"Terms of Service",privacy:"Privacy Policy"},ceo:"CEO",address:"Address",support:"Support",ceoName:"Ji-hye Han",addressValue:"302, 3F, Haechan Bldg, 32 Siocheong-gil, Chuncheon, Gangwon, Korea"},sg={trainingPhone:{topic:"Gardening",prev:"Prev",next:"Next",speed:"Speed 3",noiseType:"Crowd noise",settings:"Settings",start:{caption:"Press the play (\u25B6) button below and listen carefully. After listening, check the sentence."},feedback:{caption:"Plant the well-grown seedlings in the garden bed and cover them carefully with plastic film."},done:{heardWell:"Heard clearly",listenAgain:"Listen again"}}},ig={timeHM:"{{hh}}:{{mm}}",timeH:"{{hh}}:{{mm}}"},lg={options:"Training Options",difficulty:"Difficulty",exclude:"Exclude",chosung:"Initial Consonant",excludeOptions:{none:"None",noImage:"No Image"}},cg={answer:"Answer",distractor:"Distractor"},ug={phaseWordDownload:"Download Word Data",phaseImageCheck:"Check Images",phasePairAnalysis:"Analyze Word Pairs",downloadingCount:"Downloading {{n}} words",checkingPage:"Checking page {{page}} list",imageCount:"{{done}} / {{total}} items"},dg={clearAriaLabel:"Clear input"},pg={ariaLabel:"Select tab"},mg={ariaLabel:"Tabs"},hg={dragPrompt:"Drag and drop files here",browseButton:"Choose Files",removeAriaLabel:"Remove {{name}}"},fg={ariaLabel:"User avatar"},Cg={relativeDay:{today:"Today",yesterday:"Yesterday",daysAgo:"{{n}}d ago"},reason:{notLoggedIn:"Login required."},list:{title:"Received Homework"},status:{expired:"Expired",done:"Done {{count}}\xD7 \xB7 {{date}}",notDone:"Not done"}},gg={weekly:{title:"Weekly Training",daily:"Daily Listening",crossword:"Crossword"},homework:{title:"Homework Progress",totalRate:"Overall rate",count:"Total",done:"Done",remaining:"Remaining"},today:{tooltipTotal:"Total",tooltipDone:"Done"},filter:{countSuffix:" sessions"},time:{countLabel:"{{n}} sessions",empty:"No training records"},daily:{title:"Today's Listening Record",empty:"No completed sessions"},crossword:{title:"Crossword Quiz",empty:"No completed levels"},visit:{title:"Linked Visit Records"},detail:"Details",trainingType:{LISTEN_IN_NOISE:"Sentence in Noise",SHORT_STORY:"Short Story",LONG_STORY:"Long Story",ORDERING_SENTENCE:"Sentence Ordering"}},bg={import:"Add to my trainings",publisher:"Publisher",time:{justNow:"just now",minutesAgo:"{{n}}m ago",hoursAgo:"{{n}}h ago",daysAgo:"{{n}}d ago",weeksAgo:"{{n}}w ago",monthsAgo:"{{n}}mo ago",yearsAgo:"{{n}}y ago"},badge:{shared:"Store"},publish:{descPlaceholder:"One-line description for the Training Store (optional)"}},yg={manage:{unit:"item(s)"}},vg={cancelLabel:"Cancel"},xg={subtitle:"Select a topic to start listening practice."},_g={steps:"Step {{current}} of {{total}}"},wg={panelTitle:"Training misses",viewItems:"Items",viewTypes:"Types",colPending:"Left",colTrend:"Change",colRuns:"Runs",unitItem:" items",skippedOnly:"{{n}} older record(s) were excluded \u2014 they do not say what was answered.",summaryLabel:"Recorded",summaryValue:"{{items}} items \xB7 {{pending}} still missed",nextLabel:"Next to work on",nextCount:"{{count}}",nextCountCapped:"{{shown}} of {{total}}",picked:"\u2192 {{what}}",typeClear:"All caught up",typePending:"{{pending}} of {{total}} left",flat:"no change",runs:"{{count}} run(s)",avgDuration:"{{sec}}s avg"},kg={resetColumns:"Reset column widths"},Ag={panelTitle:"Word table scores",viewWords:"Words",viewTables:"Tables",colLatest:"When",colTrend:"Change",unitTime:" times",summaryLabel:"Scored",summaryValue:"{{times}} times \xB7 {{words}} words",nextLabel:"Focus next",nextCount:"{{count}}",allClear:"All correct last time.",times:"{{count}}x",flat:"no change",recentLabel:"Recent scorings",nextCountCapped:"{{shown}} of {{total}}"},Bg={ariaLabel:"Banner",dotAriaLabel:"Banner {{index}} of {{count}}"},Ng={selectYearMonth:"Select year and month",chooseDate:"Choose a date"},Eg={previewRegion:"Report preview \u2014 scrollable sideways"},Dg={description:"Description",textbox:"Text",training:"Training guide",menu:"Menu"},Sg={devNone:"No acquisition data",place:{labial:"Bilabial",alveolar:"Alveolar",palatal:"Palatal",velar:"Velar",glottal:"Glottal"}},jg={clearSelection:"Clear selection"},Tg={showResult:"Show {{type}} result"},Mg={selected:"Selected",remove:"Remove",exclude:"Excluded",nthSelected:"Selection {{n}}"},Lg={loading:"Loading"},$g={state:{active:"playing",played:"heard",correct:"correct",wrong:"wrong"}},Rg={ariaLabel:"Breadcrumb"},Pg={empty:"No items yet."},Ig={main:"Main gradient",soft:"Soft",sub:"Sub color",deep:"Deep gradient",softSub:"Soft sub",warm:"Warm (accent)",dark:"Dark",radial:"Radial gradient",diagonal:"Diagonal pattern",dots:"Dot pattern",outline:"Outline",success:"Success / done",naver:"Naver blog notice",instagram:"Instagram notice"},Fg={common:kC,calendar:AC,passCard:BC,searchField:NC,rating:EC,colorPicker:DC,dropdown:SC,accordion:jC,header:TC,nav:MC,settings:LC,usage:$C,account:RC,help:PC,training:IC,trainingSettings:FC,customers:OC,payment:HC,coupons:zC,visits:VC,company:WC,trainingType:qC,myWordTraining:UC,myWordTable:GC,keyWords:KC,wordTable:YC,wordSearch:ZC,wordPrint:XC,topic:JC,accessLinkManager:QC,login:eg,device:tg,manager:ng,wordPairs:ag,game:rg,footer:og,landing:sg,date:ig,trainingSetPage:lg,wordTrainingPreview:cg,wordData:ug,textField:dg,segmentedControl:pg,tabs:mg,fileUpload:hg,avatar:fg,myHomework:Cg,trainingStatus:gg,store:bg,homework:yg,inquiry:vg,trainingPlanRun:xg,progress:_g,trainingMiss:wg,table:kg,wordScore:Ag,topBanner:Bg,datePicker:Ng,report:Eg,tooltip:Dg,phonemeProfile:Sg,bulkBar:jg,debug:Tg,badge:Mg,loader:Lg,soundCompass:$g,breadcrumb:Rg,board:Pg,promoBannerBg:Ig};const Og=[{code:"ko",label:"\uD55C\uAD6D\uC5B4"},{code:"en",label:"English"}],Wr="ko",Hg="ihab_display_language";function _i(){if(typeof window>"u")return Wr;try{const e=localStorage.getItem(Hg);if(e&&Og.some(t=>t.code===e))return e}catch{}return Wr}function wi(e){try{document.documentElement.lang=e}catch{}}At.on("languageChanged",wi),wi(_i()),At.use(be.initReactI18next).init({resources:{ko:{translation:wC},en:{translation:Fg}},lng:_i(),fallbackLng:Wr,interpolation:{escapeValue:!1},react:{useSuspense:!1}});function ht(e,t,a){const r=o.useRef(null);return o.useLayoutEffect(()=>{const s=r.current?.parentElement??null;return t(s,e),()=>a(s)},[e,t,a]),r}const ba={title:"--promo-banner-bg-title",description:"--promo-banner-bg-description"},qr=new WeakMap;function Ur(e){if(e)return qr.get(e)}function Tt(e,t){e&&(e.style.setProperty(ba.title,t.title),e.style.setProperty(ba.description,t.description),qr.set(e,t))}function Mt(e){e&&(e.style.removeProperty(ba.title),e.style.removeProperty(ba.description),qr.delete(e))}const ki={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"default"};function Ai(){const e=ht(ki,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-main","aria-hidden":"true"})}const Bi={title:"var(--color-main)",description:"var(--color-gray)",actionVariant:"main"};function Ni(){const e=ht(Bi,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft","aria-hidden":"true"})}const Ei={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Di(){const e=ht(Ei,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-sub","aria-hidden":"true"})}const Si={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function ji(){const e=ht(Si,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-deep","aria-hidden":"true"})}const Ti={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function Mi(){const e=ht(Ti,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft-sub","aria-hidden":"true"})}const Li={title:"var(--color-black)",description:"var(--color-darkGray)",actionVariant:"main"};function $i(){const e=ht(Li,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-warm","aria-hidden":"true"})}const Ri={title:"var(--color-white)",description:"var(--color-lightGray)",actionVariant:"main"};function Pi(){const e=ht(Ri,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dark","aria-hidden":"true"})}const Ii={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Fi(){const e=ht(Ii,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-radial","aria-hidden":"true"})}const Oi={title:"var(--color-darkMain)",description:"var(--color-gray)",actionVariant:"main"};function Hi(){const e=ht(Oi,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-diagonal","aria-hidden":"true"})}const zi={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function Vi(){const e=ht(zi,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dots","aria-hidden":"true"})}const Wi={title:"var(--color-black)",description:"var(--color-gray)",actionVariant:"main"};function qi(){const e=ht(Wi,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-outline","aria-hidden":"true",children:n.jsx("span",{className:"promo-banner-bg-outline__dot"})})}const Ui={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Gi(){const e=ht(Ui,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-success","aria-hidden":"true"})}const Ki={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"sub"};function Yi(){const e=ht(Ki,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-naver","aria-hidden":"true"})}const Zi={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"transparent-white"};function Xi(){const e=ht(Zi,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-instagram","aria-hidden":"true"})}const Ht=(e,t,a)=>({key:e,get label(){return At.t(`promoBannerBg.${e}`,t)},textTone:a}),zg=[Ht("main","\uBA54\uC778 \uADF8\uB77C\uB514\uC5B8\uD2B8","light"),Ht("soft","\uC18C\uD504\uD2B8","dark"),Ht("sub","\uC11C\uBE0C \uCEEC\uB7EC","light"),Ht("deep","\uB525 \uADF8\uB77C\uB514\uC5B8\uD2B8","light"),Ht("softSub","\uC18C\uD504\uD2B8 \uC11C\uBE0C","dark"),Ht("warm","\uC6DC(\uAC15\uC870)","dark"),Ht("dark","\uB2E4\uD06C","light"),Ht("radial","\uBC29\uC0AC\uD615 \uADF8\uB77C\uB514\uC5B8\uD2B8","light"),Ht("diagonal","\uB300\uAC01\uC120 \uD328\uD134","dark"),Ht("dots","\uB3C4\uD2B8 \uD328\uD134","dark"),Ht("outline","\uC544\uC6C3\uB77C\uC778","dark"),Ht("success","\uC131\uACF5/\uC644\uB8CC","light"),Ht("naver","\uB124\uC774\uBC84 \uBE14\uB85C\uADF8 \uC548\uB0B4","light"),Ht("instagram","\uC778\uC2A4\uD0C0\uADF8\uB7A8 \uC548\uB0B4","light")],Ji={main:Ai,soft:Ni,sub:Di,deep:ji,softSub:Mi,warm:$i,dark:Pi,radial:Fi,diagonal:Hi,dots:Vi,outline:qi,success:Gi,naver:Yi,instagram:Xi};function Qi({storageKey:e="fontScale",baseFont:t=20,minScale:a=.8,maxScale:r=1.4,step:s=.1,lineHeightRatio:i=1.4}={}){const l=_=>Math.max(a,Math.min(r,Number(_))),c=_=>{try{const x=localStorage.getItem(_),k=x?Number(x):1;return Number.isFinite(k)?l(k):l(1)}catch{return l(1)}},[d,u]=o.useState(()=>c(e)),[p,m]=o.useState(e);p!==e&&(m(e),u(c(e))),o.useEffect(()=>{try{localStorage.setItem(e,String(d))}catch{}},[e,d]);const h=_=>{u(typeof _=="function"?x=>l(_(x)):l(_))},g=()=>h(_=>+(_+s).toFixed(6)),y=()=>h(_=>+(_-s).toFixed(6)),f=d<r-Number.EPSILON,w=d>a+Number.EPSILON,C=Math.round(t*d),b=Math.round(C*i);return{scale:d,setScale:h,increase:g,decrease:y,canIncrease:f,canDecrease:w,fontSize:C,lineHeight:b}}function el(e,t){const a=ga(t);o.useEffect(()=>{const r=()=>a.current();try{window.addEventListener(e,r)}catch{}return()=>{try{window.removeEventListener(e,r)}catch{}}},[e,a])}const Gr=" \xB7 ",tl=(()=>{if(typeof document>"u")return"";const e=document.title;return e.includes(Gr)?e.split(Gr).pop()??e:e})(),Vg=o.createContext(!1),On=[];let nl=null;function Wg(e){const t=o.useContext(Vg);o.useEffect(()=>{if(t||typeof e!="string"||!e)return;On.length===0&&(nl=document.title);const a={text:tl?`${e}${Gr}${tl}`:e};return On.push(a),document.title=a.text,()=>{const r=On.lastIndexOf(a);r>=0&&On.splice(r,1),document.title=On.length?On[On.length-1].text:nl??document.title}},[e,t])}const al=[{value:"10",label:"10\uAC1C\uC529 \uBCF4\uAE30"},{value:"25",label:"25\uAC1C\uC529 \uBCF4\uAE30"},{value:"50",label:"50\uAC1C\uC529 \uBCF4\uAE30"},{value:"100",label:"100\uAC1C\uC529 \uBCF4\uAE30"}],qg=(()=>{let e=null;return()=>(e||(e=new Intl.Collator("ko")),e)})();function Qn(e,t){return qg().compare(e,t)}const qa=new Map;function Ug(e){const t=qa.get(e);if(t)return t;const a=[],r=/-?\d+(?:\.\d+)?/g;let s=0;for(let i=r.exec(e);i;i=r.exec(e)){let l=i.index,c=i[0];c[0]==="-"&&l>0&&!/\s/.test(e[l-1])&&(l+=1,c=c.slice(1)),l>s&&a.push(e.slice(s,l)),a.push(Number(c)),s=i.index+i[0].length}return s<e.length&&a.push(e.slice(s)),qa.size>5e3&&qa.clear(),qa.set(e,a),a}function Gg(e){if(!/^[\d\s-]+$/.test(e))return null;const t=e.replace(/\D/g,"");return t.length<9||t.length>11?null:t[0]==="0"||t[0]==="1"&&e!==t?t:null}function Kg(e,t){const a=u=>u==null||typeof u=="number"&&Number.isNaN(u)?"":String(u).trim(),r=a(e),s=a(t);if(r===s)return 0;const i=(u,p)=>{if(typeof u=="number"&&!Number.isNaN(u))return[u];const m=Gg(p);return m!==null?[m]:Ug(p)},l=i(e,r),c=i(t,s),d=Math.min(l.length,c.length);for(let u=0;u<d;u++){const p=l[u],m=c[u];if(typeof p=="number"&&typeof m=="number"){if(p!==m)return p-m;continue}if(typeof p=="number")return-1;if(typeof m=="number")return 1;const h=Qn(p,m);if(h!==0)return h}return l.length!==c.length?l.length-c.length:Qn(r,s)}const rl=e=>e==null||typeof e=="number"&&Number.isNaN(e)||typeof e=="string"&&e.trim()==="";function Kr(e,t,a){const r=rl(e),s=rl(t);if(r||s)return r===s?0:r?1:-1;const i=Kg(e,t);return a?i:-i}function Yg(e,t,a){const{t:r}=be.useTranslation(),[s,i]=o.useState(()=>{const y=a?.initialPageSize;return y&&al.some(f=>f.value===y)?y:"25"}),[l,c]=o.useState(1),[d,u]=o.useState(t);Object.is(d,t)||(u(t),l!==1&&c(1));const p=o.useMemo(()=>al.map(y=>({...y,label:r("visits.showN",{n:y.value})})),[r]),m=o.useCallback(y=>{i(y),c(1)},[]),h=Math.max(1,Math.ceil(e.length/Number(s)));(l>h||l<1||!Number.isFinite(l))&&c(Math.min(Math.max(1,Number.isFinite(l)?l:1),h));const g=Math.min(Math.max(1,Number.isFinite(l)?l:1),h);return{pageRows:o.useMemo(()=>e.slice((g-1)*Number(s),g*Number(s)),[e,g,s]),pageSizeProps:{options:p,value:s,onChange:m},paginationProps:{page:g,total:h,onChange:c},setPage:c}}function Zg(e){const[t,a]=o.useState(null),r=o.useRef(t),s=o.useRef(e?.onSortChange);s.current=e?.onSortChange;const i=o.useCallback(d=>{const u=r.current,p=u?.key===d?{key:d,asc:!u.asc}:{key:d,asc:!0};r.current=p,a(p),s.current?.(p)},[]),l=o.useCallback((d,u)=>({label:d,sortDir:t?.key===u?t.asc?"asc":"desc":null,onClick:()=>i(u)}),[t,i]),c=o.useCallback((d,u)=>{if(!t)return d;const{key:p,asc:m}=t;return[...d].sort((h,g)=>Kr(u(h,p),u(g,p),m))},[t]);return{\uC815\uB82C:t,\uCE78:l,sortRows:c}}const ln="\uC804\uCCB4",Xg=new Map;try{At.store?.on?.("added",()=>Xg.clear())}catch{}Object.fromEntries(Object.entries(c2).map(([e,{nucleus:t}])=>[e,t]));const Jg={labial:e=>e("common.phonetics.place.labial",{defaultValue:"\uC591\uC21C\uC74C"}),alveolar:e=>e("common.phonetics.place.alveolar",{defaultValue:"\uCE58\uC870\uC74C"}),palatal:e=>e("common.phonetics.place.palatal",{defaultValue:"\uACBD\uAD6C\uAC1C\uC74C"}),velar:e=>e("common.phonetics.place.velar",{defaultValue:"\uC5F0\uAD6C\uAC1C\uC74C"}),glottal:e=>e("common.phonetics.place.glottal",{defaultValue:"\uC131\uBB38\uC74C"})},Qg={frontHigh:e=>e("common.phonetics.vowel.frontHigh",{defaultValue:"\uC804\uC124 \uACE0\uBAA8\uC74C"}),backHighUnrounded:e=>e("common.phonetics.vowel.backHighUnrounded",{defaultValue:"\uD6C4\uC124 \uACE0\uBAA8\uC74C \uD3C9\uC21C"}),backHighRounded:e=>e("common.phonetics.vowel.backHighRounded",{defaultValue:"\uD6C4\uC124 \uACE0\uBAA8\uC74C \uC6D0\uC21C"}),frontMid:e=>e("common.phonetics.vowel.frontMid",{defaultValue:"\uC804\uC124 \uC911\uBAA8\uC74C"}),backMidUnrounded:e=>e("common.phonetics.vowel.backMidUnrounded",{defaultValue:"\uD6C4\uC124 \uC911\uBAA8\uC74C \uD3C9\uC21C"}),backMidRounded:e=>e("common.phonetics.vowel.backMidRounded",{defaultValue:"\uD6C4\uC124 \uC911\uBAA8\uC74C \uC6D0\uC21C"}),low:e=>e("common.phonetics.vowel.low",{defaultValue:"\uC800\uBAA8\uC74C"})},eb={j:e=>e("common.phonetics.glide.j",{defaultValue:"j\uD65C\uC74C"}),w:e=>e("common.phonetics.glide.w",{defaultValue:"w\uD65C\uC74C"}),velar:e=>e("common.phonetics.glide.velar",{defaultValue:"\u0270\uD65C\uC74C"})};function tb(e,t){if("place"in t)return Jg[t.place](e);const a=Qg[t.vowel](e);return t.glide?`${a} \xB7 ${eb[t.glide](e)}`:a}const nb=(e,{defaultValue:t})=>t,ol=(e,t)=>({jamos:e,phonetic:t,tooltip:tb(nb,t)}),bn=(e,t)=>t.map(a=>ol([a],{place:e})),Bt=(e,t,a)=>ol([...e],a?{vowel:t,glide:a}:{vowel:t}),Yr={cho:[bn("labial",["\u3142","\u3143","\u314D","\u3141"]),bn("alveolar",["\u3137","\u3138","\u314C","\u3134","\u3139"]),bn("alveolar",["\u3145","\u3146"]),bn("palatal",["\u3148","\u3149","\u314A"]),bn("velar",["\u3131","\u3132","\u314B"]),bn("glottal",["\u314E"])],jung:[[Bt("\u3163","frontHigh"),Bt("\u315F","frontHigh","w"),Bt("\u3162","frontHigh","velar")],[Bt("\u3161","backHighUnrounded")],[Bt("\u315C","backHighRounded"),Bt("\u3160","backHighRounded","j")],[Bt("\u3154\u3150","frontMid"),Bt("\u3156\u3152","frontMid","j"),Bt("\u3159\u315A\u315E","frontMid","w")],[Bt("\u3153","backMidUnrounded"),Bt("\u3155","backMidUnrounded","j"),Bt("\u315D","backMidUnrounded","w")],[Bt("\u3157","backMidRounded"),Bt("\u315B","backMidRounded","j")],[Bt("\u314F","low"),Bt("\u3151","low","j"),Bt("\u3158","low","w")]],jong:[bn("labial",["\u3142","\u3141"]),bn("alveolar",["\u3137","\u3134","\u3139"]),bn("velar",["\u3131","\u3147"])]},ab=e=>e===rb?[]:Array.from(e),rb="__NO_CODA__",Zr=e=>e.map(t=>t.map(({jamos:a,phonetic:r,tooltip:s})=>({v:a.join(""),phonetic:r,tooltip:s}))),sl={cho:Zr(Yr.cho),jung:Zr(Yr.jung),jong:Zr(Yr.jong)};sl.jung.flat().forEach(({v:e})=>{for(const t of ab(e));}),new Set(sl.cho.flat().map(e=>e.v));function ob(e,t=!0){const a=ga(e);o.useEffect(()=>{if(t)return In(()=>{a.current?.()})},[t,a])}function ya(){const[e,t]=o.useState(null),a=o.useCallback(i=>t(i.getBoundingClientRect()),[]),r=o.useCallback(()=>t(null),[]),s=o.useCallback(i=>{const l=i.getBoundingClientRect();t(c=>c?null:l)},[]);return{anchorRect:e,isOpen:e!=null,openAt:a,close:r,toggleAt:s}}function sb(e){const[t,a]=o.useState(null),[r,s]=o.useState(null),i=o.useRef(null);o.useEffect(()=>()=>{i.current&&clearTimeout(i.current)},[]);const l=o.useCallback((d,u)=>{i.current&&clearTimeout(i.current),i.current=setTimeout(()=>{a(d),s(u)},e)},[e]),c=o.useCallback(()=>{i.current&&clearTimeout(i.current),a(null),s(null)},[]);return{payload:t,anchorRect:r,openAfterDelay:l,close:c}}function il(e="warning"){const[t,a]=o.useState(""),[r,s]=o.useState(e),[i,l]=o.useState(0),c=o.useCallback((m,h)=>{s(h),a(m),l(g=>g+1)},[]),d=o.useCallback(m=>c(m,"warning"),[c]),u=o.useCallback(m=>c(m,"normal"),[c]),p=o.useCallback(()=>a(""),[]);return{toastMessage:t,toastType:r,toastKey:i,showToast:c,showWarning:d,showNormal:u,clearToast:p}}function va(e){let t=0;if(e&&typeof window<"u"&&typeof window.getComputedStyle=="function")for(let a=e;a&&a!==document.body&&a!==document.documentElement;a=a.parentElement){const r=parseInt(window.getComputedStyle(a).zIndex,10);!Number.isNaN(r)&&r>t&&(t=r)}return t>0?`max(var(--z-menu, 1500), ${t+1})`:"var(--z-menu, 1500)"}function xa({computeStyle:e,onScroll:t="close",onResize:a="close",ignoreOutsideClickSelector:r}){const[s,i]=o.useState(!1),[l,c]=o.useState({}),d=o.useRef(null),u=o.useRef(null),p=o.useCallback(()=>{d.current&&c(e(d.current.getBoundingClientRect(),d.current))},[e]);o.useEffect(()=>{if(!s)return;p();const g=b=>{const _=b.target;r&&_.closest?.(r)||d.current?.contains(_)||u.current?.contains(_)||i(!1)};document.addEventListener("mousedown",g),document.addEventListener("pointerdown",g);const y=b=>{u.current?.contains(b.target)||(t==="reposition"?p():t==="close"&&i(!1))};t!=="ignore"&&window.addEventListener("scroll",y,!0);const f=()=>{a==="reposition"?p():a==="close"&&i(!1)};let w=null;const C=()=>{f(),w&&clearTimeout(w),w=setTimeout(()=>{w=null,a==="reposition"&&p()},250)};return a!=="ignore"&&(window.addEventListener("resize",f),window.addEventListener("orientationchange",C)),()=>{document.removeEventListener("mousedown",g),document.removeEventListener("pointerdown",g),t!=="ignore"&&window.removeEventListener("scroll",y,!0),a!=="ignore"&&(window.removeEventListener("resize",f),window.removeEventListener("orientationchange",C)),w&&clearTimeout(w)}},[s,p,t,a,r]),o.useEffect(()=>{if(s)return In(()=>i(!1))},[s]);const m=o.useCallback(()=>i(g=>!g),[]),h=o.useCallback(()=>i(!1),[]);return{open:s,setOpen:i,toggle:m,close:h,style:l,triggerRef:d,menuRef:u}}function ib(e,{mode:t="playback",autoStart:a=!1,onPlaySpeaker:r,onComplete:s,playMs:i=1100,feedbackMs:l=1500}={}){const[c,d]=o.useState([]),[u,p]=o.useState(0),[m,h]=o.useState("idle"),[g,y]=o.useState(null),[f,w]=o.useState([]),[C,b]=o.useState(null),[_,x]=o.useState(0),k=o.useRef(0),v=o.useCallback(W=>{k.current=typeof W=="function"?W(k.current):W,x(k.current)},[]),B=o.useRef(r),A=o.useRef(s);o.useEffect(()=>{B.current=r,A.current=s},[r,s]);const N=o.useRef([]),E=()=>{N.current.forEach(clearTimeout),N.current=[]},T=(W,L)=>{N.current.push(setTimeout(L,W))};o.useEffect(()=>()=>E(),[]);const I=c[u]?.id??null,R=o.useRef(null),V=o.useCallback(()=>{E(),h("playing"),w([]),b(null),v(0);let W=0;e.forEach((L,D)=>{T(W,()=>{p(D),y(L.id),B.current?.(L)}),T(W+1e3,()=>{y(null),w(O=>[...O,L.id])}),W+=1300}),T(W,()=>{h("done"),A.current?.({score:0,total:e.length})})},[e,v]),j=o.useCallback((W,L)=>{if(L>=W.length){h("done"),A.current?.({score:k.current,total:W.length});return}R.current=null,p(L),b(null),h("playing"),y(W[L].id),B.current?.(W[L]),T(i,()=>{y(null),h("waiting")})},[i]),M=o.useCallback(()=>{E();const W=fa(e);d(W),v(0),w([]),j(W,0)},[e,j,v]),F=o.useCallback(()=>{t==="playback"?(d(e),V()):M()},[t,e,V,M]),U=o.useCallback(()=>{E(),h("idle"),y(null),w([]),b(null),p(0),v(0),d([])},[v]),Q=e.map(W=>W.id).join("|");o.useEffect(()=>(a?F():U(),()=>E()),[t,Q,a]);const z=o.useCallback(W=>{m!=="waiting"||t==="playback"||R.current===u||(R.current=u,b(W),W===c[u]?.id&&v(L=>L+1),t==="exam"?(h("playing"),T(400,()=>j(c,u+1))):(h("feedback"),T(l,()=>j(c,u+1))))},[m,t,c,u,j,l,v]),G=t==="playback"?e.length:c.length;return{bind:{activeSpeakerId:g,playedIds:f,selectedId:C,answerId:I,showFeedback:m==="feedback",clickable:m==="waiting",onSelectSpeaker:z},index:u,total:G,score:_,phase:m,done:m==="done",start:F,reset:U}}function lb({title:e,description:t,actionLabel:a,onAction:r,bg:s,color:i,size:l="medium",actionVariant:c,titleColor:d,descriptionColor:u,className:p=""}){const m=s??i??"main",h=o.useRef(null),[g,y]=o.useState("main"),f=Zt("(max-width: 767px)"),w=o.useRef({title:!1,description:!1});o.useLayoutEffect(()=>{const _=h.current;if(!_)return;const x=Ur(_),k=(v,B,A)=>{if(A!==void 0)_.style.setProperty(B,A),w.current[v]=!0;else if(w.current[v]){const N=x?.[v];N?_.style.setProperty(B,N):_.style.removeProperty(B),w.current[v]=!1}};k("title","--promo-banner-bg-title",d),k("description","--promo-banner-bg-description",u)},[d,u,m]),o.useLayoutEffect(()=>{const _=h.current;if(!_)return;const x=Ur(_);y(x?.actionVariant??"main")},[m]);const C=De("promo-banner",`promo-banner--${l}`,p),b=Ji[m];return n.jsxs("div",{ref:h,className:C,role:"note",children:[n.jsx(b,{}),n.jsxs("div",{className:"promo-banner__text",children:[n.jsx("span",{className:`promo-banner__title ${l==="small"?"body-2":"h2"}`,children:e}),t&&n.jsx("span",{className:"promo-banner__description body-3",children:t})]}),a&&r&&n.jsx(pe,{htmlType:"button",size:40,variant:c??g,shape:"pill",useBorder:!0,onClick:r,ariaLabel:a,...f?{type:"dot",icon:"arrow-right"}:{rightIcon:"arrow-right",label:a,minWidth:140}})]})}function cb({children:e,interval:t=5e3,dotTone:a,className:r="","aria-label":s}){const{t:i}=be.useTranslation(),l=s??i("topBanner.ariaLabel","\uBC30\uB108"),c=o.Children.toArray(e),d=c.length,[u,p]=o.useState(0),[m,h]=o.useState(!1),[g,y]=o.useState(!1),[f,w]=o.useState(!1),C=o.useRef(null),b=o.useRef(null),_=o.useRef(null),x=Hr(),k=m||g||f,v=d>0?Math.min(u,d-1):0;o.useEffect(()=>{if(d<2||t<=0||k||x)return;const A=window.setInterval(()=>p(N=>(Math.min(N,d-1)+1)%d),t);return()=>window.clearInterval(A)},[d,t,k,x]);const B=A=>{b.current!=null&&window.clearTimeout(b.current),b.current=window.setTimeout(()=>{b.current=null,w(!1)},A)};return o.useEffect(()=>()=>{b.current!=null&&window.clearTimeout(b.current)},[]),o.useEffect(()=>{if(!f)return;const A=N=>{N.pointerType==="touch"&&(_.current&&_.current.contains(N.target)||(b.current!=null&&(window.clearTimeout(b.current),b.current=null),w(!1)))};return document.addEventListener("pointerdown",A,!0),()=>document.removeEventListener("pointerdown",A,!0)},[f]),d===0?null:n.jsxs("section",{ref:_,className:De("top-banner",r),"aria-label":l,"aria-roledescription":"carousel",onPointerEnter:A=>{C.current=A.pointerType},onPointerDown:A=>{C.current=A.pointerType,A.pointerType==="touch"&&(b.current!=null&&(window.clearTimeout(b.current),b.current=null),w(!0))},onPointerUp:A=>{A.pointerType==="touch"&&B(5e3)},onPointerCancel:A=>{A.pointerType==="touch"&&B(5e3)},onMouseEnter:()=>{C.current!=="touch"&&h(!0)},onMouseLeave:()=>h(!1),onFocus:A=>{let N=!0;try{N=A.target.matches(":focus-visible")}catch{N=!0}y(N)},onBlur:A=>{A.currentTarget.contains(A.relatedTarget)||y(!1)},children:[n.jsx("div",{className:"top-banner__viewport",children:n.jsx("div",{className:"top-banner__track",style:{transform:`translateX(-${v*100}%)`},children:c.map((A,N)=>n.jsx("div",{className:"top-banner__slide","aria-hidden":N!==v,...N!==v?{inert:!0}:{},children:A},N))})}),d>1&&n.jsx("div",{className:`top-banner__dots${(a?.[v]??"light")==="dark"?" top-banner__dots--dark":""}`,children:c.map((A,N)=>n.jsx("button",{type:"button",className:`top-banner__dot${N===v?" top-banner__dot--active":""}`,"aria-label":i("topBanner.dotAriaLabel",{count:d,index:N+1,defaultValue:`${d}\uAC1C \uC911 ${N+1}\uBC88\uC9F8 \uBC30\uB108`}),"aria-current":N===v,onClick:()=>p(N)},N))})]})}function ub({title:e,body:t,open:a=!1,onToggle:r,avatar:s,titleClassName:i="body-2",bodyClassName:l="body-2",className:c=""}){const{t:d}=be.useTranslation();return n.jsxs("div",{className:`accordion-item ${a?"accordion-item--open":""} ${c}`.trim(),role:"listitem",children:[n.jsxs("div",{className:"accordion-item__header",role:"button",tabIndex:0,"aria-expanded":a,"data-accordion-header":!0,onClick:r,onKeyDown:u=>{if(u.key==="Enter"||u.key===" ")u.preventDefault(),r?.();else if(u.key==="ArrowDown"||u.key==="ArrowUp"){u.preventDefault();const p=u.currentTarget.closest('[role="list"]');if(!p)return;const m=Array.from(p.querySelectorAll("[data-accordion-header]")),h=m.indexOf(u.currentTarget);(u.key==="ArrowDown"?m[h+1]:m[h-1])?.focus()}},children:[s&&n.jsx("div",{className:"accordion-item__avatar",children:s}),n.jsx("div",{className:`accordion-item__title ${i}`,children:e}),n.jsx("div",{className:"accordion-item__chevron",children:n.jsx(Ue,{icon:a?"chevron-up":"chevron-down",label:a?d("accordion.collapse","\uC811\uAE30"):d("accordion.expand","\uD3BC\uCE58\uAE30"),className:"accordion-item__chevron-icon",imgClassName:"accordion-item__chevron-image"})})]}),a&&n.jsx("div",{className:`accordion-item__body ${l}`,children:typeof t=="string"?n.jsx("p",{children:t}):t})]})}function db({items:e=[],defaultOpenIndex:t=0,size:a=72,className:r="",bodyClassName:s}){const[i,l]=o.useState({index:t}),c=(d,u)=>i.id!=null&&d.id!=null?d.id===i.id:i.id==null&&u===i.index;return n.jsx("div",{className:`accordion-group accordion-group--s${a} ${r}`.trim(),role:"list",children:e.map((d,u)=>n.jsx(ub,{title:d.title,body:d.body,avatar:d.avatar,open:c(d,u),onToggle:()=>l(c(d,u)?{index:-1}:{index:u,id:d.id}),bodyClassName:s},d.id??u))})}function pb(){return n.jsx("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:n.jsx("polyline",{points:"2,6 5,9 10,3"})})}function mb(){return n.jsxs("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round","aria-hidden":"true",children:[n.jsx("line",{x1:"3",y1:"3",x2:"9",y2:"9"}),n.jsx("line",{x1:"9",y1:"3",x2:"3",y2:"9"})]})}function hb(){return n.jsx("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round","aria-hidden":"true",children:n.jsx("line",{x1:"2.5",y1:"6",x2:"9.5",y2:"6"})})}function ft(e){const{t}=be.useTranslation(),{type:a="bar",size:r,className:s="","aria-label":i,"aria-hidden":l}=e;if(a==="dot"){const{icon:k,number:v,position:B="top-right",onClick:A,animate:N=!1}=e,E=k??"check",T=v!==void 0?"number":E,I=typeof r=="number"?r:32,R=De("circle-badge",`circle-badge--${T}`,`circle-badge--${B}`,`circle-badge--${I}`,N?"circle-badge--animate":"",A?"circle-badge--clickable":"",s),V=v!==void 0?t("badge.nthSelected",{n:v,defaultValue:"{{n}}\uBC88\uC9F8 \uC120\uD0DD"}):{check:t("badge.selected","\uC120\uD0DD\uB428"),remove:t("badge.remove","\uC81C\uAC70"),minus:t("badge.exclude","\uC81C\uC678")}[E];return n.jsxs("span",{className:R,onClick:A,onKeyDown:A?j=>{j.key!=="Enter"&&j.key!==" "||(j.preventDefault(),j.currentTarget.click())}:void 0,"aria-label":l?void 0:i??V,"aria-hidden":l||void 0,role:A?"button":l?void 0:"img",tabIndex:A?0:void 0,children:[v!==void 0&&v,v===void 0&&E==="check"&&n.jsx(pb,{}),v===void 0&&E==="remove"&&n.jsx(mb,{}),v===void 0&&E==="minus"&&n.jsx(hb,{})]})}const{label:c,children:d,variant:u="default",fill:p="filled",minWidth:m,iconLeft:h,iconRight:g,color:y}=e,f=typeof r=="number"?"medium":r??"medium",w={small:"caption-2b",medium:"body-3b",large:"body-2b"}[f]??"body-2b",C={small:12,medium:14,large:16}[f]??14,b=De("badge",`badge--${u}`,`badge--${f}`,p!=="filled"?`badge--${p}`:"",w,s),_=y?.startsWith("--")?`var(${y})`:y,x=m!==void 0||_?{...m!==void 0?{minWidth:typeof m=="number"?`${m}px`:m}:{},..._?{"--badge-color":_}:{}}:void 0;return n.jsxs("span",{className:b,style:x,"aria-label":l?void 0:i,role:i&&!l?"img":void 0,"aria-hidden":l||void 0,children:[h&&n.jsx(Ue,{icon:h,size:C,className:"badge__icon"}),c??d,g&&n.jsx(Ue,{icon:g,size:C,className:"badge__icon"})]})}function _a({columns:e=[],onClose:t,className:a="",size:r="medium"}){const{t:s}=be.useTranslation(),i=r==="small"?40:48,[l,c]=o.useState([]),d=o.useMemo(()=>{const w=[{title:null,columns:e}];let C=e;for(const b of l){const _=C?.[b.ci]?.items?.[b.ii];if(!_||!Array.isArray(_.children)||!_.children.length)break;C=[{title:null,items:_.children}],w.push({title:_.label||null,columns:C})}return w},[e,l]),u=d[d.length-1],p=d.length-1,m=o.useCallback(()=>c(w=>w.slice(0,Math.max(0,Math.min(w.length,p)-1))),[p]),h=o.useRef(null),g=o.useRef(null),y=d.length;o.useEffect(()=>{g.current||(g.current=document.activeElement);let w=0,C=0;const b=()=>{const _=h.current?.querySelector("button:not([disabled])");if(_&&_.offsetParent){_.focus({preventScroll:!0});return}C++<20&&(w=requestAnimationFrame(b))};return w=requestAnimationFrame(b),()=>cancelAnimationFrame(w)},[y]),o.useEffect(()=>()=>{g.current?.focus?.({preventScroll:!0})},[]);const f=o.useCallback((w,C,b)=>{if(w){if(Array.isArray(w.children)&&w.children.length){c(_=>[..._.slice(0,p),{ci:C,ii:b}]);return}try{typeof w.onClick=="function"&&w.onClick()}catch{}try{w&&w.closeOnSelect&&typeof t=="function"&&t()}catch{}}},[t,p]);return n.jsxs("div",{className:`tooltip-menu tooltip-menu--${r} ${a}`,children:[(d.length>1||u.title)&&n.jsxs("div",{className:"tooltip-menu__header",children:[d.length>1?n.jsx(pe,{htmlType:"button",size:i,type:"dot",icon:"chevron-left",ariaLabel:s("common.back","\uB4A4\uB85C"),onClick:m,variant:"transparent-gray",useBorder:!1}):null,n.jsx("div",{className:"tooltip-menu__title button-1",children:u.title})]}),n.jsx("div",{className:"tooltip-menu__columns",ref:h,children:u.columns&&u.columns.map((w,C)=>n.jsxs("div",{className:"tooltip-menu__column",children:[w.title?n.jsx("div",{className:"tooltip-menu__column-title body-3",children:w.title}):null,n.jsx("div",{className:"tooltip-menu__items",children:(w.items||[]).map((b,_)=>n.jsxs(o.Fragment,{children:[b.separatorBefore&&_>0&&n.jsx("div",{className:"tooltip-menu__separator",role:"separator"}),n.jsx(pe,{htmlType:"button",className:"tooltip-menu__item",size:i,type:b.label?"bar":"dot",icon:b.selected?"check":b.icon||"none",rightIcon:Array.isArray(b.children)&&b.children.length?"chevron-right":b.badgeCount?n.jsx(ft,{type:"dot",position:"inline",number:Math.min(b.badgeCount,99),size:24,"aria-hidden":!0}):void 0,label:b.label,ariaLabel:b.label&&b.badgeCount&&b.badgeCount>0?s("nav.badgeLabel",{label:b.label,count:b.badgeCount,defaultValue:"{{label}}, {{count}}\uAC1C"}):b.label,onClick:()=>f(b,C,_),selected:b.selected,disabled:b.disabled,showTooltipInfo:b.tooltip||!1,useBorder:!1,align:"left"})]},_))})]},C))})]})}const ll=".content-area";function Xr(e,t="Nav"){try{const a=typeof e=="string"?document.querySelector(e):e?.current??document.querySelector(ll);if(a){a.scrollTop=0;return}const r=document.scrollingElement??document.documentElement;r&&r.scrollHeight<=r.clientHeight&&fn("nav-scroll-container",`[${t}] \uBCF8\uBB38\uC744 \uB9E8 \uC704\uB85C \uB418\uB3CC\uB9B4 \uD1B5\uC744 \uBABB \uCC3E\uC558\uB2E4(\uAE30\uBCF8 ${ll}) \u2014 \uCC3D\uB3C4 \uAD6C\uB97C \uC218 \uC5C6\uC5B4 \uC544\uBB34 \uC77C\uB3C4 \uD558\uC9C0 \uC54A\uB294\uB2E4. scrollContainer \uB85C \uD1B5\uC744 \uC54C\uB824 \uC900\uB2E4.`),window.scrollTo({top:0})}catch{}}const Jr=52,Ua=10,cl=e=>e&&e>0?e:0;function ul({items:e=[],activeKey:t,onChange:a,appMode:r,onAppModeChange:s,moreItems:i=[],scrollContainer:l}){const{t:c}=be.useTranslation(),d=r==="manager"?"malgwi":"manager",u=r==="manager"?"arrow-left":"arrow-right",p=r==="manager"?c("nav.modeLabelMalgwi","\uB9D0\uADC0"):c("nav.modeLabelManager","\uB9D0\uADC0 \uB9E4\uB2C8\uC800"),m=o.useRef(null),[h,g]=o.useState(0),y=e.length;o.useEffect(()=>{const G=m.current;if(!G)return;const W=()=>{const D=typeof getComputedStyle=="function"?getComputedStyle(G):null,O=G.clientWidth-(parseFloat(D?.paddingLeft??"")||0)-(parseFloat(D?.paddingRight??"")||0),P=G.querySelector(".bottom-nav__left"),H=P?.nextElementSibling,$=(P?.offsetWidth??0)+(P&&H?.classList.contains("bottom-nav__divider")?H.offsetWidth:0);g(Math.max(0,O-$))};if(W(),typeof ResizeObserver>"u")return;const L=new ResizeObserver(W);return L.observe(G),()=>L.disconnect()},[]);const f=Jr+1,w=G=>Math.max(0,Math.floor((G+Ua)/(Jr+Ua))),C=y*(Jr+Ua)-Ua<=h,b=h<=0||i.length===0&&C?y:Math.min(y,w(h-f)),_=h>0&&b<y,x=_?b:y,k=e.slice(0,x),v=e.slice(x),B=_||i.length>0,A=o.useCallback((G,W)=>({position:"fixed",bottom:window.innerHeight-G.top+8,right:window.innerWidth-G.right,zIndex:va(W)}),[]),N=o.useId(),{open:E,toggle:T,close:I,style:R,triggerRef:V,menuRef:j}=xa({computeStyle:A,onScroll:"ignore",onResize:"reposition"}),M=o.useCallback((G,W)=>W>0?c("nav.badgeLabel",{label:G,count:W,defaultValue:"{{label}}, {{count}}\uAC1C"}):G,[c]),F=o.useCallback(()=>s?.(d),[s,d]),U=o.useMemo(()=>v.find(G=>!!G.key&&G.key===t)??i.find(G=>G.selected||G.key&&G.key===t),[v,t,i]),Q=o.useMemo(()=>[{items:[...v.map(G=>({label:G.label,icon:G.icon,badgeCount:G.badgeCount,selected:!!G.key&&G.key===t,closeOnSelect:!0,disabled:G.state==="disabled",onClick:()=>{G.state!=="disabled"&&(G.key&&a&&(a(G.key),Xr(l,"BottomNav")),I())}})),...i.map(G=>({label:G.label,icon:G.icon,badgeCount:G.badgeCount,selected:G.selected??(!!G.key&&G.key===t),closeOnSelect:!0,onClick:()=>{G.onClick?.(),I()}}))]}],[v,i,t,a,I]),z=[...v,...i].reduce((G,W)=>G+cl(W.badgeCount),0);return n.jsxs("nav",{className:"bottom-nav",ref:m,"aria-label":c("nav.bottomNav","\uD558\uB2E8 \uB124\uBE44\uAC8C\uC774\uC158"),children:[s&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"bottom-nav__left",children:n.jsx(pe,{htmlType:"button",size:52,type:"dot",icon:u,ariaLabel:p,className:"bottom-nav-item",onClick:F})}),n.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"})]}),n.jsx("div",{className:"bottom-nav__items",children:k.map((G,W)=>{const L=cl(G.badgeCount);return n.jsxs("span",{className:"bottom-nav__slot",children:[n.jsx(pe,{htmlType:"button",size:52,type:"dot",icon:G.icon,ariaLabel:M(G.label,L),selected:!!G.key&&G.key===t,disabled:G.state==="disabled",className:"bottom-nav-item",onClick:()=>{G.key&&(a?.(G.key),Xr(l,"BottomNav"))}}),L>0&&n.jsx("span",{"aria-hidden":"true",children:n.jsx(ft,{type:"dot",position:"top-right",number:Math.min(L,99),size:24})})]},G.key??`__slot-${W}`)})}),B&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"}),n.jsx("div",{className:"bottom-nav__right",children:n.jsxs("div",{ref:V,className:"bottom-nav__slot",children:[n.jsx(pe,{htmlType:"button",size:52,type:"dot",icon:U?.icon??"ellipsis",ariaLabel:M(U?.label??c("nav.more","\uB354\uBCF4\uAE30"),z),selected:!!U,className:"bottom-nav-item",onClick:T,"aria-expanded":E,"aria-controls":E?N:void 0}),z>0&&n.jsx("span",{"aria-hidden":"true",children:n.jsx(ft,{type:"dot",position:"top-right",number:Math.min(z,99),size:24})}),E&&Ut.createPortal(n.jsx("div",{id:N,role:"group","aria-label":c("nav.moreMenu","\uB354\uBCF4\uAE30 \uBA54\uB274"),className:"tooltip-content",style:R,ref:j,children:n.jsx(_a,{columns:Q,onClose:I})}),document.body)]})})]})]})}function dl(e){if(typeof e!="string")return!1;let t="";for(const r of e){const s=r.charCodeAt(0);s<=32||s>=127&&s<=159||(t+=r)}if(!t)return!1;const a=/^([a-zA-Z][a-zA-Z0-9+.-]*):/.exec(t);return a?["http","https","mailto","tel"].includes(a[1].toLowerCase()):!0}function pl(e,t,a){return a&&a>0?e("nav.badgeLabel",{label:t,count:a,defaultValue:"{{label}}, {{count}}\uAC1C"}):t}function fb(e){const{t}=be.useTranslation(),{activeKey:a,unreadCount:r,onDebug:s,onNotification:i,onSetting:l,onHelp:c,onFeedback:d,onAccount:u}=e||{},p="default";return s||i||l||c||d||u?n.jsxs("div",{className:"side-nav__footer",children:[s&&n.jsx(pe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:p,icon:"terminal",ariaLabel:t("nav.debug","\uB514\uBC84\uADF8"),onClick:s,selected:a==="debug"}),i&&n.jsxs("span",{className:"side-nav__notification-wrap",children:[n.jsx(pe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:p,icon:"bell",ariaLabel:pl(t,t("nav.notifications","\uC54C\uB9BC"),r),onClick:i,selected:a==="notifications"}),!!r&&r>0&&n.jsx(ft,{type:"dot",number:Math.min(r,99),size:24,"aria-hidden":!0})]}),l&&n.jsx(pe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:p,icon:"settings",ariaLabel:t("nav.settings","\uC124\uC815"),onClick:l,selected:a==="settings"}),c&&n.jsx(pe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:p,icon:"message-circle-question-mark",ariaLabel:t("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:c,selected:a==="help"}),d&&n.jsx(pe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:p,icon:"bug",ariaLabel:t("nav.feedback","\uBC84\uADF8\uC2E0\uACE0"),onClick:d,selected:a==="feedback"}),u&&n.jsx(pe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:p,icon:"user-round",ariaLabel:t("nav.account","\uACC4\uC815"),onClick:u,selected:a==="account"})]}):null}function ml(e){const{t}=be.useTranslation(),{item:a,itemKey:r,label:s,icon:i,active:l,onClick:c,style:d,state:u,labelStyle:p}=e||{},m=a?.key??r??"",h=a?.label??s??"",g=a?.icon??i??"",y=a?.badge??0,f=n.jsx("span",{className:"side-nav__icon-wrap",children:n.jsx(Ue,{icon:g,label:typeof h=="string"?h:void 0,className:"side-nav__icon",maskClassName:"side-nav__icon-image",imgClassName:void 0,svgClassName:void 0})}),w=u==="disabled",C=`side-nav__item ${l?"active":""} ${u||""} ${w?"disabled":""} ${a?.child?"side-nav__item--child":""}`,b=o.useCallback(_=>{if(w)return;const x=_.detail>0;if(x)try{_.currentTarget.blur()}catch{}c?.(m,_.currentTarget,x)},[w,m,c]);return n.jsxs("button",{type:"button",className:C,onClick:b,"aria-label":typeof h=="string"?pl(t,h,y):void 0,"aria-current":l?"page":void 0,style:d,"aria-disabled":w,children:[f,n.jsx("span",{className:"side-nav__label button-1 f",style:p,children:h}),y>0&&n.jsx(ft,{type:"dot",position:"inline",number:Math.min(y,99),size:24,"aria-hidden":!0}),u==="loading"&&n.jsx("span",{className:"side-nav__spinner",role:"img","aria-label":t("loader.loading","\uBD88\uB7EC\uC624\uB294 \uC911\u2026")})]})}function hl(e){const{t}=be.useTranslation(),{items:a=[],activeKey:r,onChange:s,unreadCount:i,onDebug:l,onNotification:c,onAccount:d,onSetting:u,onHelp:p,onFeedback:m,appMode:h,onAppModeChange:g,scrollContainer:y}=e||{},f=h==="manager",w=o.useCallback(()=>g?.(f?"malgwi":"manager"),[g,f]),C=o.useRef(null),[b,_]=o.useState(null);o.useEffect(()=>{const A=C.current;if(!A)return;const N=()=>{const{scrollHeight:T,clientHeight:I,scrollTop:R}=A;if(T<=I+1){_(null);return}const V=Math.max(24,I/T*I),j=I-V,M=T-I;_({top:Math.round(R/M*j),height:Math.round(V)})};N(),A.addEventListener("scroll",N,{passive:!0});const E=typeof ResizeObserver<"u"?new ResizeObserver(N):null;E?.observe(A);for(const T of Array.from(A.children))E?.observe(T);return()=>{A.removeEventListener("scroll",N),E?.disconnect()}},[a]);const x=o.useRef(null),k=o.useCallback(A=>{const N=C.current;N&&(A.preventDefault(),x.current={y:A.clientY,top:N.scrollTop},A.currentTarget.setPointerCapture(A.pointerId))},[]),v=o.useCallback(A=>{const N=C.current,E=x.current;!N||!E||(N.scrollTop=E.top+(A.clientY-E.y)*(N.scrollHeight/N.clientHeight))},[]),B=o.useCallback(A=>{x.current=null,A.currentTarget.hasPointerCapture(A.pointerId)&&A.currentTarget.releasePointerCapture(A.pointerId)},[]);return n.jsxs("nav",{ref:C,"aria-label":t("nav.mainMenu","\uBA54\uC778 \uBA54\uB274"),className:"side-nav__menu",children:[b&&n.jsx("div",{className:"side-nav__scroll","aria-hidden":"true",children:n.jsx("div",{className:"side-nav__scroll-thumb",style:{top:b.top,height:b.height},onPointerDown:k,onPointerMove:v,onPointerUp:B,onPointerCancel:B})}),n.jsxs("div",{className:"side-nav__menu-list",children:[(a||[]).filter(A=>!A.section&&(A.key||A.label)).map((A,N)=>n.jsxs(o.Fragment,{children:[A.divider&&n.jsx("div",{className:"side-nav__separator"}),n.jsx(ml,{item:A,active:!!A.key&&A.key===r,state:A.disabled?"disabled":void 0,onClick:(E,T,I)=>{if(A.disabled)return;if(A.href){if(dl(A.href)&&window.open(A.href,"_blank","noopener,noreferrer"),I)try{T?.blur()}catch{}return}if(s?.(A.key),Xr(y,"SideNav"),!I)return;try{T?.blur()}catch{}if(typeof window<"u"&&window.matchMedia){if(!window.matchMedia("(min-width: 768px) and (max-width: 1023px)").matches)return}else return;const R=document.querySelector(".header");if(R){const V=typeof R.matches=="function";if(!(window.matchMedia("(hover: hover)").matches&&V&&R.matches(":hover"))){R.classList.add("header--force-collapsed");const j=()=>{R.classList.remove("header--force-collapsed"),R.removeEventListener("mouseenter",j)};R.addEventListener("mouseenter",j)}}}})]},A.key??`side-nav__item-${N}`)),g&&n.jsx("div",{className:"side-nav__separator side-nav__separator--short"}),g&&n.jsx(ml,{item:{key:"__mode-switch__",label:f?t("nav.goToMalgwi","\uB9D0\uADC0\uB85C \uC774\uB3D9"):t("nav.goToManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800\uB85C \uC774\uB3D9"),icon:f?"arrow-left":"arrow-right"},onClick:w})]}),n.jsx(fb,{activeKey:r,unreadCount:i,onDebug:l,onNotification:c,onAccount:d,onSetting:u,onHelp:p,onFeedback:m})]})}var Qr='data:image/svg+xml,<svg width="200" height="100" viewBox="0 0 200 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2080_3066)">%0A<path d="M96.4287 48.3536V24.2572H127.047V48.3536H96.4287ZM142.975 69.1536V76.3607H98.2144V60.6393H132.679V58.5107H98.0787V51.3036H142.429V67.025H108.104V69.1536H142.979H142.975ZM106.247 32.5643V39.9786H117.3V32.5643H106.247ZM148.329 40.3893H142.425V49.45H132.539V23.6357H142.425V30.8429H148.329V40.3857V40.3893Z" fill="black"/>%0A<path d="M185.536 47.8714V57.275C182.743 58.5571 178.371 59.1964 172.425 59.1964H171.807V76.3607H161.921V59.1964H149.704V49.7929H172.564C178.421 49.7929 182.746 49.1536 185.539 47.8714H185.536ZM152.586 34.2786V24.875H181.282V47.05H171.396V34.2821H152.586V34.2786ZM198.307 76.3607H188.421V23.6393H198.307V76.3643V76.3607Z" fill="black"/>%0A<path d="M46.4288 17.8571H25.0002C15.138 17.8571 7.14307 25.852 7.14307 35.7143V57.1428C7.14307 67.0051 15.138 75 25.0002 75H46.4288C56.291 75 64.2859 67.0051 64.2859 57.1428V35.7143C64.2859 25.852 56.291 17.8571 46.4288 17.8571Z" fill="%234DCDC0"/>%0A<path d="M34.8607 50.7393C25.8285 60.6821 10.6142 61.6678 0.385667 53.1643C-0.0821902 52.775 -0.13219 52.0678 0.278524 51.6178L16.3535 33.925L34.8607 50.7393Z" fill="%234DCDC0"/>%0A<path d="M53.5714 25H32.1428C22.2821 25 14.2856 32.9964 14.2856 42.8571V64.2857C14.2856 74.1464 22.2821 82.1429 32.1428 82.1429H48.2535C49.2178 82.1429 49.9999 82.925 49.9999 83.8893C49.9999 84.9107 50.8749 85.7214 51.8928 85.6321C62.8392 84.675 71.4285 75.4821 71.4285 64.2857V42.8571C71.4285 32.9964 63.4321 25 53.5714 25Z" fill="%234DCDC0"/>%0A<path d="M24.9999 25C19.0821 25 14.2856 29.7964 14.2856 35.7143V64.2857C14.2856 67.3786 15.0749 70.2893 16.4571 72.8286C18.9928 74.2143 21.9035 75 24.9999 75H53.5714C59.4892 75 64.2856 70.2036 64.2856 64.2857V35.7143C64.2856 32.6214 63.4964 29.7107 62.1142 27.1714C59.5785 25.7857 56.6678 25 53.5714 25H24.9999Z" fill="%23499CDF"/>%0A<path d="M25.357 40.7143C25.357 39.5308 24.3976 38.5714 23.2141 38.5714C22.0307 38.5714 21.0713 39.5308 21.0713 40.7143V45C21.0713 46.1834 22.0307 47.1428 23.2141 47.1428C24.3976 47.1428 25.357 46.1834 25.357 45V40.7143Z" fill="white"/>%0A<path d="M36.0715 57.1429C35.0287 57.1429 33.9822 56.875 33.0358 56.3286C32.1822 55.8357 31.8894 54.7429 32.3858 53.8893C32.8787 53.0357 33.9715 52.7429 34.8251 53.2393C35.8037 53.8036 37.043 53.6429 37.8394 52.8464C38.2251 52.4607 38.468 51.9714 38.543 51.4357C38.8644 49.1607 39.868 47 41.4501 45.1857C42.393 44.1071 42.8894 42.7214 42.8537 41.2857C42.7787 38.3536 40.4322 35.9107 37.5072 35.7286C36.5215 35.6679 35.5715 35.8464 34.693 36.2679C33.8037 36.6929 32.7358 36.3107 32.3144 35.4214C31.8894 34.5321 32.2715 33.4643 33.1608 33.0429C34.5751 32.3714 36.1537 32.0679 37.7322 32.1643C42.4894 32.4607 46.3072 36.4286 46.4251 41.1964C46.4822 43.5286 45.6715 45.7786 44.143 47.5357C43.018 48.825 42.3037 50.3464 42.0822 51.9357C41.8965 53.2464 41.3037 54.4357 40.368 55.375C39.2001 56.5429 37.6465 57.15 36.0751 57.15L36.0715 57.1429Z" fill="white"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2080_3066">%0A<rect width="200" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',eo='data:image/svg+xml,<svg width="371" height="100" viewBox="0 0 371 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7374)">%0A<path d="M237.151 26.0393V72.7214H216.65V26.0393H237.151ZM234.408 70.0464V28.7179H219.254V70.0464H234.408ZM261.495 76.3607H258.819V48.9679H247.575V75.4679H244.899V23.9821H247.575V46.2929H258.819V23.6393H261.495V76.3643V76.3607Z" fill="black"/>%0A<path d="M299.722 69.2571C302.076 68.775 304.031 68.1464 305.583 67.3679V70.1143C304.074 70.9393 302.144 71.5786 299.789 72.0357C297.435 72.4929 295.045 72.7214 292.623 72.7214H272.257V25.6964H275V69.975H292.623C294.998 69.975 297.364 69.7357 299.722 69.2536V69.2571ZM311.69 76.4321V23.6393H314.433V76.3643L311.69 76.4321Z" fill="black"/>%0A<path d="M340.556 47.9393L358.179 70.4572L356.053 72.1036L339.872 51.1643C338.409 57.3429 336.329 62.2643 333.632 65.925C330.935 69.5857 327.736 71.8536 324.033 72.7215V69.975C327.279 69.15 330.044 66.8643 332.33 63.1107C334.617 59.3572 336.354 54.5179 337.542 48.5893C338.73 42.6643 339.369 36.0393 339.461 28.7143H324.992V26.0357H356.602V28.7143H342.201C342.155 35.9 341.605 42.3072 340.556 47.9357V47.9393ZM369.22 76.3607H366.477V47.4572H352.418V44.7786H366.477V23.6357H369.22V76.3607Z" fill="black"/>%0A<path d="M92.8784 48.3536V24.2572H123.461V48.3536H92.8784ZM139.371 69.1536V76.3607H94.6621V60.6393H129.087V58.5107H94.5265V51.3036H138.825V67.025H104.54V69.1536H139.375H139.371ZM102.685 32.5643V39.9786H113.726V32.5643H102.685ZM144.719 40.3893H138.822V49.45H128.947V23.6357H138.822V30.8429H144.719V40.3857V40.3893Z" fill="black"/>%0A<path d="M181.886 47.8714V57.275C179.097 58.5571 174.73 59.1964 168.791 59.1964H168.174V76.3607H158.299V59.1964H146.096V49.7929H168.93C174.78 49.7929 179.1 49.1536 181.89 47.8714H181.886ZM148.971 34.2786V24.875H177.634V47.05H167.76V34.2821H148.971V34.2786ZM194.64 76.3607H184.765V23.6393H194.64V76.3643V76.3607Z" fill="black"/>%0A<path d="M48.1549 17.8571H26.7511C16.9002 17.8571 8.91455 25.852 8.91455 35.7143V57.1428C8.91455 67.0051 16.9002 75 26.7511 75H48.1549C58.0058 75 65.9915 67.0051 65.9915 57.1428V35.7143C65.9915 25.852 58.0058 17.8571 48.1549 17.8571Z" fill="%234DCDC0"/>%0A<path d="M36.6007 50.7393C27.579 60.6821 12.3823 61.6678 2.1655 53.1643C1.69818 52.775 1.64824 52.0678 2.05848 51.6178L18.1149 33.925L36.6007 50.7393Z" fill="%234DCDC0"/>%0A<path d="M55.2897 25H33.8859C24.0365 25 16.0493 32.9964 16.0493 42.8571V64.2857C16.0493 74.1464 24.0365 82.1429 33.8859 82.1429H49.978C50.9412 82.1429 51.7224 82.925 51.7224 83.8893C51.7224 84.9107 52.5964 85.7214 53.6131 85.6321C64.5469 84.675 73.1262 75.4821 73.1262 64.2857V42.8571C73.1262 32.9964 65.139 25 55.2897 25Z" fill="%234DCDC0"/>%0A<path d="M26.7512 25C20.8402 25 16.0493 29.7964 16.0493 35.7143V64.2857C16.0493 67.3786 16.8377 70.2893 18.2182 72.8286C20.751 74.2143 23.6584 75 26.7512 75H55.2897C61.2007 75 65.9916 70.2036 65.9916 64.2857V35.7143C65.9916 32.6214 65.2032 29.7107 63.8227 27.1714C61.2899 25.7857 58.3826 25 55.2897 25H26.7512Z" fill="%23499CDF"/>%0A<path d="M27.1079 40.7143C27.1079 39.5308 26.1496 38.5714 24.9675 38.5714C23.7854 38.5714 22.8271 39.5308 22.8271 40.7143V45C22.8271 46.1834 23.7854 47.1428 24.9675 47.1428C26.1496 47.1428 27.1079 46.1834 27.1079 45V40.7143Z" fill="white"/>%0A<path d="M37.8097 57.1429C36.768 57.1429 35.7228 56.875 34.7775 56.3286C33.9249 55.8357 33.6323 54.7429 34.1282 53.8893C34.6205 53.0357 35.7121 52.7429 36.5647 53.2393C37.5421 53.8036 38.78 53.6429 39.5755 52.8464C39.9608 52.4607 40.2033 51.9714 40.2782 51.4357C40.5993 49.1607 41.6017 47 43.182 45.1857C44.1238 44.1071 44.6197 42.7214 44.584 41.2857C44.5091 38.3536 42.1653 35.9107 39.2437 35.7286C38.2556 35.6679 37.3102 35.8464 36.4327 36.2679C35.5444 36.6929 34.4778 36.3107 34.0569 35.4214C33.6323 34.5321 34.014 33.4643 34.9023 33.0429C36.315 32.3714 37.8917 32.0679 39.4685 32.1643C44.2201 32.4607 48.0336 36.4286 48.1513 41.1964C48.2084 43.5286 47.3986 45.7786 45.8718 47.5357C44.7481 48.825 44.0346 50.3464 43.8134 51.9357C43.6279 53.2464 43.0358 54.4357 42.1011 55.375C40.9346 56.5429 39.3828 57.15 37.8132 57.15L37.8097 57.1429Z" fill="white"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7374">%0A<rect width="371" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',Cb='data:image/svg+xml,<svg width="100" height="100" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2175_65214)">%0A<path d="M57.1427 17.8571H35.7141C25.8518 17.8571 17.8569 25.852 17.8569 35.7143V57.1428C17.8569 67.0051 25.8518 75 35.7141 75H57.1427C67.0049 75 74.9998 67.0051 74.9998 57.1428V35.7143C74.9998 25.852 67.0049 17.8571 57.1427 17.8571Z" fill="%234DCDC0"/>%0A<path d="M45.575 50.7393C36.5429 60.6821 21.3286 61.6678 11.1 53.1643C10.6322 52.775 10.5822 52.0678 10.9929 51.6178L27.0679 33.925L45.575 50.7393Z" fill="%234DCDC0"/>%0A<path d="M64.2857 25H42.8571C32.9964 25 25 32.9964 25 42.8571V64.2857C25 74.1464 32.9964 82.1429 42.8571 82.1429H58.9679C59.9321 82.1429 60.7143 82.925 60.7143 83.8893C60.7143 84.9107 61.5893 85.7214 62.6071 85.6321C73.5536 84.675 82.1429 75.4821 82.1429 64.2857V42.8571C82.1429 32.9964 74.1464 25 64.2857 25Z" fill="%234DCDC0"/>%0A<path d="M35.7143 25C29.7964 25 25 29.7964 25 35.7143V64.2857C25 67.3786 25.7893 70.2893 27.1714 72.8286C29.7071 74.2143 32.6179 75 35.7143 75H64.2857C70.2036 75 75 70.2036 75 64.2857V35.7143C75 32.6214 74.2107 29.7107 72.8286 27.1714C70.2929 25.7857 67.3821 25 64.2857 25H35.7143Z" fill="%23499CDF"/>%0A<path d="M36.0714 40.7143C36.0714 39.5308 35.112 38.5714 33.9285 38.5714C32.745 38.5714 31.7856 39.5308 31.7856 40.7143V45C31.7856 46.1834 32.745 47.1428 33.9285 47.1428C35.112 47.1428 36.0714 46.1834 36.0714 45V40.7143Z" fill="white"/>%0A<path d="M46.7859 57.1429C45.743 57.1429 44.6966 56.875 43.7502 56.3286C42.8966 55.8357 42.6037 54.7429 43.1002 53.8893C43.593 53.0357 44.6859 52.7429 45.5395 53.2393C46.518 53.8036 47.7573 53.6429 48.5537 52.8464C48.9395 52.4607 49.1823 51.9714 49.2573 51.4357C49.5787 49.1607 50.5823 47 52.1645 45.1857C53.1073 44.1071 53.6037 42.7214 53.568 41.2857C53.493 38.3536 51.1466 35.9107 48.2216 35.7286C47.2359 35.6679 46.2859 35.8464 45.4073 36.2679C44.5145 36.6929 43.4502 36.3107 43.0287 35.4214C42.6037 34.5321 42.9859 33.4643 43.8752 33.0429C45.2895 32.3714 46.868 32.0679 48.4466 32.1643C53.2002 32.4607 57.0216 36.4286 57.1395 41.1964C57.1966 43.5286 56.3859 45.7786 54.8573 47.5357C53.7323 48.825 53.018 50.3464 52.7966 51.9357C52.6109 53.2464 52.018 54.4357 51.0823 55.375C49.9145 56.5429 48.3609 57.15 46.7895 57.15L46.7859 57.1429Z" fill="white"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2175_65214">%0A<rect width="100" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A';function fl({appMode:e}){const{t}=be.useTranslation(),a=e==="manager",r=a?eo:Qr,s=Cb;return n.jsxs("div",{className:"brand-identity__root","aria-label":t("header.biArea","BI \uC601\uC5ED"),children:[n.jsx("img",{src:s,alt:t("header.biSymbol","BI \uC2EC\uBCFC"),className:"brand-identity__image brand-identity__image--symbol"}),n.jsx("img",{src:r,alt:a?t("header.logoManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800 \uB85C\uACE0"):t("header.logoMalgwi","\uB9D0\uADC0 \uB85C\uACE0"),className:"brand-identity__image brand-identity__image--logo"})]})}function Cl({activeKey:e,onChange:t,items:a,malgwiItems:r,managerItems:s,unreadCount:i,onDebug:l,onNotification:c,onAccount:d,onSetting:u,onHelp:p,onFeedback:m,appMode:h,onAppModeChange:g,scrollContainer:y}){const{t:f}=be.useTranslation(),w=Zt("(max-width: 767px)"),C=o.useMemo(()=>(a??[]).filter(R=>!R.section&&(R.key||R.label)).map(R=>({key:R.key,label:typeof R.label=="string"?R.label:void 0,icon:R.icon,state:R.disabled?"disabled":void 0,badgeCount:R.badge})),[a]),b=o.useCallback(R=>{const V=a?.find(j=>j.key===R);if(!V?.disabled){if(V?.href){dl(V.href)&&window.open(V.href,"_blank","noopener,noreferrer");return}t?.(R)}},[a,t]),_=o.useMemo(()=>{const R=[];return l&&R.push({key:"debug",icon:"terminal",label:f("nav.debug","\uB514\uBC84\uADF8"),onClick:l}),c&&R.push({key:"notifications",icon:"bell",label:f("nav.notifications","\uC54C\uB9BC"),badgeCount:i,onClick:c}),u&&R.push({key:"settings",icon:"settings",label:f("nav.settings","\uC124\uC815"),onClick:u}),p&&R.push({key:"help",icon:"message-circle-question-mark",label:f("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:p}),m&&R.push({key:"feedback",icon:"bug",label:f("nav.feedback","\uBC84\uADF8\uC2E0\uACE0"),onClick:m}),d&&R.push({key:"account",icon:"user-round",label:f("nav.account","\uACC4\uC815"),onClick:d}),R},[f,l,c,u,p,m,d,i]),x=o.useCallback((R,V)=>({position:"fixed",top:R.bottom+8,right:Math.max(8,window.innerWidth-R.right),zIndex:va(V)}),[]),k=o.useId(),{open:v,toggle:B,close:A,style:N,triggerRef:E,menuRef:T}=xa({computeStyle:x,onScroll:"ignore",onResize:"reposition"}),I=o.useMemo(()=>[{items:_.map(R=>({label:R.label,icon:R.icon,badgeCount:R.badgeCount,selected:R.selected??(!!R.key&&R.key===e),closeOnSelect:!0,onClick:()=>{R.onClick?.(),A()}}))}],[_,e,A]);return n.jsxs("aside",{className:`header${h==="manager"?" header--manager":""}`,children:[n.jsxs("div",{className:"header__bi",children:[n.jsx(fl,{appMode:h}),n.jsxs("div",{className:"header__menu-button",ref:E,children:[n.jsx(pe,{htmlType:"button",size:48,type:"dot",shape:"pill",variant:"default",useBorder:!1,icon:"menu",ariaLabel:c&&i&&i>0?f("nav.badgeLabel",{label:f("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),count:i,defaultValue:"{{label}}, {{count}}\uAC1C"}):f("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),onClick:B,"aria-expanded":v,"aria-controls":v?k:void 0}),!!c&&!!i&&i>0&&n.jsx(ft,{type:"dot",number:Math.min(i,99),size:24,"aria-hidden":!0}),v&&Ut.createPortal(n.jsx("div",{id:k,role:"group","aria-label":f("header.utilMenu","\uC720\uD2F8\uB9AC\uD2F0 \uBA54\uB274"),className:"tooltip-content",style:N,ref:T,children:n.jsx(_a,{columns:I,onClose:A})}),document.body)]})]}),n.jsx(hl,{scrollContainer:y,items:a,activeKey:e??void 0,onChange:t,unreadCount:i,onDebug:l,onNotification:c,onAccount:d,onSetting:u,onHelp:p,onFeedback:m,appMode:h,onAppModeChange:g}),w&&n.jsx(ul,{items:C,activeKey:e??void 0,onChange:b,scrollContainer:y,appMode:h,onAppModeChange:g})]})}const gb=Cl,bb=()=>At.t("passCard.planSuffix","\uC774\uC6A9\uAD8C");function gl(e){if(!(e==null||e==="")){if(typeof e=="string"&&/^\s*\d[\d,]*\s*$/.test(e)){const t=Number(e.replace(/[,\s]/g,""));if(Number.isFinite(t))return Yn(`${t.toLocaleString("ko-KR")}\uC6D0`)}return Yn(typeof e=="number"?`${e.toLocaleString("ko-KR")}\uC6D0`:e)}}function yb(e){const t=`${e.code??""} ${e.name??""}`.toLowerCase();return/manager|매니저/.test(t)?"manager":"speechear"}function vb(e){if(e.durationDays&&e.durationDays>0){const i=e.durationDays;return i%365===0?`${i/365}\uB144`:`${i}\uC77C`}const t=(e.code??"").match(/(\d+)(d|y)\b/i);if(t)return t[2].toLowerCase()==="y"?`${t[1]}\uB144`:`${t[1]}\uC77C`;const a=e.name??"",r=a.match(/(\d+\s*(?:년|개월|주|일))\s*(?:이용권)?\s*$/);if(r)return r[1].replace(/\s+/g,"");const s=a.match(/(\d+)\s*-?\s*(day|year)s?\b/i);return s?s[2].toLowerCase()==="year"?`${s[1]}\uB144`:`${s[1]}\uC77C`:a||bb()}function xb(e){const t=(e??"").match(/(\d+)(d|y)\b/i);if(!t)return null;const a=Number(t[1]);return t[2].toLowerCase()==="y"?a*365:a}function bl(e){return{type:e.type??yb(e),plan:vb(e),label:e.label,price:gl(e.price),originalPrice:gl(e.originalPrice),discountLabel:e.discountLabel}}var _b='data:image/svg+xml,<svg width="200" height="100" viewBox="0 0 200 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7326)">%0A<path d="M96.4287 48.3536V24.2572H127.047V48.3536H96.4287ZM142.975 69.1536V76.3607H98.2144V60.6393H132.679V58.5107H98.0787V51.3036H142.429V67.025H108.104V69.1536H142.979H142.975ZM106.247 32.5643V39.9786H117.3V32.5643H106.247ZM148.329 40.3893H142.425V49.45H132.539V23.6357H142.425V30.8429H148.329V40.3857V40.3893Z" fill="%23FAFAFA"/>%0A<path d="M185.536 47.8714V57.275C182.743 58.5571 178.371 59.1964 172.425 59.1964H171.807V76.3607H161.921V59.1964H149.704V49.7929H172.564C178.421 49.7929 182.746 49.1536 185.539 47.8714H185.536ZM152.586 34.2786V24.875H181.282V47.05H171.396V34.2821H152.586V34.2786ZM198.307 76.3607H188.421V23.6393H198.307V76.3643V76.3607Z" fill="%23FAFAFA"/>%0A<path opacity="0.1" d="M24.9999 25C19.0821 25 14.2856 29.7964 14.2856 35.7143V64.2857C14.2856 67.3786 15.0749 70.2893 16.4571 72.8286C18.9928 74.2143 21.9035 75 24.9999 75H53.5714C59.4892 75 64.2856 70.2036 64.2856 64.2857V35.7143C64.2856 32.6214 63.4964 29.7107 62.1142 27.1714C59.5785 25.7857 56.6678 25 53.5714 25H24.9999Z" fill="%23FAFAFA"/>%0A<path d="M14.2859 64.2857V35.7143C14.2859 29.7964 19.0823 25 25.0002 25H53.5716C56.6645 25 59.5752 25.7893 62.1145 27.1714C59.0859 21.6214 53.1966 17.8571 46.4288 17.8571H25.0002C15.1395 17.8571 7.14304 25.8535 7.14304 35.7143V44.0643L0.278759 51.6214C-0.131955 52.0714 -0.0855263 52.7785 0.385902 53.1678C2.46447 54.8964 4.75019 56.225 7.14304 57.1714C7.15376 63.9285 10.9145 69.8035 16.4573 72.8285C15.0716 70.2928 14.2859 67.3821 14.2859 64.2857Z" fill="%23FAFAFA"/>%0A<path d="M25.357 40.7143C25.357 39.5308 24.3976 38.5714 23.2141 38.5714C22.0307 38.5714 21.0713 39.5308 21.0713 40.7143V45C21.0713 46.1834 22.0307 47.1428 23.2141 47.1428C24.3976 47.1428 25.357 46.1834 25.357 45V40.7143Z" fill="%23FAFAFA"/>%0A<path d="M36.0715 57.1428C35.0287 57.1428 33.9822 56.875 33.0358 56.3285C32.1822 55.8357 31.8894 54.7428 32.3858 53.8893C32.8787 53.0357 33.9715 52.7428 34.8251 53.2393C35.8037 53.8035 37.043 53.6428 37.8394 52.8464C38.2251 52.4607 38.468 51.9714 38.543 51.4357C38.8644 49.1607 39.868 47 41.4501 45.1857C42.393 44.1071 42.8894 42.7214 42.8537 41.2857C42.7787 38.3535 40.4322 35.9107 37.5072 35.7285C36.518 35.6678 35.5715 35.85 34.693 36.2678C33.8037 36.6893 32.7358 36.3107 32.3144 35.4214C31.8894 34.5321 32.2715 33.4643 33.1608 33.0428C34.5751 32.3714 36.1572 32.0643 37.7322 32.1643C42.4894 32.4607 46.3072 36.4285 46.4251 41.1964C46.4822 43.5285 45.6715 45.7785 44.143 47.5357C43.018 48.825 42.3037 50.3464 42.0822 51.9321C41.8965 53.2428 41.3037 54.4321 40.368 55.3714C39.2001 56.5393 37.6465 57.1464 36.0751 57.1464L36.0715 57.1428Z" fill="%23FAFAFA"/>%0A<path d="M62.1142 27.1714C63.4999 29.7072 64.2856 32.6179 64.2856 35.7143V64.2857C64.2856 70.2036 59.4892 75 53.5713 75H24.9999C21.907 75 18.9963 74.2107 16.457 72.8286C19.4856 78.3786 25.3749 82.1429 32.1427 82.1429H48.2535C49.2177 82.1429 49.9999 82.925 49.9999 83.8893C49.9999 84.9107 50.8749 85.7215 51.8927 85.6322C62.8392 84.675 71.4285 75.4822 71.4285 64.2857V42.8572C71.4285 36.0893 67.6642 30.2 62.1142 27.1714Z" fill="%23FAFAFA"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7326">%0A<rect width="200" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',wb='data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?>%0A<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" viewBox="0 0 200 100">%0A <!-- Generator: Adobe Illustrator 30.4.0, SVG Export Plug-In . SVG Version: 2.1.4 Build 226) -->%0A <defs>%0A <style>%0A .st0 {%0A fill: none;%0A }%0A%0A .st1 {%0A fill: %234dcdc0;%0A }%0A%0A .st2 {%0A fill: %23499cdf;%0A }%0A%0A .st3 {%0A fill: %23fff;%0A }%0A%0A .st4 {%0A clip-path: url(%23clippath);%0A }%0A </style>%0A <clipPath id="clippath">%0A <rect class="st0" width="200" height="100"/>%0A </clipPath>%0A </defs>%0A <g class="st4">%0A <g>%0A <path class="st3" d="M96.43,48.35v-24.1h30.62v24.1h-30.62ZM142.98,69.15v7.21h-44.76v-15.72h34.46v-2.13h-34.6v-7.21h44.35v15.72h-34.33v2.13h34.88,0ZM106.25,32.56v7.41h11.05v-7.41h-11.05ZM148.33,40.39h-5.9v9.06h-9.89v-25.81h9.89v7.21h5.9v9.54h0Z"/>%0A <path class="st3" d="M185.54,47.87v9.4c-2.79,1.28-7.16,1.92-13.11,1.92h-.62v17.16h-9.89v-17.16h-12.22v-9.4h22.86c5.86,0,10.18-.64,12.98-1.92h0ZM152.59,34.28v-9.4h28.7v22.17h-9.89v-12.77h-18.81ZM198.31,76.36h-9.89V23.64h9.89v52.73h0Z"/>%0A <path class="st1" d="M46.43,17.86h-21.43c-9.86,0-17.86,7.99-17.86,17.86v21.43c0,9.86,7.99,17.86,17.86,17.86h21.43c9.86,0,17.86-7.99,17.86-17.86v-21.43c0-9.86-7.99-17.86-17.86-17.86Z"/>%0A <path class="st1" d="M34.86,50.74c-9.03,9.94-24.25,10.93-34.48,2.42-.47-.39-.52-1.1-.11-1.55l16.07-17.69,18.51,16.81Z"/>%0A <path class="st1" d="M53.57,25h-21.43c-9.86,0-17.86,8-17.86,17.86v21.43c0,9.86,8,17.86,17.86,17.86h16.11c.96,0,1.75.78,1.75,1.75,0,1.02.88,1.83,1.89,1.74,10.95-.96,19.54-10.15,19.54-21.35v-21.43c0-9.86-8-17.86-17.86-17.86Z"/>%0A <path class="st2" d="M25,25c-5.92,0-10.71,4.8-10.71,10.71v28.57c0,3.09.79,6,2.17,8.54,2.54,1.39,5.45,2.17,8.54,2.17h28.57c5.92,0,10.71-4.8,10.71-10.71v-28.57c0-3.09-.79-6-2.17-8.54-2.54-1.39-5.45-2.17-8.54-2.17h-28.57Z"/>%0A <path class="st3" d="M25.36,40.71c0-1.18-.96-2.14-2.14-2.14s-2.14.96-2.14,2.14v4.29c0,1.18.96,2.14,2.14,2.14s2.14-.96,2.14-2.14v-4.29Z"/>%0A <path class="st3" d="M36.07,57.14c-1.04,0-2.09-.27-3.04-.81-.85-.49-1.15-1.59-.65-2.44.49-.85,1.59-1.15,2.44-.65.98.56,2.22.4,3.01-.39.39-.39.63-.88.7-1.41.32-2.27,1.33-4.44,2.91-6.25.94-1.08,1.44-2.46,1.4-3.9-.07-2.93-2.42-5.38-5.35-5.56-.99-.06-1.94.12-2.81.54-.89.43-1.96.04-2.38-.85-.42-.89-.04-1.96.85-2.38,1.41-.67,2.99-.97,4.57-.88,4.76.3,8.58,4.26,8.69,9.03.06,2.33-.75,4.58-2.28,6.34-1.12,1.29-1.84,2.81-2.06,4.4-.19,1.31-.78,2.5-1.71,3.44-1.17,1.17-2.72,1.78-4.29,1.78h0Z"/>%0A </g>%0A </g>%0A</svg>',kb='data:image/svg+xml,<svg width="200" height="100" viewBox="0 0 200 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7325)">%0A<path d="M96.4287 48.3536V24.2572H127.047V48.3536H96.4287ZM142.975 69.1536V76.3607H98.2144V60.6393H132.679V58.5107H98.0787V51.3036H142.429V67.025H108.104V69.1536H142.979H142.975ZM106.247 32.5643V39.9786H117.3V32.5643H106.247ZM148.329 40.3893H142.425V49.45H132.539V23.6357H142.425V30.8429H148.329V40.3857V40.3893Z" fill="%23111111"/>%0A<path d="M185.536 47.8714V57.275C182.743 58.5571 178.371 59.1964 172.425 59.1964H171.807V76.3607H161.921V59.1964H149.704V49.7929H172.564C178.421 49.7929 182.746 49.1536 185.539 47.8714H185.536ZM152.586 34.2786V24.875H181.282V47.05H171.396V34.2821H152.586V34.2786ZM198.307 76.3607H188.421V23.6393H198.307V76.3643V76.3607Z" fill="%23111111"/>%0A<path opacity="0.1" d="M24.9999 25C19.0821 25 14.2856 29.7964 14.2856 35.7143V64.2857C14.2856 67.3786 15.0749 70.2893 16.4571 72.8286C18.9928 74.2143 21.9035 75 24.9999 75H53.5714C59.4892 75 64.2856 70.2036 64.2856 64.2857V35.7143C64.2856 32.6214 63.4964 29.7107 62.1142 27.1714C59.5785 25.7857 56.6678 25 53.5714 25H24.9999Z" fill="%23111111"/>%0A<path d="M14.2859 64.2857V35.7143C14.2859 29.7964 19.0823 25 25.0002 25H53.5716C56.6645 25 59.5752 25.7893 62.1145 27.1714C59.0859 21.6214 53.1966 17.8571 46.4288 17.8571H25.0002C15.1395 17.8571 7.14304 25.8535 7.14304 35.7143V44.0643L0.278759 51.6214C-0.131955 52.0714 -0.0855263 52.7785 0.385902 53.1678C2.46447 54.8964 4.75019 56.225 7.14304 57.1714C7.15376 63.9285 10.9145 69.8035 16.4573 72.8285C15.0716 70.2928 14.2859 67.3821 14.2859 64.2857Z" fill="%23111111"/>%0A<path d="M25.357 40.7143C25.357 39.5308 24.3976 38.5714 23.2141 38.5714C22.0307 38.5714 21.0713 39.5308 21.0713 40.7143V45C21.0713 46.1834 22.0307 47.1428 23.2141 47.1428C24.3976 47.1428 25.357 46.1834 25.357 45V40.7143Z" fill="%23111111"/>%0A<path d="M36.0715 57.1428C35.0287 57.1428 33.9822 56.875 33.0358 56.3285C32.1822 55.8357 31.8894 54.7428 32.3858 53.8893C32.8787 53.0357 33.9715 52.7428 34.8251 53.2393C35.8037 53.8035 37.043 53.6428 37.8394 52.8464C38.2251 52.4607 38.468 51.9714 38.543 51.4357C38.8644 49.1607 39.868 47 41.4501 45.1857C42.393 44.1071 42.8894 42.7214 42.8537 41.2857C42.7787 38.3535 40.4322 35.9107 37.5072 35.7285C36.518 35.6678 35.5715 35.85 34.693 36.2678C33.8037 36.6893 32.7358 36.3107 32.3144 35.4214C31.8894 34.5321 32.2715 33.4643 33.1608 33.0428C34.5751 32.3714 36.1572 32.0643 37.7322 32.1643C42.4894 32.4607 46.3072 36.4285 46.4251 41.1964C46.4822 43.5285 45.6715 45.7785 44.143 47.5357C43.018 48.825 42.3037 50.3464 42.0822 51.9321C41.8965 53.2428 41.3037 54.4321 40.368 55.3714C39.2001 56.5393 37.6465 57.1464 36.0751 57.1464L36.0715 57.1428Z" fill="%23111111"/>%0A<path d="M62.1142 27.1714C63.4999 29.7072 64.2856 32.6179 64.2856 35.7143V64.2857C64.2856 70.2036 59.4892 75 53.5713 75H24.9999C21.907 75 18.9963 74.2107 16.457 72.8286C19.4856 78.3786 25.3749 82.1429 32.1427 82.1429H48.2535C49.2177 82.1429 49.9999 82.925 49.9999 83.8893C49.9999 84.9107 50.8749 85.7215 51.8927 85.6322C62.8392 84.675 71.4285 75.4822 71.4285 64.2857V42.8572C71.4285 36.0893 67.6642 30.2 62.1142 27.1714Z" fill="%23111111"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7325">%0A<rect width="200" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',Ab='data:image/svg+xml,<svg width="371" height="100" viewBox="0 0 371 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7395)">%0A<path d="M237.151 26.0393V72.7215H216.65V26.0393H237.151ZM234.408 70.0465V28.7179H219.254V70.0465H234.408ZM261.495 76.3608H258.819V48.9679H247.575V75.4679H244.899V23.9822H247.575V46.2929H258.819V23.6393H261.495V76.3643V76.3608Z" fill="%23FAFAFA"/>%0A<path d="M299.722 69.2572C302.076 68.7751 304.031 68.1465 305.583 67.3679V70.1143C304.074 70.9393 302.144 71.5786 299.79 72.0358C297.435 72.4929 295.045 72.7215 292.623 72.7215H272.257V25.6965H275.001V69.9751H292.623C294.999 69.9751 297.364 69.7358 299.722 69.2536V69.2572ZM311.69 76.4322V23.6393H314.434V76.3643L311.69 76.4322Z" fill="%23FAFAFA"/>%0A<path d="M340.557 47.9393L358.179 70.4572L356.053 72.1036L339.872 51.1643C338.409 57.3429 336.33 62.2643 333.633 65.925C330.936 69.5857 327.736 71.8536 324.033 72.7215V69.975C327.279 69.15 330.044 66.8643 332.331 63.1107C334.617 59.3572 336.355 54.5179 337.543 48.5893C338.731 42.6643 339.369 36.0393 339.462 28.7143H324.993V26.0357H356.603V28.7143H342.201C342.155 35.9 341.606 42.3072 340.557 47.9357V47.9393ZM369.22 76.3607H366.477V47.4572H352.418V44.7786H366.477V23.6357H369.22V76.3607Z" fill="%23FAFAFA"/>%0A<path d="M92.8784 48.3536V24.2572H123.461V48.3536H92.8784ZM139.371 69.1536V76.3607H94.6621V60.6393H129.087V58.5107H94.5265V51.3036H138.825V67.025H104.54V69.1536H139.375H139.371ZM102.685 32.5643V39.9786H113.726V32.5643H102.685ZM144.719 40.3893H138.822V49.45H128.947V23.6357H138.822V30.8429H144.719V40.3857V40.3893Z" fill="%23FAFAFA"/>%0A<path d="M181.886 47.8715V57.2751C179.097 58.5572 174.73 59.1965 168.791 59.1965H168.174V76.3608H158.299V59.1965H146.096V49.7929H168.93C174.78 49.7929 179.1 49.1536 181.89 47.8715H181.886ZM148.971 34.2786V24.8751H177.634V47.0501H167.76V34.2822H148.971V34.2786ZM194.64 76.3608H184.765V23.6393H194.64V76.3643V76.3608Z" fill="%23FAFAFA"/>%0A<g opacity="0.1">%0A<path d="M26.7512 25C20.8402 25 16.0493 29.7964 16.0493 35.7143V64.2857C16.0493 67.3786 16.8377 70.2893 18.2182 72.8286C20.751 74.2143 23.6584 75 26.7512 75H55.2897C61.2007 75 65.9916 70.2036 65.9916 64.2857V35.7143C65.9916 32.6214 65.2032 29.7107 63.8227 27.1714C61.2899 25.7857 58.3826 25 55.2897 25H26.7512Z" fill="%23FAFAFA"/>%0A</g>%0A<path d="M48.155 17.8571H26.7511C16.9018 17.8571 8.91459 25.8536 8.91459 35.7143V44.0643L2.05822 51.6179C1.64798 52.0679 1.69436 52.775 2.16524 53.1643C4.24141 54.8929 6.52449 56.2214 8.91459 57.1679C8.92529 63.925 12.6817 69.8 18.2181 72.825C16.834 70.2893 16.0492 67.3786 16.0492 64.2821V35.7107C16.0492 29.7929 20.8401 24.9964 26.7511 24.9964H55.2896C58.3789 24.9964 61.2862 25.7857 63.8226 27.1679C60.7975 21.6179 54.915 17.8536 48.155 17.8536V17.8571Z" fill="%23FAFAFA"/>%0A<path d="M63.8227 27.1714C65.2068 29.7072 65.9916 32.6179 65.9916 35.7143V64.2857C65.9916 70.2036 61.2008 75 55.2897 75H26.7513C23.662 75 20.7546 74.2107 18.2183 72.8286C21.2433 78.3786 27.1258 82.1429 33.8859 82.1429H49.978C50.9412 82.1429 51.7224 82.925 51.7224 83.8893C51.7224 84.9107 52.5964 85.7215 53.6131 85.6322C64.5469 84.675 73.1263 75.4822 73.1263 64.2857V42.8572C73.1263 36.0893 69.3663 30.2 63.8227 27.1714Z" fill="%23FAFAFA"/>%0A<path d="M27.1079 40.7143C27.1079 39.5308 26.1496 38.5714 24.9675 38.5714C23.7854 38.5714 22.8271 39.5308 22.8271 40.7143V45C22.8271 46.1834 23.7854 47.1428 24.9675 47.1428C26.1496 47.1428 27.1079 46.1834 27.1079 45V40.7143Z" fill="%23FAFAFA"/>%0A<path d="M37.8097 57.1429C36.768 57.1429 35.7228 56.875 34.7775 56.3286C33.9249 55.8357 33.6323 54.7429 34.1282 53.8893C34.6205 53.0357 35.7121 52.7429 36.5647 53.2393C37.5421 53.8036 38.78 53.6429 39.5755 52.8464C39.9608 52.4607 40.2033 51.9714 40.2782 51.4357C40.5993 49.1607 41.6017 47 43.182 45.1857C44.1238 44.1071 44.6197 42.7214 44.584 41.2857C44.5091 38.3536 42.1653 35.9107 39.2437 35.7286C38.2556 35.6679 37.3102 35.8464 36.4327 36.2679C35.5444 36.6929 34.4778 36.3107 34.0569 35.4214C33.6323 34.5321 34.014 33.4643 34.9023 33.0429C36.315 32.3714 37.8917 32.0679 39.4685 32.1643C44.2201 32.4607 48.0336 36.4286 48.1513 41.1964C48.2084 43.5286 47.3986 45.7786 45.8718 47.5357C44.7481 48.825 44.0346 50.3464 43.8134 51.9357C43.6279 53.2464 43.0358 54.4357 42.1011 55.375C40.9346 56.5429 39.3828 57.15 37.8132 57.15L37.8097 57.1429Z" fill="%23FAFAFA"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7395">%0A<rect width="371" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',Bb='data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?>%0A<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" viewBox="0 0 371 100">%0A <!-- Generator: Adobe Illustrator 30.4.0, SVG Export Plug-In . SVG Version: 2.1.4 Build 226) -->%0A <defs>%0A <style>%0A .st0 {%0A fill: none;%0A }%0A%0A .st1 {%0A fill: %234dcdc0;%0A }%0A%0A .st2 {%0A fill: %23499cdf;%0A }%0A%0A .st3 {%0A fill: %23fff;%0A }%0A%0A .st4 {%0A clip-path: url(%23clippath);%0A }%0A </style>%0A <clipPath id="clippath">%0A <rect class="st0" width="371" height="100"/>%0A </clipPath>%0A </defs>%0A <g class="st4">%0A <g>%0A <path class="st3" d="M237.15,26.04v46.68h-20.5V26.04h20.5ZM234.41,70.05V28.72h-15.15v41.33h15.15ZM261.49,76.36h-2.68v-27.39h-11.24v26.5h-2.68V23.98h2.68v22.31h11.24v-22.65h2.68v52.73h0Z"/>%0A <path class="st3" d="M299.72,69.26c2.35-.48,4.31-1.11,5.86-1.89v2.75c-1.51.82-3.44,1.46-5.79,1.92-2.35.46-4.74.69-7.17.69h-20.37V25.7h2.74v44.28h17.62c2.38,0,4.74-.24,7.1-.72h0ZM311.69,76.43V23.64h2.74v52.73l-2.74.07Z"/>%0A <path class="st3" d="M340.56,47.94l17.62,22.52-2.13,1.65-16.18-20.94c-1.46,6.18-3.54,11.1-6.24,14.76-2.7,3.66-5.9,5.93-9.6,6.8v-2.75c3.25-.82,6.01-3.11,8.3-6.86,2.29-3.75,4.02-8.59,5.21-14.52,1.19-5.92,1.83-12.55,1.92-19.87h-14.47v-2.68h31.61v2.68h-14.4c-.05,7.19-.6,13.59-1.64,19.22h0ZM369.22,76.36h-2.74v-28.9h-14.06v-2.68h14.06v-21.14h2.74v52.73Z"/>%0A <path class="st3" d="M92.88,48.35v-24.1h30.58v24.1h-30.58ZM139.37,69.15v7.21h-44.71v-15.72h34.42v-2.13h-34.56v-7.21h44.3v15.72h-34.28v2.13h34.83,0ZM102.68,32.56v7.41h11.04v-7.41h-11.04ZM144.72,40.39h-5.9v9.06h-9.88v-25.81h9.88v7.21h5.9v9.54h0Z"/>%0A <path class="st3" d="M181.89,47.87v9.4c-2.79,1.28-7.16,1.92-13.1,1.92h-.62v17.16h-9.88v-17.16h-12.2v-9.4h22.83c5.85,0,10.17-.64,12.96-1.92h0ZM148.97,34.28v-9.4h28.66v22.17h-9.87v-12.77h-18.79ZM194.64,76.36h-9.88V23.64h9.88v52.73h0Z"/>%0A <path class="st1" d="M48.15,17.86h-21.4c-9.85,0-17.84,7.99-17.84,17.86v21.43c0,9.86,7.99,17.86,17.84,17.86h21.4c9.85,0,17.84-7.99,17.84-17.86v-21.43c0-9.86-7.99-17.86-17.84-17.86Z"/>%0A <path class="st1" d="M36.6,50.74c-9.02,9.94-24.22,10.93-34.44,2.42-.47-.39-.52-1.1-.11-1.55l16.06-17.69,18.49,16.81Z"/>%0A <path class="st1" d="M55.29,25h-21.4c-9.85,0-17.84,8-17.84,17.86v21.43c0,9.86,7.99,17.86,17.84,17.86h16.09c.96,0,1.74.78,1.74,1.75,0,1.02.87,1.83,1.89,1.74,10.93-.96,19.51-10.15,19.51-21.35v-21.43c0-9.86-7.99-17.86-17.84-17.86Z"/>%0A <path class="st2" d="M26.75,25c-5.91,0-10.7,4.8-10.7,10.71v28.57c0,3.09.79,6,2.17,8.54,2.53,1.39,5.44,2.17,8.53,2.17h28.54c5.91,0,10.7-4.8,10.7-10.71v-28.57c0-3.09-.79-6-2.17-8.54-2.53-1.39-5.44-2.17-8.53-2.17h-28.54Z"/>%0A <path class="st3" d="M27.11,40.71c0-1.18-.96-2.14-2.14-2.14s-2.14.96-2.14,2.14v4.29c0,1.18.96,2.14,2.14,2.14s2.14-.96,2.14-2.14v-4.29Z"/>%0A <path class="st3" d="M37.81,57.14c-1.04,0-2.09-.27-3.03-.81-.85-.49-1.15-1.59-.65-2.44.49-.85,1.58-1.15,2.44-.65.98.56,2.22.4,3.01-.39.39-.39.63-.88.7-1.41.32-2.27,1.32-4.44,2.9-6.25.94-1.08,1.44-2.46,1.4-3.9-.07-2.93-2.42-5.38-5.34-5.56-.99-.06-1.93.12-2.81.54-.89.43-1.95.04-2.38-.85-.42-.89-.04-1.96.85-2.38,1.41-.67,2.99-.97,4.57-.88,4.75.3,8.57,4.26,8.68,9.03.06,2.33-.75,4.58-2.28,6.34-1.12,1.29-1.84,2.81-2.06,4.4-.19,1.31-.78,2.5-1.71,3.44-1.17,1.17-2.72,1.78-4.29,1.78h0Z"/>%0A </g>%0A </g>%0A</svg>',Nb='data:image/svg+xml,<svg width="371" height="100" viewBox="0 0 371 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7394)">%0A<path d="M237.151 26.0393V72.7215H216.65V26.0393H237.151ZM234.408 70.0465V28.7179H219.254V70.0465H234.408ZM261.495 76.3608H258.819V48.9679H247.575V75.4679H244.899V23.9822H247.575V46.2929H258.819V23.6393H261.495V76.3643V76.3608Z" fill="%23111111"/>%0A<path d="M299.722 69.2572C302.076 68.7751 304.031 68.1465 305.583 67.3679V70.1143C304.074 70.9393 302.144 71.5786 299.79 72.0358C297.435 72.4929 295.045 72.7215 292.623 72.7215H272.257V25.6965H275.001V69.9751H292.623C294.999 69.9751 297.364 69.7358 299.722 69.2536V69.2572ZM311.69 76.4322V23.6393H314.434V76.3643L311.69 76.4322Z" fill="%23111111"/>%0A<path d="M340.557 47.9393L358.179 70.4572L356.053 72.1036L339.872 51.1643C338.409 57.3429 336.33 62.2643 333.633 65.925C330.936 69.5857 327.736 71.8536 324.033 72.7215V69.975C327.279 69.15 330.044 66.8643 332.331 63.1107C334.617 59.3572 336.355 54.5179 337.543 48.5893C338.731 42.6643 339.369 36.0393 339.462 28.7143H324.993V26.0357H356.603V28.7143H342.201C342.155 35.9 341.606 42.3072 340.557 47.9357V47.9393ZM369.22 76.3607H366.477V47.4572H352.418V44.7786H366.477V23.6357H369.22V76.3607Z" fill="%23111111"/>%0A<path d="M92.8784 48.3536V24.2572H123.461V48.3536H92.8784ZM139.371 69.1536V76.3607H94.6621V60.6393H129.087V58.5107H94.5265V51.3036H138.825V67.025H104.54V69.1536H139.375H139.371ZM102.685 32.5643V39.9786H113.726V32.5643H102.685ZM144.719 40.3893H138.822V49.45H128.947V23.6357H138.822V30.8429H144.719V40.3857V40.3893Z" fill="%23111111"/>%0A<path d="M181.886 47.8715V57.2751C179.097 58.5572 174.73 59.1965 168.791 59.1965H168.174V76.3608H158.299V59.1965H146.096V49.7929H168.93C174.78 49.7929 179.1 49.1536 181.89 47.8715H181.886ZM148.971 34.2786V24.8751H177.634V47.0501H167.76V34.2822H148.971V34.2786ZM194.64 76.3608H184.765V23.6393H194.64V76.3643V76.3608Z" fill="%23111111"/>%0A<g opacity="0.1">%0A<path d="M26.7512 25C20.8402 25 16.0493 29.7964 16.0493 35.7143V64.2857C16.0493 67.3786 16.8377 70.2893 18.2182 72.8286C20.751 74.2143 23.6584 75 26.7512 75H55.2897C61.2007 75 65.9916 70.2036 65.9916 64.2857V35.7143C65.9916 32.6214 65.2032 29.7107 63.8227 27.1714C61.2899 25.7857 58.3826 25 55.2897 25H26.7512Z" fill="%23111111"/>%0A</g>%0A<path d="M48.155 17.8571H26.7511C16.9018 17.8571 8.91459 25.8536 8.91459 35.7143V44.0643L2.05822 51.6179C1.64798 52.0679 1.69436 52.775 2.16524 53.1643C4.24141 54.8929 6.52449 56.2214 8.91459 57.1679C8.92529 63.925 12.6817 69.8 18.2181 72.825C16.834 70.2893 16.0492 67.3786 16.0492 64.2821V35.7107C16.0492 29.7929 20.8401 24.9964 26.7511 24.9964H55.2896C58.3789 24.9964 61.2862 25.7857 63.8226 27.1679C60.7975 21.6179 54.915 17.8536 48.155 17.8536V17.8571Z" fill="%23111111"/>%0A<path d="M63.8227 27.1714C65.2068 29.7072 65.9916 32.6179 65.9916 35.7143V64.2857C65.9916 70.2036 61.2008 75 55.2897 75H26.7513C23.662 75 20.7546 74.2107 18.2183 72.8286C21.2433 78.3786 27.1258 82.1429 33.8859 82.1429H49.978C50.9412 82.1429 51.7224 82.925 51.7224 83.8893C51.7224 84.9107 52.5964 85.7215 53.6131 85.6322C64.5469 84.675 73.1263 75.4822 73.1263 64.2857V42.8572C73.1263 36.0893 69.3663 30.2 63.8227 27.1714Z" fill="%23111111"/>%0A<path d="M27.1079 40.7143C27.1079 39.5308 26.1496 38.5714 24.9675 38.5714C23.7854 38.5714 22.8271 39.5308 22.8271 40.7143V45C22.8271 46.1834 23.7854 47.1428 24.9675 47.1428C26.1496 47.1428 27.1079 46.1834 27.1079 45V40.7143Z" fill="%23111111"/>%0A<path d="M37.8097 57.1429C36.768 57.1429 35.7228 56.875 34.7775 56.3286C33.9249 55.8357 33.6323 54.7429 34.1282 53.8893C34.6205 53.0357 35.7121 52.7429 36.5647 53.2393C37.5421 53.8036 38.78 53.6429 39.5755 52.8464C39.9608 52.4607 40.2033 51.9714 40.2782 51.4357C40.5993 49.1607 41.6017 47 43.182 45.1857C44.1238 44.1071 44.6197 42.7214 44.584 41.2857C44.5091 38.3536 42.1653 35.9107 39.2437 35.7286C38.2556 35.6679 37.3102 35.8464 36.4327 36.2679C35.5444 36.6929 34.4778 36.3107 34.0569 35.4214C33.6323 34.5321 34.014 33.4643 34.9023 33.0429C36.315 32.3714 37.8917 32.0679 39.4685 32.1643C44.2201 32.4607 48.0336 36.4286 48.1513 41.1964C48.2084 43.5286 47.3986 45.7786 45.8718 47.5357C44.7481 48.825 44.0346 50.3464 43.8134 51.9357C43.6279 53.2464 43.0358 54.4357 42.1011 55.375C40.9346 56.5429 39.3828 57.15 37.8132 57.15L37.8097 57.1429Z" fill="%23111111"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7394">%0A<rect width="371" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',yl='data:image/svg+xml,<svg width="100" height="100" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7305)">%0A<path d="M75.2535 24.7464C68.7892 18.2821 59.8606 14.2857 49.9999 14.2857C40.1392 14.2857 37.5214 24.5964 31.0606 31.0607C24.5964 37.525 14.2856 40.1893 14.2856 50C14.2856 59.8107 18.2821 68.7893 24.7464 75.2536C31.2106 81.7179 40.1392 85.7143 49.9999 85.7143C59.8606 85.7143 68.7892 81.7179 75.2535 75.2536C81.7178 68.7893 85.7142 59.8607 85.7142 50C85.7142 40.1393 81.7178 31.2107 75.2535 24.7464ZM62.6285 62.6286C59.3964 65.8607 54.9321 67.8571 49.9999 67.8571C45.0678 67.8571 40.6035 65.8571 37.3714 62.6286C34.1392 59.3964 32.1428 54.9321 32.1428 50C32.1428 45.0678 34.1428 40.6036 37.3714 37.3714C40.6035 34.1393 45.0678 32.1428 49.9999 32.1428C54.9321 32.1428 59.3964 34.1428 62.6285 37.3714C65.8606 40.6036 67.8571 45.0678 67.8571 50C67.8571 54.9321 65.8571 59.3964 62.6285 62.6286Z" fill="%23FAFAFA"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7305">%0A<rect width="100" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A';const Hn={text:"--pass-card-text",sub:"--pass-card-sub",copyright:"--pass-card-copyright"},to=new WeakMap;function Eb(e){if(e)return to.get(e)}function yn(e,t){e&&(e.style.setProperty(Hn.text,t.text),e.style.setProperty(Hn.sub,t.sub),t.copyrightColor&&e.style.setProperty(Hn.copyright,t.copyrightColor),to.set(e,t))}function vn(e){e&&(e.style.removeProperty(Hn.text),e.style.removeProperty(Hn.sub),e.style.removeProperty(Hn.copyright),to.delete(e))}const vl={text:"var(--color-pureBlack)",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#1a1a1a"};function xl(e={}){const t=ht(vl,yn,vn);return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-two-circle","aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg-two-circle__c1"}),n.jsx("div",{className:"pass-card-bg-two-circle__c3"}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-two-circle__symbol",style:{"--symbol-url":`url("${yl}")`}})]})}const _l="M75.2535 24.7464C68.7892 18.2821 59.8606 14.2857 49.9999 14.2857C40.1392 14.2857 37.5214 24.5964 31.0606 31.0607C24.5964 37.525 14.2856 40.1893 14.2856 50C14.2856 59.8107 18.2821 68.7893 24.7464 75.2536C31.2106 81.7178 40.1392 85.7143 49.9999 85.7143C59.8606 85.7143 68.7892 81.7178 75.2535 75.2536C81.7178 68.7893 85.7142 59.8607 85.7142 50C85.7142 40.1393 81.7178 31.2107 75.2535 24.7464Z";var wa='data:image/svg+xml,<svg width="100" height="100" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2175_65181)">%0A<path d="M75.2535 24.7464C68.7892 18.2821 59.8606 14.2857 49.9999 14.2857C40.1392 14.2857 37.5214 24.5964 31.0606 31.0607C24.5964 37.525 14.2856 40.1893 14.2856 50C14.2856 59.8107 18.2821 68.7893 24.7464 75.2536C31.2106 81.7178 40.1392 85.7143 49.9999 85.7143C59.8606 85.7143 68.7892 81.7178 75.2535 75.2536C81.7178 68.7893 85.7142 59.8607 85.7142 50C85.7142 40.1393 81.7178 31.2107 75.2535 24.7464ZM62.6285 62.6286C59.3964 65.8607 54.9321 67.8571 49.9999 67.8571C45.0678 67.8571 40.6035 65.8571 37.3714 62.6286C34.1392 59.3964 32.1428 54.9321 32.1428 50C32.1428 45.0678 34.1428 40.6036 37.3714 37.3714C40.6035 34.1393 45.0678 32.1428 49.9999 32.1428C54.9321 32.1428 59.3964 34.1428 62.6285 37.3714C65.8606 40.6036 67.8571 45.0678 67.8571 50C67.8571 54.9321 65.8571 59.3964 62.6285 62.6286Z" fill="url(%23paint0_linear_2175_65181)"/>%0A</g>%0A<defs>%0A<linearGradient id="paint0_linear_2175_65181" x1="29.6392" y1="29.6393" x2="75.2535" y2="75.2536" gradientUnits="userSpaceOnUse">%0A<stop offset="0.2" stop-color="%23499CDF"/>%0A<stop offset="0.8" stop-color="%234DCDC0"/>%0A</linearGradient>%0A<clipPath id="clip0_2175_65181">%0A<rect width="100" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A';const Db={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"},Sb=[{scale:1,opacity:.55},{scale:2,opacity:.4},{scale:3.1,opacity:.28},{scale:4.5,opacity:.18},{scale:6,opacity:.1}];function wl(e={}){const t=ht(Db,yn,vn),a="var(--color-main)",r=270,s=170;return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-sound-move","aria-hidden":"true",children:[n.jsx("svg",{className:"pass-card-bg-sound-move__svg",viewBox:"0 0 300 189",preserveAspectRatio:"xMidYMid meet",xmlns:"http://www.w3.org/2000/svg",children:Sb.map(({scale:i,opacity:l},c)=>n.jsx("g",{transform:`translate(${r} ${s}) scale(${i}) translate(-50 -50)`,opacity:l,children:n.jsx("path",{d:_l,fill:"none",stroke:a,strokeWidth:"1.5",vectorEffect:"non-scaling-stroke"})},c))}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-move__symbol",style:{"--symbol-url":`url("${wa}")`}})]})}const jb={text:"#ffffff",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",logoColor:"_white",copyrightColor:"#ffffff"},Tb=[{scale:1,opacity:.55},{scale:2,opacity:.4},{scale:3.1,opacity:.28},{scale:4.5,opacity:.18},{scale:6,opacity:.1}];function Mb(e={}){const t=ht(jb,yn,vn),a="#ffffff",r=270,s=170;return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-sound-move-v1","aria-hidden":"true",children:[n.jsx("svg",{className:"pass-card-bg-sound-move-v1__svg",viewBox:"0 0 300 189",preserveAspectRatio:"xMidYMid meet",xmlns:"http://www.w3.org/2000/svg",children:Tb.map(({scale:i,opacity:l},c)=>n.jsx("g",{transform:`translate(${r} ${s}) scale(${i}) translate(-50 -50)`,opacity:l,children:n.jsx("path",{d:_l,fill:"none",stroke:a,strokeWidth:"1.5",vectorEffect:"non-scaling-stroke"})},c))}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-move-v1__symbol",style:{"--symbol-url":`url("${yl}")`}})]})}const Lb={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"};function $b(e={}){const t=ht(Lb,yn,vn);return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-talk","aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg-talk__shape pass-card-bg-talk__shape--left"}),n.jsx("div",{className:"pass-card-bg-talk__shape pass-card-bg-talk__shape--right"}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-talk__symbol",style:{"--symbol-url":`url("${wa}")`}})]})}const Rb={Logo_speechear_kr:{"":Qr,_white:_b,_textWhite:wb,_black:kb},Logo_speechearManager_kr:{"":eo,_white:Ab,_textWhite:Bb,_black:Nb}};function Pb(e,t){if(e)return Rb[e]?.[t??""]??void 0}const Ib={speechear:Qr,manager:eo},Fb={speechear:"Logo_speechear_kr",manager:"Logo_speechearManager_kr"},kl=10;function Al(e,t){if(e<=0)return t("passCard.remainingSecond",{n:0});const a=Math.floor(e/86400);if(a>0)return t("passCard.remainingDay",{n:a});const r=Math.floor(e/3600);if(r>0)return t("passCard.remainingHour",{n:r});const s=Math.floor(e/60);return s>0?t("passCard.remainingMinute",{n:s}):t("passCard.remainingSecond",{n:Math.floor(e)})}function Ob(e,t,a){if(e==="manager"){const r=/년/.test(t)||/yr|year/i.test(t)||/1년|365/.test(t),s=a==="\uC624\uD508\uD2B9\uAC00"||a===At.t("passCard.specialLabel");return r?n.jsx($b,{}):s?n.jsx(Mb,{}):n.jsx(wl,{})}return n.jsx(xl,{})}function Bl({product:e,showPrice:t=!1,plan:a,type:r,endDate:s,remainingSeconds:i,endInclusive:l=!1,state:c="active",bg:d,bgOnly:u=!1,textColor:p,subColor:m,copyrightColor:h,logoSrc:g,label:y,price:f,originalPrice:w,discountLabel:C,onUse:b,onRefund:_,onDelete:x}){const{t:k}=be.useTranslation(),v=e?bl(e):void 0,B=r??v?.type??"speechear",A=a??v?.plan??k("passCard.planSuffix","\uC774\uC6A9\uAD8C"),N=y??v?.label,E=f??(t?v?.price:void 0),T=w??(t?v?.originalPrice:void 0),I=C??v?.discountLabel,R=o.useMemo(()=>{if(E)return null;const ue=e?.durationDays??xb(e?.code);if(!ue||ue<=0)return i!=null?{percent:null,remainingLabel:Al(i,k)}:null;const q=ue*86400;let oe;if(i!=null)oe=i;else if((c==="active"||c==="expired")&&s){const ve=new Date(s).getTime();if(Number.isNaN(ve))return null;const ge=/^(\d{4})-(\d{2})-(\d{2})/.exec(String(s)),Se=/^(\d{4})-(\d{2})-(\d{2})/.exec(Ca()),Ce=Math.round(ge&&Se?(Date.UTC(+ge[1],+ge[2]-1,+ge[3])-Date.UTC(+Se[1],+Se[2]-1,+Se[3]))/864e5:(ve-Date.now())/864e5);oe=Math.max(0,l?Ce+1:Ce)*86400}else c==="expired"?oe=0:oe=q;const de=Math.max(0,Math.min(100,Math.floor(Math.min(oe,q)/q*100)));return c==="pending"&&de>=100?null:{percent:de,remainingLabel:Al(oe,k)}},[E,c,s,i,l,e?.durationDays,e?.code,k]),V=o.useRef(null),[j,M]=o.useState({}),[F,U]=o.useState(null),Q=!!(b||_||x),z=o.useRef(!1),G=o.useRef(void 0),[W,L]=o.useState(g);o.useLayoutEffect(()=>{L(g)},[g]),o.useLayoutEffect(()=>{const ue=V.current;ue&&(p!==void 0&&ue.style.setProperty("--pass-card-text",p),m!==void 0&&ue.style.setProperty("--pass-card-sub",m),h!==void 0&&ue.style.setProperty("--pass-card-copyright",h))},[p,m,h]),o.useLayoutEffect(()=>{const ue=V.current;if(!ue)return;const q=Eb(ue);if(!g){const oe=Fb[B],de=c==="expired"?"_black":q?.logoColor??"",ve=Pb(oe,de);L(ve)}},[d,g,B,c]);const D=ue=>{const q=V.current;if(!q)return null;const{left:oe,top:de,width:ve,height:ge}=q.getBoundingClientRect(),Se=(ue.clientX-oe)/ve-.5;return{rotateX:-((ue.clientY-de)/ge-.5)*kl,rotateY:Se*kl}},O=(ue,q)=>{const oe=q*-.7,de=ue*.7+10,ve=20+(Math.abs(ue)+Math.abs(q))*.4;return`${oe}px ${de}px ${ve}px rgba(0, 0, 0, 0.18)`},P=o.useCallback(ue=>{if(Jn())return;z.current=!0,clearTimeout(G.current),G.current=setTimeout(()=>{z.current=!1},200);const q=D(ue);q&&M({transform:`perspective(800px) rotateX(${q.rotateX}deg) rotateY(${q.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:O(q.rotateX,q.rotateY),transition:"transform 0.25s cubic-bezier(0.23, 1, 0.32, 1), box-shadow 0.25s cubic-bezier(0.23, 1, 0.32, 1)"})},[]),H=o.useCallback(ue=>{if(Jn())return;const q=D(ue);if(!q)return;const oe=z.current?"transform 0.2s ease, box-shadow 0.2s ease":"none";M({transform:`perspective(800px) rotateX(${q.rotateX}deg) rotateY(${q.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:O(q.rotateX,q.rotateY),transition:oe})},[]),$=o.useCallback(()=>{clearTimeout(G.current),z.current=!1,M({transform:"perspective(800px) rotateX(0deg) rotateY(0deg) scale3d(1, 1, 1)",boxShadow:"0px 4px 16px rgba(0, 0, 0, 0.08)",transition:"transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), box-shadow 0.5s cubic-bezier(0.23, 1, 0.32, 1)"})},[]),Y=o.useCallback(()=>U(null),[]),ee=o.useMemo(()=>{const ue=k("passCard.planSuffix","\uC774\uC6A9\uAD8C"),q=A.replace("\uC774\uC6A9\uAD8C","").replace(ue==="\uC774\uC6A9\uAD8C"?"":ue,"").trim(),oe=q.match(/^(.*?)(일|년)$/);return oe?n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"h0 pass-card__plan-number",children:oe[1]}),n.jsx("span",{className:"h5b pass-card__plan-unit",children:oe[2]==="\uB144"?k("passCard.unitYear","\uB144"):k("passCard.unitDay","\uC77C")})]}):n.jsx("span",{className:"h0",children:q})},[A,k]),Z=o.useMemo(()=>{const ue=Yn(E);if(!ue)return null;const q=ue.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!q)return n.jsx("span",{className:"h1",children:ue});const[,oe,de,ve]=q;return n.jsxs(n.Fragment,{children:[oe&&n.jsx("span",{className:"h5 pass-card__price-symbol",children:oe}),n.jsx("span",{className:"h1 pass-card__price-amount",children:de}),ve.trim()&&n.jsx("span",{className:"h5 pass-card__price-symbol",children:ve.trim()})]})},[E]),ae=o.useCallback(()=>{Q&&U(ue=>{if(ue)return null;const q=V.current?.getBoundingClientRect();if(!q)return null;const oe=50;return{left:q.left,right:q.right,width:q.width,height:q.height,x:q.x,y:q.y+oe,top:q.top+oe,bottom:q.bottom+oe}})},[Q]),_e=o.useCallback(ue=>{Q&&(ue.key==="Enter"||ue.key===" ")&&(ue.preventDefault(),ae())},[Q,ae]),re=[{items:[...b?[{label:k("passCard.menu.use","\uC0AC\uC6A9\uD558\uAE30"),icon:"play",onClick:()=>{b(),U(null)},closeOnSelect:!0}]:[],..._?[{label:k("passCard.menu.refund","\uD658\uBD88\uD558\uAE30"),icon:"rotate-ccw",onClick:()=>{_(),U(null)},closeOnSelect:!0}]:[],...x?[{label:k("passCard.menu.delete","\uC0AD\uC81C\uD558\uAE30"),icon:"trash-2",onClick:()=>{x(),U(null)},closeOnSelect:!0}]:[]]}];return n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"pass-card-frame",children:n.jsxs("div",{ref:V,className:`pass-card pass-card--${c}${Q?" pass-card--clickable":""}`,style:j,onMouseEnter:P,onMouseMove:H,onMouseLeave:$,onPointerUp:ue=>{ue.pointerType==="touch"&&$()},onPointerCancel:ue=>{ue.pointerType==="touch"&&$()},onClick:ae,onKeyDown:Q?_e:void 0,role:Q?"button":void 0,tabIndex:Q?0:void 0,"aria-haspopup":Q?"menu":void 0,"aria-expanded":Q?!!F:void 0,children:[d??Ob(B,A,N),!u&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"pass-card__top",children:n.jsxs("div",{className:"pass-card__top-left",children:[n.jsx("img",{src:W??Ib[B],className:"pass-card__logo",alt:B==="manager"?k("header.logoManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800 \uB85C\uACE0"):k("header.logoMalgwi","\uB9D0\uADC0 \uB85C\uACE0")}),n.jsxs("div",{className:"pass-card__plan",children:[n.jsx("div",{children:ee}),n.jsx("span",{className:"h5b pass-card__plan-suffix",children:N?k("passCard.labeledPlan",{label:N}):k("passCard.planSuffix","\uC774\uC6A9\uAD8C")})]})]})}),E?n.jsxs("div",{className:"pass-card__price-area",children:[I&&n.jsx("span",{className:"pass-card__discount body-3",children:I}),n.jsxs("div",{className:"pass-card__price",children:[T&&n.jsx("span",{className:"pass-card__price-original body-3",children:Yn(T)}),Z]})]}):R?n.jsxs("div",{className:"pass-card__usage",children:[n.jsx("span",{className:"h5b pass-card__usage-remaining",children:R.remainingLabel}),R.percent!=null&&n.jsxs("span",{className:"pass-card__usage-percent",children:[n.jsx("span",{className:"h1 pass-card__usage-value",children:R.percent}),n.jsx("span",{className:"h5b pass-card__usage-symbol",children:"%"})]})]}):n.jsx("div",{className:"pass-card__copyright caption-2",children:"\xA9 IHAB Corp. All rights reserved."})]})]})}),F&&n.jsx(Qt,{anchorRect:F,onClose:Y,ariaLabel:k("tooltip.menu","\uBA54\uB274"),children:n.jsx(_a,{columns:re,onClose:Y,size:"small"})})]})}const Hb={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#1a1a1a"};function zb(e={}){const t=`passcard-sound-line-grad-${o.useId()}`,a=ht(Hb,yn,vn);return n.jsxs("div",{ref:a,className:"pass-card-bg pass-card-bg-sound-line","aria-hidden":"true",children:[n.jsxs("svg",{className:"pass-card-bg-sound-line__svg",viewBox:"0 0 500 300",preserveAspectRatio:"xMidYMid slice",xmlns:"http://www.w3.org/2000/svg",children:[n.jsx("defs",{children:n.jsxs("linearGradient",{id:t,x1:"0",y1:"0",x2:"1",y2:"0",children:[n.jsx("stop",{offset:"20%",stopColor:"var(--color-main)"}),n.jsx("stop",{offset:"80%",stopColor:"var(--color-sub)"})]})}),n.jsx("g",{transform:"translate(25, 45)",children:n.jsx("path",{d:"M -30 150 C 40 80, 100 220, 160 150 S 280 80, 340 150 S 460 220, 510 150",fill:"none",stroke:`url(#${t})`,strokeWidth:"50",strokeLinecap:"round"})})]}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-line__symbol",style:{"--symbol-url":`url("${wa}")`}})]})}const Vb={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"};function Wb(e={}){const t=ht(Vb,yn,vn);return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-talk-v1","aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg-talk-v1__shape pass-card-bg-talk-v1__shape--left"}),n.jsx("div",{className:"pass-card-bg-talk-v1__shape pass-card-bg-talk-v1__shape--right"}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-talk-v1__symbol",style:{"--symbol-url":`url("${wa}")`}})]})}function qb(e,t){if(e){if(t==="manager_pro")return n.jsx(Wb,{});if(t==="manager_standard")return n.jsx(zb,{});if(t==="manager_lite")return n.jsx(wl,{})}}function Ub(e){const t=Yn(e);if(!t)return null;const a=t.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!a)return t;const[,r,s,i]=a;return n.jsxs(n.Fragment,{children:[r&&n.jsx("span",{className:"payment-plan__pricing-symbol h4",children:r}),s,i.trim()&&n.jsx("span",{className:"payment-plan__pricing-symbol h4",children:i.trim()})]})}function Gb(e){const{t}=be.useTranslation(),a=t("payment.plan.tierFallback",{defaultValue:"\uC774\uC6A9\uAD8C"}),r=t("payment.plan.openPromo",{defaultValue:"\uC624\uD508 \uD2B9\uAC00"}),{plan:s,onSelect:i,period:l="monthly",ownedCodes:c}=e||{},d=x=>!!x&&!!c?.includes(x),u=x=>x.onceOnly??/오픈\s*특가/.test(x.label??""),p=(s.tiers||[]).some(x=>u(x)&&d(x.code)),m=x=>{const k=x.prices?x.prices[l]:x.price;return k?(s.tiers||[]).some(v=>!!v.badge&&v.originals?.[l]===k):!1},h=s.colorToken?`var(--color-${s.colorToken})`:"var(--color-gray)",g=t("payment.plan.freePrice","\uBB34\uB8CC"),y=t("payment.products.mgrEnterprise.tier.price","\uBB38\uC758"),f=x=>x.prices?x.prices[l]:x.price,w=(s.tiers||[]).length>0&&(s.tiers||[]).every(x=>{const k=f(x);return k==="\uBB34\uB8CC"||k===g||k==="0\uC6D0"||typeof k=="string"&&/\d/.test(k)&&!/[1-9]/.test(k)}),C=(s.tiers||[]).length>0&&(s.tiers||[]).every(x=>{const k=f(x);return k==="\uBB38\uC758"||k===y}),b=s.group==="org",_=b?"manager":"speechear";return n.jsxs("div",{className:"payment-plan__card",style:{borderColor:h,"--plan-color":h},children:[s.cardBadge&&n.jsx("div",{className:"payment-plan__card-badge",children:n.jsx(ft,{label:s.cardBadge,variant:"main",size:"medium",fill:"soft"})}),n.jsxs("div",{className:"payment-plan__title",children:[n.jsx("p",{className:"payment-plan__quote body-3b",style:{color:h},children:s.quote||"\xA0"}),n.jsx("h3",{className:"payment-plan__title-heading h1",children:s.tier??s.title}),n.jsx("p",{className:"payment-plan__subtitle body-3",children:s.subtitle})]}),n.jsxs("div",{className:"payment-plan__box",children:[n.jsx("span",{className:"payment-plan__box-title body-3b",children:t("payment.plan.recommendedFor","\uC774\uB7F0 \uBD84\uAED8 \uCD94\uCC9C\uD569\uB2C8\uB2E4.")}),n.jsx("ul",{className:"payment-plan__feature-list",children:(s.recommendedFor||[]).map((x,k)=>n.jsxs("li",{className:"payment-plan__feature-item body-3",children:[n.jsx(Ue,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:h}}),x]},k))})]}),n.jsxs("div",{className:"payment-plan__box",children:[n.jsx("span",{className:"payment-plan__box-title body-3b",children:t("payment.plan.features","\uD575\uC2EC \uAE30\uB2A5")}),n.jsx("ul",{className:"payment-plan__feature-list",children:(s.features||[]).map((x,k)=>n.jsxs("li",{className:"payment-plan__feature-item body-3",children:[n.jsx(Ue,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:h}}),x]},k))})]}),n.jsx("div",{className:"payment-plan__card-pricing",children:w?null:C?n.jsx(pe,{htmlType:"button",className:"payment-plan__contact-button",label:t("payment.plan.contact",{defaultValue:"\uBB38\uC758\uD558\uAE30"}),variant:"main",size:56,onClick:()=>s.tiers?.[0]&&i?.({...s.tiers[0],productId:s.id,productTitle:s.title})}):n.jsx(n.Fragment,{children:n.jsx("div",{className:"payment-plan__pricing-list",children:(s.tiers||[]).map(x=>{const k=x.label||a,v=u(x),B=v||x.openPromo===!0,A=k.replace(/^오픈\s*특가\s*/,"")||a,N=x.prices?x.prices[l]:x.price,E=x.badge?B?`${r}
|
|
852
|
-
${x.badge}`:x.badge:void 0;if(v&&d(x.code))return null;if(!x.badge&&!p)return m(x)?null:n.jsxs("div",{className:`payment-plan__pricing-row payment-plan__pricing-row--static${x.highlight?" payment-plan__pricing-row--highlight":""}`,children:[n.jsx("div",{className:"payment-plan__pricing-row-title",children:n.jsx("div",{className:"payment-plan__pricing-row-label h5b",children:x.label})}),n.jsx("div",{className:"payment-plan__pricing-row-price",children:n.jsx("span",{className:"payment-plan__pricing-current h1",children:Ub(N)})})]},x.id);const T=s.tier??(b?s.title:void 0),I=n.jsx(Bl,{showPrice:!0,product:{type:_,code:x.code,name:A,label:T,price:N,originalPrice:x.originals?.[l]??void 0,discountLabel:E},bg:qb(b,s.id)}),R=()=>i?.({...x,productId:s.id,productTitle:s.title,preview:I});return n.jsx("div",{className:"payment-plan__pricing-card",onClick:R,onKeyDown:i?V=>{V.target===V.currentTarget&&(V.key==="Enter"||V.key===" ")&&(V.preventDefault(),R())}:void 0,role:i?"button":void 0,tabIndex:i?0:void 0,children:I},x.id)})})})})]})}function Kb({variant:e="default"}){return n.jsxs("div",{className:`pass-card-bg pass-card-bg--${e}`,"aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--1"}),n.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--2"}),n.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--3"})]})}var no='data:image/svg+xml,<svg width="264" height="100" viewBox="0 0 264 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2079_3030)">%0A<path d="M60.9019 24.7464C54.4446 18.2821 45.5257 14.2857 35.6757 14.2857C25.8256 14.2857 23.2106 24.5964 16.7569 31.0607C10.2996 37.5214 0 40.1857 0 50C0 59.8143 3.99211 68.7893 10.4494 75.2536C16.9067 81.7178 25.8256 85.7143 35.6757 85.7143C45.5257 85.7143 54.4446 81.7178 60.9019 75.2536C67.3592 68.7893 71.3513 59.8607 71.3513 50C71.3513 40.1393 67.3592 31.2107 60.9019 24.7464ZM48.2906 62.6286C45.0619 65.8607 40.6025 67.8571 35.6757 67.8571C30.7489 67.8571 26.2894 65.8571 23.0608 62.6286C19.8321 59.3964 17.8378 54.9321 17.8378 50C17.8378 45.0678 19.8357 40.6036 23.0608 37.3714C26.2894 34.1393 30.7489 32.1428 35.6757 32.1428C40.6025 32.1428 45.0619 34.1428 48.2906 37.3714C51.5192 40.6036 53.5135 45.0678 53.5135 50C53.5135 54.9321 51.5157 59.3964 48.2906 62.6286Z" fill="url(%23paint0_linear_2079_3030)"/>%0A<path d="M106.735 74.8322H93.6274V24.8322H106.735V74.8322Z" fill="%23111111"/>%0A<path d="M113.495 24.8322H126.602V44.5143H145.022V24.8322H158.197V74.8322H145.022V55.15H126.602V74.8322H113.495V24.8322Z" fill="%23111111"/>%0A<path d="M163.027 74.8322L179.652 24.8322H197.519L214.076 74.8322H199.934L196.969 65.025H180.205L177.241 74.8322H163.031H163.027ZM193.933 55.0786L188.76 38.2964H188.346L183.241 55.0786H193.933Z" fill="%23111111"/>%0A<path d="M218.906 24.8322H240.29C251.674 24.8322 257.675 29.7357 257.675 37.4C257.675 42.925 253.743 47.1393 248.085 48.3107V48.7929C254.364 49 259.605 53.6286 259.605 60.7393C259.605 68.8893 252.983 74.8286 242.081 74.8286H218.902V24.8322H218.906ZM244.157 40.1643C244.157 36.9857 241.674 35.1929 238.085 35.1929H232.013V45.1393H237.878C241.535 45.1393 244.157 43.3429 244.157 40.1679V40.1643ZM245.741 59.0857C245.741 55.425 243.119 53.3536 238.913 53.3536H232.013V64.2643H238.706C243.397 64.2643 245.741 62.4679 245.741 59.0857Z" fill="%23111111"/>%0A</g>%0A<defs>%0A<linearGradient id="paint0_linear_2079_3030" x1="15.337" y1="29.6393" x2="60.9512" y2="75.2042" gradientUnits="userSpaceOnUse">%0A<stop offset="0.2" stop-color="%23499CDF"/>%0A<stop offset="0.8" stop-color="%234DCDC0"/>%0A</linearGradient>%0A<clipPath id="clip0_2079_3030">%0A<rect width="264" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A';const Nl={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#c9c9c9"};function Yb(){const e=ht(Nl,yn,vn);return n.jsx("div",{ref:e,className:"pass-card-bg pass-card-bg-ihab","aria-hidden":"true",children:n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-ihab__symbol-top",style:{"--symbol-url":`url("${no}")`}})})}const El={text:"#ffffff",sub:"var(--color-lightGray)",logoBase:"Logo_speechearManager_kr",logoColor:"_white",copyrightColor:"#ffffff"};function Zb(e={}){const t=ht(El,yn,vn);return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-left-color-grid","aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg-left-color-grid__bar"}),n.jsx("div",{className:"pass-card-bg-left-color-grid__grid"}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-left-color-grid__symbol",style:{"--symbol-url":`url("${wa}")`}})]})}function Dl({keys:e,anchor:t="top-right",scale:a,className:r=""}){const s=Array.isArray(e)?e:[e];return n.jsx("span",{className:De("shortcut-badge",`shortcut-badge--${t}`,r),style:a===void 0?void 0:{"--shortcut-badge-scale":String(a)},children:s.map((i,l)=>n.jsxs("span",{className:"shortcut-badge__group",children:[l>0&&n.jsx("span",{className:"shortcut-badge__plus",children:"+"}),n.jsx("kbd",{className:"shortcut-badge__key",children:i})]},`${i}-${l}`))})}const ka=(e,t,a)=>e+(t-e)*a;function Xb({speakers:e,size:t=300,viewT:a=0,activeSpeakerId:r=null,playedIds:s,selectedId:i=null,answerId:l=null,showFeedback:c=!1,pulseSelected:d=!1,pulseSelectedDuration:u,pulseScale:p,clickable:m=!1,onSelectSpeaker:h,buttonSize:g=40,showIcon:y=!0,onCenterClick:f,centerLabel:w,centerDisabled:C=!1,centerAttention:b=!1,shortcutAnchor:_="top-right",shortcutScale:x,scaleShortcut:k=!1}){const{t:v}=be.useTranslation(),B=Math.max(0,Math.min(1,a)),A=t/2,N=110/300,E=.18,T=q=>t*(N+(q-1)*E),I=q=>{const oe=T(q.row??1),de=q.angleDeg*Math.PI/180;return{x:A+oe*Math.cos(de),y:A+oe*Math.sin(de)}},R=Math.max(...e.map(q=>q.row??1),1),V=t*.08,j=t*.1,M=t*.24,F=t-2*V,U=t-j-M,Q=t-M/2,z=o.useMemo(()=>[...new Set(e.map(q=>q.deg))].sort((q,oe)=>q-oe),[e]),G=z.length,W=Math.max(68,G>1?F/(G-1):0),L=o.useMemo(()=>new Map(z.map((q,oe)=>[q,oe])),[z]),D=q=>{const oe=L.get(q.deg)??0,de=A+(oe-(G-1)/2)*W,ve=R>1?Math.min(68,U/(R-1)):0,ge=ve*(R-1),Se=j+(U-ge)/2,Ce=R===1?j+U*.4:Se+(R-(q.row??1))*ve;return{x:de,y:Ce}},O=q=>{const oe=I(q),de=D(q);return{x:ka(oe.x,de.x,B),y:ka(oe.y,de.y,B)}},P={x:A,y:ka(A,Q,B)},H=Math.round(g*1.2),$=Math.round(Math.max(16,Math.min(80,g*.7))),Y=[],ee=new Map;for(const q of e){const oe=q.row??1;ee.has(oe)||ee.set(oe,[]),ee.get(oe).push(q)}for(const[q,oe]of ee.entries()){if(oe.length<2)continue;const de=[...oe].sort((Te,Ae)=>Te.deg-Ae.deg),ve=de.map(Te=>O(Te)),ge=de.map(Te=>Te.deg),Se=ge[ge.length-1]-ge[0],Ce=Se/(ge.length-1),Ee=360-Se,Be=de.length>=3&&Ce>0&&Ee<=Ce*1.5,Re=Math.round(T(q)*1e3)/1e3,Le=(Te,Ae,ie,ye)=>{const se=(Ae.angleDeg-Te.angleDeg+540)%360-180;if(se===0)return`L ${ye.x} ${ye.y}`;if(B===0)return`A ${Re} ${Re} 0 0 ${se>0?1:0} ${ye.x} ${ye.y}`;const Ie=(Te.angleDeg+se/2)*Math.PI/180,ze={x:A+Re*Math.cos(Ie),y:A+Re*Math.sin(Ie)},Ge={x:(ie.x+ye.x)/2,y:(ie.y+ye.y)/2},Ze={x:ka(ze.x,Ge.x,B),y:ka(ze.y,Ge.y,B)},Ye={x:2*Ze.x-Ge.x,y:2*Ze.y-Ge.y};return`Q ${Ye.x} ${Ye.y} ${ye.x} ${ye.y}`},me=Be?[...de,de[0]]:de,ke=Be?[...ve,ve[0]]:ve;let Me=`M ${ke[0].x} ${ke[0].y}`;for(let Te=1;Te<ke.length;Te++)Me+=" "+Le(me[Te-1],me[Te],ke[Te-1],ke[Te]);Y.push({key:`arc-${q}`,d:Me})}const Z=o.useMemo(()=>new Set(s??[]),[s]),ae=q=>({idle:"",active:v("soundCompass.state.active","\uC18C\uB9AC \uB098\uB294 \uC911"),played:v("soundCompass.state.played","\uB4E4\uC74C"),correct:v("soundCompass.state.correct","\uC815\uB2F5"),wrong:v("soundCompass.state.wrong","\uC624\uB2F5")})[q],_e=q=>{if(r===q.id)return"active";if(c){if(q.id===l)return"correct";if(q.id===i&&i!==l)return"wrong"}return Z.has(q.id)?"played":"idle"},re=q=>r===q.id?"loop":c?q.id===l?"loop":null:d&&q.id===i?"once":null,ue=(q,oe)=>{switch(q){case"played":case"correct":return n.jsx(rs,{size:oe});case"wrong":return n.jsx(hs,{size:oe});default:return n.jsx(ms,{size:oe})}};return n.jsx("div",{className:"sound-compass",children:n.jsxs("div",{className:"sound-compass__compass-wrap",style:{width:t,height:t},children:[n.jsxs("svg",{width:t,height:t,viewBox:`0 0 ${t} ${t}`,className:"sound-compass__svg",children:[B===0&&e.map(q=>{const{x:oe,y:de}=O(q);return n.jsx("line",{x1:P.x,y1:P.y,x2:oe,y2:de,stroke:"#dde3ec",strokeWidth:"1"},q.id)}),Y.map(q=>n.jsx("path",{d:q.d,fill:"none",stroke:"#dde3ec",strokeWidth:"1"},q.key))]}),b&&!C&&n.jsx("div",{className:"sound-compass__pulse sound-compass__pulse--active sound-compass__pulse--center",style:{width:H,height:H,left:P.x-H/2,top:P.y-H/2}}),f?n.jsx("button",{type:"button",className:`sound-compass__center sound-compass__center--button${C?" sound-compass__center--disabled":""}`,style:{width:H,height:H,left:P.x,top:P.y},"aria-label":w,"aria-disabled":C||void 0,tabIndex:C?-1:0,onClick:C?void 0:f,children:n.jsx(fr,{size:$,color:"currentColor",strokeWidth:1.5})}):n.jsx("div",{className:"sound-compass__center",style:{width:H,height:H,left:P.x,top:P.y},children:n.jsx(fr,{size:$,color:"currentColor",strokeWidth:1.5})}),e.map((q,oe)=>{const{x:de,y:ve}=O(q),ge=_e(q),Se=re(q),Ce={...x!==void 0||k?{"--shortcut-badge-scale":String(x??Math.max(.75,Math.min(3,g/56)))}:null,pointerEvents:m?"auto":"none",cursor:m?"pointer":"default",zIndex:ge!=="idle"?10:1},Ee=g,Be=Math.round(Math.max(10,Math.min(56,Ee*.38))),Re=Math.round(Math.max(7,Math.min(18,Ee*.2))),Le=Math.round(Math.max(10,Math.min(56,Ee*.4))),me=y==="answered"&&(ge==="played"||ge==="correct"||ge==="wrong"),ke=y===!0||me,Me=!me;return n.jsxs("div",{className:"sound-compass__speaker-pos",style:{...Ce,left:de-Ee/2,top:ve-Ee/2},children:[Se&&n.jsx("div",{className:`sound-compass__pulse sound-compass__pulse--${ge}`+(Se==="once"?" sound-compass__pulse--once":""),style:{width:Ee,height:Ee,...Se==="once"&&u!==void 0?{"--sc-pulse-duration-once":`${u}ms`}:null,...p!==void 0?{"--sc-pulse-scale":String(p)}:null}}),n.jsxs("button",{type:"button",tabIndex:m?0:-1,"aria-disabled":m?void 0:!0,onClick:m?()=>h?.(q.id):void 0,className:`sound-compass__speaker-btn sound-compass__speaker-btn--${ge}`,style:{width:Ee,height:Ee},"aria-label":ae(ge)?`${q.label}, ${ae(ge)}`:q.label,"aria-pressed":i!=null?q.id===i:void 0,children:[ke&&ue(ge,Be),Me&&n.jsx("span",{className:"sound-compass__speaker-number",style:{fontSize:y===!0?Re:Le},children:oe+1})]}),q.shortcut&&n.jsx(Dl,{keys:q.shortcut,anchor:_,className:"sound-compass__speaker-shortcut"})]},q.id)})]})})}function Jb({children:e,position:t="top-left",size:a=24,className:r=""}){return n.jsx("span",{className:De("circle-badge","circle-badge--number",`circle-badge--${a}`,`circle-badge--${t}`,r),children:e})}function Qb({orientation:e="horizontal",label:t,className:a=""}){const r=De("divider",`divider--${e}`,t&&e==="horizontal"?"divider--labeled":"",a);return e==="vertical"?n.jsx("div",{className:r,role:"separator","aria-orientation":"vertical"}):t?n.jsxs("div",{className:r,role:"separator","aria-orientation":"horizontal",children:[n.jsx("span",{className:"divider__line"}),n.jsx("span",{className:"divider__label caption-1",children:t}),n.jsx("span",{className:"divider__line"})]}):n.jsx("div",{className:r,role:"separator","aria-orientation":"horizontal"})}function Sl({checked:e,onChange:t,name:a,value:r,disabled:s=!1,label:i,className:l=""}){const c=o.useId();return n.jsxs("label",{className:`radio${s?" radio--disabled":""} ${l}`.trim(),htmlFor:c,children:[n.jsx("input",{id:c,type:"radio",name:a,value:r,checked:e,disabled:s,onChange:d=>t?.(d.target.checked)}),n.jsx("span",{className:"radio__dot"}),i&&n.jsx("span",{className:"radio__label body-2",children:i})]})}function e4({options:e,value:t,onChange:a,name:r,disabled:s=!1,direction:i="vertical",className:l="",ariaLabel:c}){const d=o.useId(),u=r??`radio-group-${d}`;return n.jsx("div",{className:`radio-group radio-group--${i} ${l}`.trim(),role:"radiogroup","aria-label":c,children:e.map(p=>n.jsx(Sl,{name:u,value:p.value,checked:t===p.value,disabled:s||p.disabled,label:p.label,onChange:m=>{m&&a?.(p.value)}},p.value))})}const t4={info:"info",success:"check-circle",warning:"alert-triangle",danger:"alert-circle"};function n4({tone:e="info",title:t,message:a,children:r,dismissible:s=!1,onDismiss:i,live:l,className:c=""}){const{t:d}=be.useTranslation(),[u,p]=o.useState(!1),m=o.useRef(null),h=o.useCallback(()=>{const b=m.current;b&&b.contains(document.activeElement)&&Va(b),p(!0),i?.()},[i]);if(u)return null;const g=De("alert",`alert--${e}`,c),y=l??(e==="danger"||e==="warning"?"assertive":"polite"),f=y==="assertive"?"alert":y==="polite"?"status":void 0,w=!!t,C=!!(a||r);return n.jsxs("div",{ref:m,className:g,role:f,children:[n.jsxs("div",{className:"alert__body",children:[n.jsxs("div",{className:"alert__header",children:[n.jsx(Ue,{icon:t4[e],size:20,className:"alert__icon"}),w&&n.jsx("span",{className:"alert__title body-2",children:t}),!w&&C&&n.jsx("div",{className:"alert__message body-3",children:a||r})]}),w&&C&&n.jsx("div",{className:"alert__message alert__message--indented body-3",children:a||r})]}),s&&n.jsx("button",{type:"button",className:"alert__dismiss",onClick:h,"aria-label":d("common.close","\uB2EB\uAE30"),children:"\xD7"})]})}const a4={ready:"search",guide:"info",error:"circle-alert"};function r4(e,t){const a=t.filter(Boolean);if(a.length===0)return e;const r=[];let s=0,i=0;for(const l of a){const c=e.indexOf(l,s);c<0||(c>s&&r.push(e.slice(s,c)),r.push(n.jsx("strong",{className:"search-summary__em body-2",children:l},i++)),s=c+l.length)}return s<e.length&&r.push(e.slice(s)),r}function o4({status:e="guide",label:t,children:a,emphasis:r,icon:s,className:i=""}){const l=s===!1?null:s??a4[e],c=De("search-summary",`search-summary--${e}`,i),d=t??a,u=typeof d=="string"&&r&&r.length>0?r4(d,r):d;return n.jsxs("div",{className:c,role:"status","aria-live":"polite",children:[l!=null&&n.jsx(Ue,{icon:l,size:18,className:"search-summary__icon"}),n.jsx("span",{className:"search-summary__text body-2",children:u})]})}function Aa({title:e,items:t}){const{t:a}=be.useTranslation(),{anchorRect:r,openAt:s,close:i}=ya(),l=o.useRef(null),c=Vr(!!r,(d,u)=>{d&&u?s(l.current?.querySelector("button")??u):i()},l);return n.jsxs("span",{ref:l,style:{display:"contents"},children:[n.jsx(pe,{htmlType:"button",size:24,type:"dot",icon:"info",variant:"transparent-gray",useBorder:!1,selected:!!r,ariaLabel:a("common.info","\uC124\uBA85"),onPointerEnter:d=>{Xn(d)||s(d.currentTarget)},onPointerLeave:d=>{Xn(d)||i()},onClick:d=>{c.touchPress(d.currentTarget)},onFocus:d=>{Jn()||s(d.currentTarget)},onBlur:i}),r&&n.jsx(Fn,{title:e,items:t,showIndex:t.length>1,anchorRect:r,onClose:i})]})}function s4({items:e=[],value:t,onChange:a,className:r="",size:s=40}){const i=o.useId(),{t:l}=be.useTranslation(),c=o.useRef(null),d=e.find(f=>!f.disabled)?.key,u=e.some(f=>f.key===t)?t:d??e[0]?.key,p=e.find(f=>f.key===u&&!f.disabled)?.key??d,m=()=>Array.from(c.current?.querySelectorAll('[role="tab"]:not(:disabled)')??[]),h=(f,w=m())=>{if(w.length===0)return;const C=(f%w.length+w.length)%w.length;w[C]?.focus(),w[C]?.click()},g=f=>{if(!["ArrowRight","ArrowDown","ArrowLeft","ArrowUp","Home","End"].includes(f.key))return;f.preventDefault();const w=m(),C=w.indexOf(f.currentTarget);f.key==="ArrowRight"||f.key==="ArrowDown"?h(C+1,w):f.key==="ArrowLeft"||f.key==="ArrowUp"?h(C-1,w):f.key==="Home"?h(0,w):h(w.length-1,w)},y=e.find(f=>f.key===u);return n.jsxs("div",{className:`tabs ${r}`.trim(),children:[n.jsx("div",{ref:c,className:`tabs__list tabs__list--${s}`,role:"tablist","aria-label":l("tabs.ariaLabel","\uD0ED"),children:e.map(f=>n.jsx("button",{id:`tabs__tab-${i}-${f.key}`,type:"button",role:"tab","aria-selected":f.key===u,"aria-controls":`tabs__panel-${i}-${f.key}`,disabled:f.disabled,tabIndex:f.key===p?0:-1,className:`tabs__tab body-2${f.key===u?" tabs__tab--active":""}`,onClick:()=>{f.key!==t&&a?.(f.key)},onKeyDown:g,children:f.label},f.key))}),y&&n.jsx("div",{id:`tabs__panel-${i}-${y.key}`,role:"tabpanel","aria-labelledby":`tabs__tab-${i}-${y.key}`,tabIndex:0,className:"tabs__panel",children:y.panel},y.key)]})}const i4={xs:12,sm:16,md:20,lg:28,xl:36};function l4(e){const t=e.trim().split(/\s+/).filter(Boolean);return t.length===0?"":t.length===1?[...t[0]].slice(0,2).join("").toUpperCase():([...t[0]][0]+[...t[t.length-1]][0]).toUpperCase()}function c4({src:e,name:t,size:a="md",shape:r="circle",className:s=""}){const{t:i}=be.useTranslation(),[l,c]=o.useState(null),d=!!e&&l===e,u=t?l4(t):"",p=!!e&&!d,m=!p&&!!u,h=t||i("avatar.ariaLabel","\uC0AC\uC6A9\uC790 \uC544\uBC14\uD0C0");return n.jsxs("span",{className:`avatar avatar--${a} avatar--${r} ${s}`.trim(),role:"img","aria-label":h,children:[p&&n.jsx("img",{className:"avatar__image",src:e,alt:h,onError:()=>c(e??null)}),!p&&m&&n.jsx("span",{className:"avatar__initials","aria-hidden":"true",children:u}),!p&&!m&&n.jsx(Ue,{icon:"user-round",size:i4[a],className:"avatar__icon"})]})}function u4(e,t){if(!t)return!0;const a=t.split(",").map(i=>i.trim()).filter(Boolean);if(a.length===0)return!0;const r=e.name.toLowerCase(),s=e.type.toLowerCase();return a.some(i=>{const l=i.toLowerCase();return l.startsWith(".")?r.endsWith(l):l.endsWith("/*")?s.startsWith(l.slice(0,-1)):s===l})}function d4({onFilesSelected:e,accept:t,multiple:a=!1,disabled:r=!1,showFileList:s=!0,files:i,onRemove:l,className:c=""}){const{t:d}=be.useTranslation(),u=o.useRef(null),[p,m]=o.useState(!1),[h,g]=o.useState([]),y=i??h,f=v=>{if(!v||v.length===0)return;const B=Array.from(v).filter(N=>u4(N,t));if(B.length===0)return;const A=a?B:B.slice(0,1);if(i===void 0){const N=a?[...y,...A]:A;g(N),e?.(N)}else e?.(A)},w=v=>{v.preventDefault(),!r&&m(!0)},C=v=>{v.preventDefault(),m(!1)},b=v=>{v.preventDefault(),m(!1),!r&&f(v.dataTransfer.files)},_=v=>{const B=v.target;try{f(B.files)}finally{B.value=""}},x=()=>{r||u.current?.click()},k=v=>{if(!r&&(l?.(v),i===void 0)){const B=y.filter((A,N)=>N!==v);g(B),l||e?.(B)}};return n.jsxs("div",{className:`file-upload ${c}`.trim(),children:[n.jsxs("div",{className:De("file-upload__dropzone",p&&"file-upload__dropzone--dragging",r&&"file-upload__dropzone--disabled"),role:"button",tabIndex:r?-1:0,"aria-disabled":r,onClick:x,onKeyDown:v=>{(v.key==="Enter"||v.key===" ")&&(v.preventDefault(),x())},onDragOver:w,onDragLeave:C,onDrop:b,children:[n.jsx(Ue,{icon:"upload",size:24,className:"file-upload__icon"}),n.jsx("span",{className:"file-upload__prompt body-2",children:d("fileUpload.dragPrompt","\uD30C\uC77C\uC744 \uC774\uACF3\uC5D0 \uB4DC\uB798\uADF8\uD558\uC5EC \uC5C5\uB85C\uB4DC")}),n.jsx("button",{type:"button",className:"file-upload__browse-button body-3",disabled:r,onClick:v=>{v.stopPropagation(),x()},children:d("fileUpload.browseButton","\uD30C\uC77C \uC120\uD0DD")}),n.jsx("input",{ref:u,type:"file",className:"file-upload__input",accept:t,multiple:a,disabled:r,onChange:_,tabIndex:-1})]}),s&&y.length>0&&n.jsx("ul",{className:"file-upload__list",children:y.map((v,B)=>n.jsxs("li",{className:"file-upload__list-item body-3",children:[n.jsx("span",{className:"file-upload__file-name body-3",children:v.name}),n.jsx("button",{type:"button",className:"file-upload__remove-button","aria-label":d("fileUpload.removeAriaLabel",{name:v.name}),disabled:r,onClick:()=>k(B),children:n.jsx(Ue,{icon:"x",size:14})})]},`${v.name}-${B}`))})]})}function p4({items:e,className:t=""}){const{t:a}=be.useTranslation();return n.jsx("nav",{className:`breadcrumb ${t}`.trim(),"aria-label":a("breadcrumb.ariaLabel","\uC774\uB3D9 \uACBD\uB85C"),children:n.jsx("ol",{className:"breadcrumb__list",children:e.map((r,s)=>{const i=s===e.length-1;return n.jsxs("li",{className:"breadcrumb__item",children:[i?n.jsx("span",{className:"breadcrumb__current body-3","aria-current":"page",children:r.label}):r.href?n.jsx("a",{className:"breadcrumb__link body-3",href:r.href,target:r.target,rel:r.rel??(r.target==="_blank"?"noopener noreferrer":void 0),onClick:r.onClick,children:r.label}):r.onClick?n.jsx("button",{type:"button",className:"breadcrumb__link body-3",onClick:r.onClick,children:r.label}):n.jsx("span",{className:"breadcrumb__text body-3",children:r.label}),!i&&n.jsx(Ue,{icon:"chevron-right",size:14,className:"breadcrumb__separator"})]},s)})})})}const m4={small:14,medium:20,large:28};function h4({value:e,onChange:t,max:a=5,readOnly:r=!1,size:s="medium",ariaLabel:i,className:l=""}){const{t:c}=be.useTranslation(),d=r||!t,[u,p]=o.useState(null),m=d?e:Number.isFinite(e)?Math.round(e):0,h=u??m,g=m4[s],y=v=>{v!==e&&t?.(v)},f=v=>{d||y(v)},w=v=>{d||Jn()||p(v)},C=o.useRef(null),b=v=>{const B=Math.min(a,Math.max(1,v));y(B),Array.from(C.current?.querySelectorAll("[data-star]")??[]).find(A=>A.dataset.star===String(B))?.focus()},_=v=>{if(!d){switch(v.key){case"ArrowRight":case"ArrowUp":b((m||0)+1);break;case"ArrowLeft":case"ArrowDown":b((m||1)-1);break;case"Home":b(1);break;case"End":b(a);break;default:return}v.preventDefault()}},x=m>=1&&m<=a?Math.round(m):1,k=()=>{d||p(null)};return n.jsx("div",{className:`rating rating--${s}${d?" rating--readOnly":""} ${l}`.trim(),ref:C,onKeyDown:_,role:d?"img":"radiogroup","aria-label":d?c("rating.valueLabel",{value:e,max:a}):i??c("rating.groupLabel","\uBCC4\uC810"),onMouseLeave:k,onPointerUp:v=>{v.pointerType==="touch"&&k()},onPointerCancel:v=>{v.pointerType==="touch"&&k()},children:Array.from({length:a},(v,B)=>{const A=B+1,N=Math.max(0,Math.min(1,h-B)),E=N>0&&N<1,T=n.jsxs("span",{className:"rating__star-wrap",children:[n.jsx(Ue,{icon:"star",size:g,className:"rating__star rating__star--empty"}),N>0&&n.jsx("span",{className:`rating__star-fill${E?" rating__star-fill--half":""}`,style:E?{width:`${N*100}%`}:void 0,children:n.jsx(Ue,{icon:"star",size:g,className:"rating__star rating__star--filled"})})]});return d?n.jsx("span",{className:"rating__item","aria-hidden":"true",children:T},A):n.jsx("button",{type:"button",className:"rating__item rating__item--interactive",role:"radio","aria-checked":m===A,"aria-label":c("rating.starLabel",{n:A}),"data-star":A,tabIndex:A===x?0:-1,onClick:()=>f(A),onMouseEnter:()=>w(A),children:T},A)})})}const f4=20,C4=["#499cdf","#4dcdc0","#2fae9e","#e6b94e","#d9534f","#e06b68","#bfc7d1"];function g4({value:e,onChange:t,palette:a=C4,size:r=40,className:s="",ariaLabel:i}){const{t:l}=be.useTranslation();return n.jsx("div",{className:`color-picker ${s}`.trim(),role:"group","aria-label":i,children:a.map(c=>{const d=e?.toLowerCase()===c.toLowerCase();return n.jsx("button",{type:"button",className:`color-picker__swatch color-picker__swatch--${r}`,style:{backgroundColor:c},onClick:()=>t(c),"aria-pressed":d,"aria-label":d?`${c} ${l("colorPicker.selected","\uC120\uD0DD\uB428")}`:c,children:d&&n.jsx(Ue,{icon:"check",size:f4,className:"color-picker__check"})},c)})})}function jl({icon:e,label:t,tooltip:a,wrapperStyle:r,color:s,bgColor:i,useHover:l=!0,iconSize:c="medium"}){const d=c==="small",u=De("category-icon",d?"category-icon--small":""),p=d?16:20,m=o.useRef(null),[h,g]=o.useState(!1),y=o.useMemo(()=>{const v=r&&typeof r=="object"?{...r}:{};return!s&&!i?v:{...v,...s?{color:s,"--t-item-fg":s}:{},...i?{"--t-item-bg":i}:{}}},[r,s,i]),f=a||t,[w,C]=o.useState(null);o.useLayoutEffect(()=>{h&&C(m.current?.getBoundingClientRect()??null)},[h]),o.useEffect(()=>{if(!l&&h)try{g(!1)}catch{}},[l,h]),o.useEffect(()=>{if(!h)return;const v=B=>{const A=m.current;if(!A)return;const N=B.target;N&&!A.contains(N)&&g(!1)};return document.addEventListener("pointerdown",v,!0),()=>document.removeEventListener("pointerdown",v,!0)},[h]);const b=o.useCallback(()=>{l&&g(!0)},[l]),_=o.useCallback(()=>{l&&g(!1)},[l]),x=o.useCallback(()=>g(!1),[]),k=o.useCallback(v=>{if(v.key==="Escape"){g(!1);return}(v.key==="Enter"||v.key===" ")&&(v.preventDefault(),g(B=>!B))},[]);return n.jsxs("span",{ref:m,className:"category-icon__wrap",onPointerEnter:b,onPointerLeave:_,onFocus:b,onBlur:_,onKeyDown:k,role:"button",tabIndex:0,"aria-label":typeof f=="string"?f:void 0,"aria-haspopup":!!f,"aria-expanded":h,"data-tooltip-ignore":!0,children:[n.jsx(Ue,{icon:e,label:t,className:u,imgClassName:"category-icon__image",maskClassName:"category-icon__mask",svgClassName:"category-icon__svg",wrapperStyle:y,size:p}),h&&f&&n.jsx(gn,{anchorRect:w,text:typeof f=="string"?f:void 0,offset:8,onClose:x,className:"category-icon__tooltip",ariaLabel:typeof f=="string"?f:void 0})]})}let En=null;function Ga(e){if(En&&En!==e)try{En()}catch{}return En=e,()=>{En===e&&(En=null)}}function Ka(e){if(En===e){En=null;try{e()}catch{}}}function b4(e,t){if(!e)return{previewCodes:[],previewBucket:null};const a=e,r=l=>l.map(c=>c?.contextCode||c?.context_code).filter(Boolean).map(String);if(t==="LISTEN_IN_NOISE"){const l=a.sentences||a.items||[],c=Array.isArray(l)&&l.length>0?r(l):[];return c.length===0&&(a.contextCode||a.context_code)&&c.push(String(a.contextCode||a.context_code)),{previewCodes:c,previewBucket:"LIN_D"}}if(t==="SHORT_STORY"){const l=a.items||a.sentences||[],c=Array.isArray(l)&&l.length>0?r(l):[];return c.length===0&&(a.contextCode||a.context_code)&&c.push(String(a.contextCode||a.context_code)),{previewCodes:c,previewBucket:"SHORT_S"}}if(t==="LONG_STORY"){const l=a.items||a.sentences||[],c=Array.isArray(l)&&l.length>0?r(l):[];return c.length===0&&(a.contextCode||a.context_code)&&c.push(String(a.contextCode||a.context_code)),{previewCodes:c,previewBucket:"LONG"}}if(t==="ORDERING_SENTENCE"){const l=a.sentences||a.items||[],c=Array.isArray(l)&&l.length>0?r(l):[];return c.length===0&&(a.contextCode||a.context_code)&&c.push(String(a.contextCode||a.context_code)),{previewCodes:c,previewBucket:"LIN_D"}}const s=a.sentences||a.items||[],i=r(Array.isArray(s)?s:[]);return i.length===0&&(a.contextCode||a.context_code)&&i.push(String(a.contextCode||a.context_code)),{previewCodes:i,previewBucket:null}}function y4(e,t){const[a,r]=o.useState(!1),[s,i]=o.useState(-1),[l,c]=o.useState({key:"",urls:[]}),d=o.useRef(null),u=o.useRef(!1),p=o.useRef(null),m=o.useRef(null),[h,g]=o.useState(!1),y=o.useRef([]),{previewCodes:f,previewBucket:w}=b4(e,t),C=`${f.join(",")}|${w??""}`,b=o.useMemo(()=>l.key===C?l.urls:[],[l,C]);o.useEffect(()=>{if(!f.length)return;let x=!1;return(async()=>{const k=[],v=[];for(const B of f)try{const A=zs(B,w);if(!A){k.push("");continue}let N=null;try{N=await Vs(A)}catch{}if(!N)try{const E=await Ws(A);E&&(N=URL.createObjectURL(E),v.push(N))}catch{}k.push(N??"")}catch{k.push("")}x?v.forEach(B=>{try{URL.revokeObjectURL(B)}catch{}}):(y.current.forEach(B=>{try{URL.revokeObjectURL(B)}catch{}}),y.current=v,c({key:C,urls:k}))})(),()=>{x=!0}},[f.join(","),w]),o.useEffect(()=>()=>{y.current.forEach(x=>{try{URL.revokeObjectURL(x)}catch{}}),y.current=[]},[]);const _=o.useCallback(async x=>{if(x.stopPropagation(),x.preventDefault(),u.current){p.current&&Ka(p.current),u.current=!1;try{d.current?.pause()}catch{}r(!1),i(-1);return}if(!b.filter(Boolean).length)return;let k=null;const v=()=>{u.current=!1;try{d.current?.pause()}catch{}k?.()};p.current=v;const B=Ga(v);u.current=!0,r(!0);for(let A=0;A<b.length&&u.current;A++){const N=b[A];if(N){i(A);try{await new Promise((E,T)=>{k=E;const I=new Audio(N);d.current=I,I.onended=()=>E(),I.onerror=()=>T(),I.play().catch(T)})}catch{break}}}B(),p.current===v&&(p.current=null,u.current=!1,r(!1),i(-1))},[b]);return o.useEffect(()=>()=>{p.current&&Ka(p.current),u.current=!1;try{d.current?.pause()}catch{}d.current=null},[]),{playing:a,playingIndex:s,previewUrls:b,previewHover:h,setPreviewHover:g,previewBtnRef:m,handlePreview:_}}const v4=e=>{if(!e)return[];const t=typeof e.context=="string"&&e.context.trim()||typeof e.sentence=="string"&&e.sentence.trim()||typeof e.text=="string"&&e.text.trim()||"";if(t)return[String(t)];const a=e.sentences||e.items||e.questions||[];return Array.isArray(a)&&a.length>0?a.map(r=>{if(typeof r=="string")return r;if(r&&typeof r=="object"){const s=r;return s.sentence||s.text||s.context||s.question||s.title||""}return""}).filter(r=>typeof r=="string"&&r.trim().length>0).map(r=>r.trim()):[]};function ao(e){const{index:t,type:a,trainingData:r,ariaLabel:s,depth:i,renderPopup:l,completed:c,completedIds:d,selectedIds:u,tooltipText:p,useDescriptionTooltip:m=!1,onRemove:h,hideCheckBadge:g=!1,showTypeLabel:y=!1,onComplete:f,onSelect:w,onMore:C,countLabelOverride:b,size:_="square"}=e||{},{t:x}=be.useTranslation(),[k,v]=o.useState(!1),B=o.useRef(null),[A,N]=o.useState(!1);o.useEffect(()=>{B.current?.matches(":hover")&&N(!0)},[]);const{playing:E,playingIndex:T,previewUrls:I,previewHover:R,setPreviewHover:V,previewBtnRef:j,handlePreview:M}=y4(r,a?.key),F=o.useCallback(()=>{w?w():v(!0)},[w]),U=o.useCallback(()=>v(!1),[]),Q=o.useCallback(()=>N(!0),[]),z=o.useCallback(()=>N(!1),[]),G=o.useCallback(()=>V(!0),[V]),W=o.useCallback(()=>V(!1),[V]),[L,D]=o.useState(null);o.useLayoutEffect(()=>{R&&D(j.current?.getBoundingClientRect()??null)},[R,j]);const[O,P]=o.useState(null);o.useLayoutEffect(()=>{A&&!k&&m&&P(B.current?.getBoundingClientRect()??null)},[A,k,m]);const H=o.useCallback(se=>{se.target===se.currentTarget&&(se.key==="Enter"||se.key===" ")&&(se.preventDefault(),F())},[F]),$=r||null,Y=o.useMemo(()=>{if(!m)return null;const se=p?(Array.isArray(p)?p:[p]).filter(Boolean):null,Ie=se&&se.length>0?se:v4($);return Ie&&Ie.length>0?Ie:null},[m,p,$]),ee=o.useCallback(se=>{se.stopPropagation(),h?.()},[h]),Z=o.useCallback(se=>se.stopPropagation(),[]),ae=o.useCallback(se=>{typeof f=="function"&&f(se)},[f]),_e=c||(d&&r?.id!=null?d.has(String(r.id)):!1),re=!_e&&(u!=null&&r?.id!=null?u.has(String(r.id)):!1);el("speechear.popup.close",U);const ue=di(),q=`${a?.label||""} ${t+1}`,oe=$?.title||$?.name||q;let de=a?.icon,ve,ge="",Se="";try{const se=$?.category_0||$?.category_main_code||$?.category_main,Ie=$?.category_1||$?.category_sub_code||$?.category_sub,ze=ue.find(Ge=>Ge.key===se);ze?.icon&&(de=ze.icon),!ve&&ze?.color&&(ve={"--t-item-fg":ze.color}),!ve&&$?.iconColor&&(ve={"--t-item-fg":$.iconColor}),ge=ze?x(`topic.${ze.key}`,{defaultValue:ze.label||""}):"";try{const Ge=ze?.subs?.find(Ze=>Ze.key===Ie);Se=Ge?x(`topic.sub.${Ge.key}`,{defaultValue:Ge.label||""}):""}catch{}}catch{}const Ce=Se?`${ge} / ${Se}`:ge||a?.label||oe,Ee=se=>x("training.countQuestions",{n:se}),Be=se=>x("training.countSentences",{n:se});let Re="";try{if($)if(a?.key==="LISTEN_IN_NOISE"){let se=0;Array.isArray($.items)&&$.items.length>0?se=$.items.length:Array.isArray($.sentences)&&$.sentences.length>0?se=$.sentences.length:$.sentences&&(se=1),Re=Be(se)}else if(a?.key==="SHORT_STORY"){let se=1;Array.isArray(r?.items)?se=r.items.length:Array.isArray(r?.raw&&r.raw?.items)?se=r.raw.items.length:Array.isArray($?.questions)?se=$.questions.length:Array.isArray($?.sentences)&&(se=$.sentences.length),Re=Ee(se)}else if(a?.key==="LONG_STORY"){let se=1;if(Array.isArray($.items)&&$.items.length>0){const Ie=$.items.reduce((ze,Ge)=>{const Ze=Ge.questionItems;return Array.isArray(Ze)?ze+Ze.length:Array.isArray(Ge.questions)?ze+Ge.questions.length:ze},0);se=Ie>0?Ie:$.items.length}else Array.isArray($.questions)&&$.questions.length>0?se=$.questions.length:Array.isArray($.sentences)&&$.sentences.length>0&&(se=$.sentences.length);Re=Ee(se)}else if(a?.key==="ORDERING_SENTENCE"){let se=1;Array.isArray($.items)&&$.items.length>0?se=$.items.length:Array.isArray($.sentences)&&$.sentences.length>0&&(se=$.sentences.length),Re=Be(se)}else Array.isArray($.items)&&(Re=$.items.length>0?Ee($.items.length):"")}catch{}const Le=_==="row",me=_==="list"||Le,ke=_==="compact",Me=_==="small",Te=Me&&a?.key?P2().find(se=>se.key===a.key):void 0,Ae=Te?pi[Te.key]:void 0,ie=Te?Ae?x(`trainingType.${Ae}.title`,{defaultValue:Te.label}):Te.label??"":"",ye=!!y&&!!a?.label&&a.label!==String(oe)||Me&&!!ie&&ie!==String(oe);return n.jsxs(n.Fragment,{children:[n.jsxs("div",{ref:B,className:`training-block-button${me?" training-block-button--list":""}${Le?" training-block-button--row":""}${ke?" training-block-button--compact":""}${Me?" training-block-button--small":""}${_e?" training-block-button--completed":""}${re?" training-block-button--selected":""}${ye&&!Me?" training-block-button--withType":""}${Me&&!ye?" training-block-button--no-type-label":""}`,onClick:F,onPointerEnter:Q,onPointerLeave:z,role:"button",tabIndex:0,onKeyDown:H,"aria-label":typeof s=="string"?s:typeof oe=="string"?oe:void 0,title:!m&&p&&(Array.isArray(p)?p.filter(Boolean).join(`
|
|
853
|
-
`):p)||void 0,children:[n.jsxs("div",{className:"training-block-button__left",children:[y&&a?.label&&a.label!==String(oe)&&n.jsx("span",{className:"training-block-button__type-label caption-1",children:a.label}),Me&&ie&&ie!==String(oe)&&n.jsx("span",{className:"training-block-button__type-label caption-2",children:ie}),n.jsx(jl,{icon:de,label:oe,tooltip:Ce,wrapperStyle:ve,iconSize:Me||ke?"small":"medium"}),!g&&(_e||re)&&!(h&&A)&&n.jsx(ft,{className:h?"training-block-button__check--removable":void 0,type:"dot",icon:"check",position:"top-left",size:"medium","aria-label":_e?x("training.completed","\uD6C8\uB828 \uC644\uB8CC"):x("training.selected","\uC120\uD0DD\uB428")}),h&&n.jsx(ft,{className:`training-block-button__remove${A?" is-hover":""}`,type:"dot",icon:"remove",position:"top-left",size:"medium","aria-label":x("common.remove","\uC81C\uAC70"),onClick:ee}),n.jsx("div",{className:`training-block-button__title ${ke?"body-3":Me?"body-3b":"h3"}`,children:String(oe)}),n.jsxs("div",{className:"training-block-button__description",children:[(()=>{const se=b!==void 0?b:Re;return se?n.jsx("div",{className:`training-block-button__count ${Me?"caption-2":"caption-1"}`,children:se}):null})(),n.jsx("div",{className:"training-block-button__chevron",children:n.jsx(Ue,{icon:"chevron-right",label:x("training.next","\uB2E4\uC74C"),className:"training-block-button__chevron-icon",imgClassName:"training-block-button__chevron-icon-image",maskClassName:"training-block-button__chevron-icon-mask",svgClassName:"training-block-button__chevron-icon-svg",size:Me?12:20})})]}),(me&&!Le||Me)&&I.length>0&&n.jsx("div",{ref:j,className:"training-block-button__preview","data-tooltip-ignore":!0,onClick:Z,onPointerEnter:G,onPointerLeave:W,children:n.jsx(pe,{htmlType:"button",size:Me?28:32,type:"dot",icon:E?"pause":"play",variant:Me?"transparent-lightGray":"default",useBorder:!1,selected:E,ariaLabel:E?x("training.stop","\uC815\uC9C0"):x("training.preview","\uBBF8\uB9AC \uB4E3\uAE30"),onClick:M})})]}),C&&n.jsx("div",{className:"training-block-button__more","data-tooltip-ignore":!0,onClick:se=>{se.stopPropagation(),C(se)},children:n.jsx(pe,{htmlType:"button",size:40,type:"dot",icon:"more-horizontal",variant:"transparent-lightGray",useBorder:!1,ariaLabel:x("common.more","\uB354\uBCF4\uAE30")})})]}),R&&n.jsx(gn,{anchorRect:L,text:E?x("training.stop","\uC815\uC9C0"):x("training.preview","\uBBF8\uB9AC \uB4E3\uAE30"),offset:8,onClose:W}),A&&!k&&m&&(Y?n.jsx(Fn,{anchorRect:O,items:Y,activeIndex:T,onClose:z}):$?.subTitle?n.jsx(gn,{anchorRect:O,text:$.subTitle,offset:8,onClose:z}):null),k&&l&&l({trainingData:$,typeKey:a?.key??"",onClose:U,onComplete:ae,popupTitle:String(oe),popupSubTitle:a?.subTitle,depth:i!=null?String(i):void 0,popupIcon:de,popupIconTooltip:String(Ce),popupWrapperStyle:ve})]})}const Tl=200;function x4(e){return e.itemId?(z2()[e.trainingType]??[]).find(t=>t?.id!=null&&String(t.id)===String(e.itemId))??null:null}function Ml({plan:e,anchorRect:t,offset:a=12,onClose:r}){const{t:s}=be.useTranslation(),i=o.useMemo(()=>W2(s).map(c=>({type:c,items:(e.items??[]).filter(d=>d.trainingType===c.key)})).filter(c=>c.items.length>0),[e.items,s]);if(i.length===0)return null;const l=n.jsx("div",{className:"tooltip-training__box",children:n.jsx("div",{className:"tooltip-training__groups",children:i.flatMap(({type:c,items:d},u)=>[u>0?n.jsx("div",{className:"tooltip-training__divider"},`div-${c.key}`):null,n.jsxs("div",{className:"tooltip-training__section",children:[n.jsx("div",{className:"tooltip-training__section-header",children:n.jsx("span",{className:"tooltip-training__type-label body-3b",children:c.label})}),n.jsx("div",{className:"tooltip-training__items",children:d.map((p,m)=>{const h=x4(p);return h?n.jsx(ao,{index:m,type:c,trainingData:h,size:"compact",hideCheckBadge:!0},p.itemId??m):null})})]},c.key)])})});return t?n.jsx(Qt,{anchorRect:t,offset:a,onClose:r,closeOnOutsideClick:!1,className:"tooltip-training",ariaLabel:s("tooltip.training","\uD6C8\uB828 \uC548\uB0B4"),children:l}):l}const _4=200;function w4({icon:e,count:t,title:a,plan:r,tooltip:s=!0,className:i="",onClick:l,onMouseEnter:c,onMouseLeave:d}){const u=De("count-tile",l&&"count-tile--clickable",i),p=o.useRef(null),[m,h]=o.useState(null),g=o.useRef(null),y=o.useRef(null),f=!!(m&&r&&s),w=o.useCallback(()=>{g.current&&(clearTimeout(g.current),g.current=null),y.current&&(clearTimeout(y.current),y.current=null)},[]),C=o.useCallback(()=>{w(),h(null)},[w]),b=o.useCallback(()=>{!s||!r||(w(),g.current=setTimeout(()=>{g.current=null,h(p.current?.getBoundingClientRect()??null)},Tl))},[s,r,w]),_=o.useCallback(()=>{g.current&&(clearTimeout(g.current),g.current=null),!y.current&&(y.current=setTimeout(()=>{y.current=null,h(null)},_4))},[]);return o.useEffect(()=>()=>{w()},[w]),o.useEffect(()=>{(!s||!r)&&C()},[s,r,C]),o.useEffect(()=>{if(!f)return;const x=v=>v instanceof Element&&(p.current?.contains(v)||!!v.closest(".tooltip-training")),k=v=>{x(v.target)?w():_()};return document.addEventListener("pointerover",k,!0),()=>document.removeEventListener("pointerover",k,!0)},[f,w,_]),n.jsxs(n.Fragment,{children:[n.jsxs("div",{ref:p,className:u,onClick:l?x=>{C(),l(x)}:void 0,onKeyDown:l?x=>{x.key!=="Enter"&&x.key!==" "||(x.preventDefault(),x.currentTarget.click())}:void 0,onPointerEnter:x=>{x.pointerType==="touch"||x.pointerType==="pen"?C():b()},onMouseEnter:c,onMouseLeave:x=>{_(),d?.(x)},role:l?"button":"img",tabIndex:l?0:void 0,"aria-label":`${a} ${t}`,children:[n.jsx(Ue,{icon:e,size:20,className:"count-tile__icon"}),n.jsx("span",{className:"count-tile__count h5","aria-hidden":"true",children:t})]}),m&&r&&n.jsx(Ml,{plan:r,anchorRect:m,onClose:C})]})}let Ba=0,Ll="",ro="",Na=0;function $l(){return Rl(!1)}function k4(){return Rl(!0)}function Rl(e){const t=typeof document<"u";Ba===0&&t&&(Ll=document.body.style.overflow,document.body.style.overflow="hidden"),e&&t&&(Na===0&&(ro=document.body.style.paddingRight),Na++,document.body.style.paddingRight="0px"),Ba++;let a=!1;return()=>{a||(a=!0,Ba=Math.max(0,Ba-1),e&&t&&(Na=Math.max(0,Na-1),Na===0&&(ro?document.body.style.paddingRight=ro:document.body.style.removeProperty("padding-right"))),Ba===0&&t&&(document.body.style.overflow=Ll))}}function A4(){return n.jsx("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round","aria-hidden":!0,children:n.jsx("path",{d:"M6 6l12 12M18 6 6 18"})})}function B4({open:e,onClose:t,ariaLabel:a,title:r,children:s,size:i="md",closeOnBackdrop:l=!0,closeOnEscape:c=!0,showClose:d=!0,className:u,contentClassName:p}){const{t:m}=be.useTranslation(),h=o.useId(),g=o.useRef(null),y=o.useCallback(()=>t(),[t]);o.useEffect(()=>{if(!e)return;const b=document.activeElement,_=$l(),x=g.current;return Fr(x,b),x?.focus(),()=>{_();const k=document.activeElement;(!k||k===document.body||x&&x.contains(k))&&Or(b)?.focus?.()}},[e]);const f=o.useRef(y),w=o.useRef(c);o.useEffect(()=>{f.current=y,w.current=c}),o.useEffect(()=>{if(e)return In(()=>{w.current&&f.current()})},[e]);const C=o.useRef(!1);return Pr(g,e),!e||typeof document>"u"?null:Ut.createPortal(n.jsx("div",{className:De("dialog",u),onPointerDown:l?b=>{C.current=b.target===b.currentTarget}:void 0,onMouseDown:b=>{b.target===b.currentTarget&&b.preventDefault()},onClick:l?b=>{const _=C.current;C.current=!1,_&&b.target===b.currentTarget&&y()}:void 0,children:n.jsxs("div",{ref:g,role:"dialog","aria-modal":"true","aria-label":r?void 0:a,"aria-labelledby":r?h:void 0,tabIndex:-1,className:De("dialog__surface",`dialog__surface--${i}`,p),onClick:b=>b.stopPropagation(),children:[r?n.jsx("div",{className:"dialog__header",children:n.jsx("h2",{id:h,className:"dialog__title h4b",children:r})}):null,d?n.jsx("button",{type:"button",className:"dialog__close","aria-label":m("common.close","\uB2EB\uAE30"),onClick:y,children:n.jsx(A4,{})}):null,n.jsx("div",{className:"dialog__body",children:s})]})}),document.body)}function N4({columns:e,rows:t,rowKey:a,title:r,toolbar:s,empty:i,loading:l,caption:c,className:d=""}){const{t:u}=be.useTranslation(),p=!l&&t.length===0;return n.jsxs("div",{className:De("board",d),children:[r||s?n.jsxs("div",{className:"board__head",children:[r?n.jsx("h2",{className:"board__title",children:r}):n.jsx("span",{}),s?n.jsx("div",{className:"board__toolbar",children:s}):null]}):null,n.jsxs("table",{className:"board__table",children:[c?n.jsx("caption",{className:"board__caption",children:c}):null,n.jsx("thead",{children:n.jsx("tr",{children:e.map(m=>n.jsx("th",{scope:"col",className:De("board__th",`board__cell--${m.headerAlign??m.align??"left"}`),style:m.width?{width:m.width}:void 0,children:m.header},m.key))})}),n.jsx("tbody",{children:l?n.jsx("tr",{children:n.jsx("td",{className:"board__state",colSpan:e.length,children:l})}):p?n.jsx("tr",{children:n.jsx("td",{className:"board__state",colSpan:e.length,children:i??u("board.empty","\uB4F1\uB85D\uB41C \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.")})}):t.map((m,h)=>n.jsx("tr",{className:"board__row",children:e.map(g=>n.jsx("td",{className:De("board__td",`board__cell--${g.align??"left"}`),children:g.render(m,h)},g.key))},a(m,h)))})]})]})}function E4({name:e,role:t,photo:a,media:r,credentials:s,size:i=190,className:l=""}){return n.jsxs("div",{className:De("person-card",l),children:[n.jsx("div",{className:"person-card__photo",style:{width:i,height:i},children:r??(a?n.jsx("img",{src:a,alt:t?`${e} ${t}`:e}):null)}),n.jsx("h3",{className:"person-card__name",children:e}),t?n.jsx("p",{className:"person-card__role",children:t}):null,s?.length?n.jsx("ul",{className:"person-card__credentials",children:s.map(c=>n.jsx("li",{children:c},c))}):null]})}function D4({groups:e,className:t=""}){return n.jsx("div",{className:De("timeline",t),children:e.map(a=>n.jsxs("section",{className:"timeline__group",children:[n.jsx("h3",{className:"timeline__title",children:a.title}),n.jsx("ul",{className:"timeline__rows",children:a.entries.map((r,s)=>n.jsxs("li",{className:"timeline__row",children:[r.label?n.jsx("span",{className:"timeline__label",children:r.label}):null,n.jsx("div",{className:"timeline__items",children:r.items.map((i,l)=>n.jsx("p",{children:i},l))})]},`${r.label??""}-${s}`))})]},a.title))})}function S4({title:e,kind:t,body:a,badge:r,badgeSrc:s,footer:i,width:l,className:c=""}){const d=r??(s?n.jsx("img",{src:s,alt:""}):null);return n.jsxs("div",{className:De("publication-card",c),style:l?{width:l,flexShrink:0}:void 0,children:[d?n.jsx("div",{className:"publication-card__badge","aria-hidden":"true",children:d}):null,n.jsx("h3",{className:"publication-card__title",children:e}),t?n.jsx("p",{className:"publication-card__kind",children:t}):null,n.jsx("p",{className:"publication-card__body",children:a}),i?n.jsx("div",{className:"publication-card__footer",children:i}):null]})}function j4({logo:e,alt:t,onDone:a,durationMs:r=3e3}){const s=ga(a);return o.useEffect(()=>{const i=setTimeout(()=>s.current?.(),r);return()=>clearTimeout(i)},[r,s]),n.jsx("div",{className:"splash-logo",style:{"--splash-logo-duration":`${r}ms`},"aria-hidden":"true",children:n.jsx("img",{src:e,alt:t,className:"splash-logo__image"})})}function T4({eyebrow:e,eyebrowIndex:t,title:a,description:r,level:s=2,tone:i="dark",className:l=""}){const c=s===1?"h1":"h2";return n.jsxs("div",{className:De("section-header",`section-header--${i}`,l),children:[e?n.jsxs("p",{className:"section-header__eyebrow",children:[t?n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"section-header__index",children:t}),n.jsx("span",{"aria-hidden":!0,className:"section-header__rule"})]}):null,e]}):null,a?n.jsx(c,{className:"section-header__title",children:a}):null,r?n.jsx("div",{className:"section-header__description",children:r}):null]})}function M4({items:e,className:t=""}){return n.jsx("ul",{className:De("company-meta",t),children:e.map((a,r)=>n.jsxs("li",{className:"company-meta__item",children:[r>0?n.jsx("span",{"aria-hidden":!0,className:"company-meta__divider",children:"|"}):null,a]},a))})}function Pl({value:e,onChange:t,suggestions:a,openOnFocus:r=!1}){const s=o.useId(),[i,l]=o.useState(!1),[c,d]=o.useState(-1),u=o.useRef(null),p=o.useMemo(()=>{if(!a.length)return[];const B=e??"";return B?a.filter(A=>A.toLowerCase().includes(B.toLowerCase())):r?a:[]},[a,e,r]),[m,h]=o.useState(!1),g=o.useRef([]),y=m&&p.length===0?g.current:p;o.useEffect(()=>{y.length&&(g.current=y)},[y]);const f=o.useCallback(()=>h(!0),[]),w=o.useCallback(()=>h(!1),[]);o.useEffect(()=>{i||d(-1)},[i]),o.useEffect(()=>()=>{u.current&&clearTimeout(u.current)},[]);const C=c<y.length?c:-1,b=o.useCallback(B=>{t?.(B),l(!1)},[t]),_=o.useCallback(()=>l(!0),[]),x=o.useCallback(()=>{l(!0),d(-1)},[]),k=o.useCallback(()=>{u.current=setTimeout(()=>l(!1),120)},[]),v=o.useCallback(B=>{B.nativeEvent.isComposing||B.keyCode===229||(B.key==="ArrowDown"?(B.preventDefault(),l(!0),d(A=>Math.min(y.length-1,(A<y.length?A:-1)+1))):B.key==="ArrowUp"?(B.preventDefault(),d(A=>Math.max(-1,(A<y.length?A:y.length)-1))):B.key==="Enter"?C>=0&&b(y[C]):B.key==="Escape"&&i&&(B.preventDefault(),l(!1)))},[y,C,i,b]);return{listId:s,open:i,activeIdx:C,filtered:y,handleFocus:_,handleBlur:k,handleInput:x,handleKeyDown:v,handleSelect:b,handleCompositionStart:f,handleCompositionEnd:w}}const oo=typeof window<"u"?o.useLayoutEffect:o.useEffect;function zn(e){const{value:t,defaultValue:a,name:r,inputRef:s,onChange:i,label:l,ariaLabel:c,required:d,placeholder:u,ghostText:p,ghostHint:m,type:h="text",disabled:g=!1,readOnly:y=!1,error:f,helperText:w,maxLength:C,size:b=48,variant:_="input",fullWidth:x=!1,newline:k=!1,multiline:v=!1,rows:B=3,leftIcon:A,rightIcon:N,clearable:E=!1,list:T,showCount:I=!0,className:R="",onFocus:V,onBlur:j,onKeyDown:M,onEnter:F,inputMode:U,autoComplete:Q,autoFocus:z,suggestions:G,openOnFocus:W=!1}=e,L=y||g?void 0:G,{t:D}=be.useTranslation(),O=o.useId();!l&&!c&&fn(`TextField:unnamed:${O}`,"[ihab/TextField] \uC774\uB984\uC774 \uC5C6\uC2B5\uB2C8\uB2E4 \u2014 label \uC774\uB098 ariaLabel \uC911 \uD558\uB098\uB97C \uC8FC\uC138\uC694. placeholder \uB294 \uC774\uB984\uC744 \uB300\uC2E0\uD558\uC9C0 \uBABB\uD569\uB2C8\uB2E4.");const P=`tf-${O}`,H=`tf-helper-${O}`,$=o.useRef(null),Y=Pl({value:t??"",onChange:i,suggestions:L??[],openOnFocus:W}),ee=!!L&&Y.open&&Y.filtered.length>0,Z=o.useRef(null),[ae,_e]=o.useState(null),re=o.useCallback(()=>{const Ae=Z.current;if(!Ae||typeof window>"u")return;const ie=Ae.getBoundingClientRect(),ye=230,se=window.innerHeight-ie.bottom<ye+8&&ie.top>ye+8;_e({position:"fixed",left:ie.left,width:ie.width,...se?{bottom:window.innerHeight-ie.top+8}:{top:ie.bottom+8},zIndex:va(Ae)})},[]);oo(()=>{if(!ee)return;re();const Ae=ie=>{const ye=ie.target;ye&&ye.nodeType===1&&ye.closest?.(".text-field__suggestions")||re()};return window.addEventListener("scroll",Ae,!0),window.addEventListener("resize",re),()=>{window.removeEventListener("scroll",Ae,!0),window.removeEventListener("resize",re)}},[ee,re]);const ue=o.useCallback(Ae=>{$.current=Ae,typeof s=="function"?s(Ae):s&&(s.current=Ae)},[s]),q=p?`${p}${m??D("wordTable.save.autoFillHint"," (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)")}`:u,oe=t!==void 0,de=oe&&h==="password",[ve,ge]=o.useState((a??"").length),Se=oe?(t??"").length:ve,Ce=o.useRef(t);oo(()=>{Ce.current=t}),o.useEffect(()=>{const Ae=$.current;if(!de||!Ae)return;const ie=t??"";Ae.value!==ie&&(Ae.value=ie)},[de,t]),o.useEffect(()=>{if(!k||!$.current)return;const Ae=$.current;Ae.style.height="",Ae.scrollHeight>Ae.clientHeight&&(Ae.style.height=`${Ae.scrollHeight}px`)},[t,ve,k]);const Ee=C!=null&&Se>C,Be=b===32?16:20,Re=De("text-field",`text-field--s${b}`,_==="display"?"text-field--display":"",x?"text-field--full-width":"",g?"text-field--disabled":"",y?"text-field--readonly":"",f?"text-field--error":"",A?"text-field--has-left-icon":"",N||E?"text-field--has-right-icon":"",R),Le={id:P,...de?{}:oe?{value:t}:{defaultValue:a},ref:ue,placeholder:q,name:r,disabled:g,readOnly:y,autoFocus:z,maxLength:C,list:T,inputMode:U,autoComplete:Q,"aria-label":!l&&c?c:void 0,"aria-required":d,"aria-invalid":!!f,"aria-describedby":w||f?H:void 0,role:L?"combobox":void 0,"aria-autocomplete":L?"list":void 0,"aria-haspopup":L?"listbox":void 0,"aria-expanded":L?Y.open:void 0,"aria-controls":ee?Y.listId:void 0,"aria-activedescendant":ee&&Y.activeIdx>=0?`${Y.listId}-option-${Y.activeIdx}`:void 0,onChange:Ae=>{const ie=Ae.target;oe||ge(ie.value.length),i?.(ie.value),L&&Y.handleInput(),de&&queueMicrotask(()=>{const ye=Ce.current??"";ie.value!==ye&&(ie.value=ye)})},onCompositionStart:L?Y.handleCompositionStart:void 0,onCompositionEnd:L?Y.handleCompositionEnd:void 0,onFocus:(Ae=>{V?.(Ae),L&&Y.handleFocus()}),onBlur:(Ae=>{j?.(Ae),L&&Y.handleBlur()}),onKeyDown:(Ae=>{const ie=(Ae.key==="Tab"&&!Ae.shiftKey||Ae.key===" ")&&!Ae.nativeEvent.isComposing;if(p&&ie&&!y&&!g&&!(Ae.currentTarget.value??"").trim()){Ae.preventDefault();const ye=Ae.currentTarget;oe||(ye.value=p,ge(p.length)),i?.(p);return}L&&Ae.key==="Enter"&&!Ae.nativeEvent.isComposing&&Y.activeIdx>=0?Ae.preventDefault():F&&Ae.key==="Enter"&&!Ae.nativeEvent.isComposing&&(Ae.preventDefault(),F()),M?.(Ae),L&&Y.handleKeyDown(Ae)})},me=E&&!g&&!y&&Se>0,ke=()=>k?n.jsx("textarea",{...Le,className:"text-field__input text-field__input--auto body-2",rows:1}):v?n.jsx("textarea",{...Le,className:"text-field__input text-field__input--textarea body-2",rows:B}):n.jsx("input",{...Le,type:h,className:"text-field__input body-2"}),Me=_==="display"&&!k&&!v&&!!q,Te=()=>n.jsxs(n.Fragment,{children:[ke(),Me&&n.jsx("span",{className:"text-field__placeholder","aria-hidden":"true",children:q})]});return n.jsxs("div",{ref:Z,className:Re,children:[l&&n.jsxs("label",{htmlFor:P,className:"text-field__label caption-1",children:[l,d&&n.jsx("span",{className:"text-field__required",children:"*"})]}),n.jsxs("div",{className:"text-field__wrap",children:[A&&n.jsx("span",{className:"text-field__icon text-field__icon--left",children:n.jsx(Ue,{icon:A,label:"",className:"",svgClassName:"text-field__icon-svg",size:Be})}),Te(),C!=null&&I&&n.jsxs("span",{className:`text-field__count caption-2${Ee?" text-field__count--over":""}`,children:[Se,"/",C]}),me&&n.jsx(pe,{size:24,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,className:"text-field__clear",ariaLabel:D("textField.clearAriaLabel","\uC785\uB825\uAC12 \uC9C0\uC6B0\uAE30"),htmlType:"button",onMouseDown:Ae=>{Ae.preventDefault()},onClick:()=>{!oe&&$.current&&($.current.value="",ge(0)),i?.("")},tabIndex:-1}),N&&!me&&n.jsx("span",{className:"text-field__icon text-field__icon--right",children:n.jsx(Ue,{icon:N,label:"",className:"",svgClassName:"text-field__icon-svg",size:Be})})]}),ee&&(typeof document>"u"?null:Ut.createPortal(n.jsx("ul",{id:Y.listId,className:"text-field__suggestions",role:"listbox",style:ae??{position:"fixed",visibility:"hidden"},"data-tooltip-ignore":!0,children:Y.filtered.map((Ae,ie)=>n.jsx("li",{id:`${Y.listId}-option-${ie}`,role:"option","aria-selected":ie===Y.activeIdx,className:`text-field__suggestion body-2${ie===Y.activeIdx?" is-active":""}`,onMouseDown:ye=>ye.preventDefault(),onClick:()=>{Y.handleSelect(Ae),$.current?.focus()},children:Ae},`${Ae}-${ie}`))}),document.body)),(w||f)&&n.jsx("div",{className:"text-field__footer",children:n.jsx("span",{id:H,className:"text-field__helper caption-1",role:f?"alert":void 0,children:f||w})})]})}function en({options:e,value:t,onChange:a,placeholder:r,disabled:s=!1,block:i=!1,size:l=48,error:c=!1,className:d="",ariaLabel:u,ariaDescribedBy:p}){const{t:m}=be.useTranslation(),h=r??m("dropdown.placeholder","\uC120\uD0DD"),g=o.useId(),y=o.useId(),f=o.useRef(null),w=o.useCallback((j,M)=>{const F=window.innerHeight-j.bottom<260&&j.top>260;return{position:"fixed",left:j.left,minWidth:j.width,...F?{bottom:window.innerHeight-j.top+6}:{top:j.bottom+6},zIndex:va(M)}},[]),{open:C,setOpen:b,toggle:_,style:x,triggerRef:k,menuRef:v}=xa({computeStyle:w}),[B,A]=o.useState(-1),N=o.useCallback(()=>A(-1),[]),E=e.find(j=>j.value===t);o.useEffect(()=>{if(C){const j=e.findIndex(M=>M.value===t);A(j>=0?j:e.length?0:-1),requestAnimationFrame(()=>{const M=v.current;if(!M)return;const F=M.querySelectorAll(".dropdown__option")[j];F&&(M.scrollTop=Math.max(0,F.offsetTop-M.clientHeight/2+F.clientHeight/2))})}},[C]),o.useEffect(()=>{C&&A(j=>{if(j>=0&&j<e.length)return j;const M=e.findIndex(F=>F.value===t);return M>=0?M:e.length?0:-1})},[C,e.length]);const T=o.useCallback(()=>{s||_()},[s,_]),I=o.useCallback(j=>{j.disabled||s||(j.value!==t&&a?.(j.value),b(!1))},[a,b,s,t]);o.useEffect(()=>{s&&b(!1)},[s,b]);const R=o.useCallback(j=>{if(!s){if(!C){(j.key==="Enter"||j.key===" "||j.key==="ArrowDown")&&(j.preventDefault(),b(!0));return}if(j.key==="Escape"){j.preventDefault(),b(!1);return}j.key==="ArrowDown"?(j.preventDefault(),A(M=>{let F=M+1;for(;F<e.length&&e[F].disabled;)F++;return F<e.length?F:M})):j.key==="ArrowUp"?(j.preventDefault(),A(M=>{let F=M-1;for(;F>=0&&e[F].disabled;)F--;return F>=0?F:M})):(j.key==="Enter"||j.key===" ")&&(j.preventDefault(),e[B]?I(e[B]):b(!1))}},[s,C,e,B,I,b]),V=C?n.jsx("div",{ref:v,id:g,className:"dropdown__menu","data-tooltip-ignore":!0,role:"listbox",style:x,onMouseLeave:N,onMouseDown:j=>j.preventDefault(),children:e.map((j,M)=>n.jsxs("button",{id:`${g}-option-${M}`,type:"button",role:"option","aria-selected":j.value===t,className:De("dropdown__option body-2",j.value===t?"dropdown__option--active":"",M===B?"dropdown__option--active":"",j.disabled?"dropdown__option--disabled":""),onMouseDown:F=>F.preventDefault(),onClick:()=>I(j),onMouseEnter:()=>A(M),disabled:j.disabled,children:[n.jsx("span",{className:"dropdown__option-check",children:j.value===t&&n.jsx("svg",{viewBox:"0 0 14 14",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:n.jsx("polyline",{points:"2 7 5.5 10.5 12 3.5"})})}),j.label]},j.value))}):null;return n.jsxs("div",{ref:f,className:De("dropdown",`dropdown--s${l}`,C?"dropdown--open":"",i?"dropdown--block":"",c?"dropdown--error":"",d),onKeyDown:R,children:[n.jsxs("button",{ref:k,type:"button",className:"dropdown__trigger","aria-haspopup":"listbox","aria-expanded":C,"aria-controls":C?g:void 0,"aria-activedescendant":C&&B>=0?`${g}-option-${B}`:void 0,"aria-label":u,"aria-describedby":[u&&E?y:"",p??""].filter(Boolean).join(" ")||void 0,"aria-invalid":c||void 0,disabled:s,onClick:T,onBlur:j=>{C&&!v.current?.contains(j.relatedTarget)&&b(!1)},children:[n.jsx("span",{id:y,className:`dropdown__trigger-label body-2${E?"":" dropdown__trigger-label--placeholder"}`,children:E?E.label:h}),n.jsx("svg",{className:"dropdown__chevron",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:n.jsx("polyline",{points:"4 6 8 10 12 6"})})]}),typeof document<"u"&&Ut.createPortal(V,f.current?.closest(".ihabdevteam-core-scope")??document.body)]})}function Ya({page:e,totalPages:t,onChange:a,prevLabel:r,nextLabel:s,className:i=""}){const{t:l}=be.useTranslation(),c=r??l("common.prevPage","\uC774\uC804 \uD398\uC774\uC9C0"),d=s??l("common.nextPage","\uB2E4\uC74C \uD398\uC774\uC9C0"),u=Math.max(1,t),p=()=>a(Math.max(1,Math.min(u,e-1))),m=()=>a(Math.min(u,e+1));return n.jsxs("div",{className:De("pagination",i),children:[n.jsx(pe,{htmlType:"button",size:32,type:"dot",shape:"rounded",icon:"chevron-left",ariaLabel:c,disabled:e<=1,onClick:p}),n.jsxs("span",{className:"pagination__info body-3","aria-live":"polite","aria-atomic":"true",children:[Math.min(Math.max(1,e),u)," / ",u]}),n.jsx(pe,{htmlType:"button",size:32,type:"dot",shape:"rounded",icon:"chevron-right",ariaLabel:d,disabled:e>=t,onClick:m})]})}function xn(e){const{t}=be.useTranslation(),{options:a=[],value:r=a.find(b=>!b.disabled)?.key??a[0]?.key,onChange:s=b=>{},className:i="",size:l=40,shape:c="pill",useBG:d=!0,fullWidth:u=!1,minButtonWidth:p,ariaLabel:m}=e||{},h=o.useRef(null),g=a.filter(b=>!b.disabled),y=b=>{if(!g.length)return;const _=Math.max(0,g.findIndex(k=>k.key===r)),x=b==="first"?g[0]:b==="last"?g[g.length-1]:g[(_+b+g.length)%g.length];x&&(s(x.key),Array.from(h.current?.querySelectorAll("[data-segkey]")??[]).find(k=>k.dataset.segkey===x.key)?.focus())},f=b=>{switch(b.key){case"ArrowRight":case"ArrowDown":y(1);break;case"ArrowLeft":case"ArrowUp":y(-1);break;case"Home":y("first");break;case"End":y("last");break;default:return}b.preventDefault()},w=b=>{const _=x=>typeof x=="string"||typeof x=="number";if(!(!_(b.label)||b.count==null||b.count===!1||!_(b.count)))return`${b.label}, ${b.count}`},C=g.some(b=>b.key===r)?r:g[0]?.key;return n.jsx("div",{ref:h,onKeyDown:f,className:De("segmented-control",`segmented-control--${c}`,`segmented-control--${l}`,u&&"segmented-control--full",!d&&"segmented-control--no-bg",p!=null&&"segmented-control--min",i),style:p!=null?{"--segmented-min-button-w":`${p}px`}:void 0,role:"radiogroup","aria-label":m??t("segmentedControl.ariaLabel","\uC120\uD0DD \uD0ED"),children:a.map(b=>n.jsx(pe,{htmlType:"button",role:"radio","aria-checked":b.key===r,"data-segkey":b.key,tabIndex:b.key===C?0:-1,label:b.label,count:b.count,ariaLabel:w(b),disabled:b.disabled,className:b.key===r?"is-selected":"",onClick:()=>{b.disabled||s(b.key)},size:l,shape:c,useBorder:!1,useBG:!1},b.key))})}function so({count:e,search:t,segment:a,filters:r,pageSize:s,pagination:i,actions:l,className:c}){const{t:d}=be.useTranslation(),u=e!=null&&n.jsxs("p",{className:"toolbar__count body-1",role:"status","aria-atomic":"true",children:[e.prefix??d("common.totalPrefix","\uCD1D "),n.jsx("span",{className:"toolbar__count-highlight",children:e.value}),e.unit,e.suffix]}),p=!!(t||r?.length||s||i||l);return n.jsxs("div",{className:De("toolbar",c),children:[n.jsxs("div",{className:"toolbar__row",children:[u,a&&(Array.isArray(a)?a:[a]).map((m,h)=>n.jsx(xn,{size:40,...m},m.ariaLabel??h))]}),p&&n.jsx("div",{className:"toolbar__row",children:n.jsxs("div",{className:"toolbar__row-end",children:[t&&n.jsx(zn,{className:"toolbar__search",size:40,value:t.value,onChange:t.onChange,placeholder:t.placeholder??d("common.search","\uAC80\uC0C9"),ariaLabel:t.placeholder??d("common.search","\uAC80\uC0C9"),clearable:!0}),r?.map((m,h)=>n.jsx(en,{size:40,options:m.options,value:m.value,onChange:m.onChange,ariaLabel:m.ariaLabel},h)),(s||i)&&n.jsxs("div",{className:"toolbar__pager",children:[s&&n.jsx(en,{size:40,options:s.options,value:s.value,onChange:s.onChange,ariaLabel:s.ariaLabel??d("common.pageSizeSelect","\uD398\uC774\uC9C0\uB2F9 \uD45C\uC2DC \uAC1C\uC218")}),i&&n.jsx(Ya,{page:i.page,totalPages:i.total,onChange:i.onChange,prevLabel:i.prevLabel,nextLabel:i.nextLabel})]}),l]})})]})}function Il(e){return typeof e=="string"?e:typeof e=="number"?String(e):Array.isArray(e)?e.map(Il).join(""):""}function L4(e){let t=e.replace(/\r\n/g,`
|
|
851
|
+
and aids recovery.`,site:{title:"Site",malgwi:"Malgwi",soundDirection:"Sound Direction System",vrSoundDirection:"VR Sound Direction System",hearingTest:"Hearing Test Pro"},sns:{title:"SNS",naverBlog:"Naver Blog",kakao:"KAKAO Talk Open Chat"},policy:{title:"Policy",terms:"Terms of Service",privacy:"Privacy Policy"},ceo:"CEO",address:"Address",support:"Support",ceoName:"Ji-hye Han",addressValue:"302, 3F, Haechan Bldg, 32 Siocheong-gil, Chuncheon, Gangwon, Korea"},sg={trainingPhone:{topic:"Gardening",prev:"Prev",next:"Next",speed:"Speed 3",noiseType:"Crowd noise",settings:"Settings",start:{caption:"Press the play (\u25B6) button below and listen carefully. After listening, check the sentence."},feedback:{caption:"Plant the well-grown seedlings in the garden bed and cover them carefully with plastic film."},done:{heardWell:"Heard clearly",listenAgain:"Listen again"}}},ig={timeHM:"{{hh}}:{{mm}}",timeH:"{{hh}}:{{mm}}"},lg={options:"Training Options",difficulty:"Difficulty",exclude:"Exclude",chosung:"Initial Consonant",excludeOptions:{none:"None",noImage:"No Image"}},cg={answer:"Answer",distractor:"Distractor"},ug={phaseWordDownload:"Download Word Data",phaseImageCheck:"Check Images",phasePairAnalysis:"Analyze Word Pairs",downloadingCount:"Downloading {{n}} words",checkingPage:"Checking page {{page}} list",imageCount:"{{done}} / {{total}} items"},dg={clearAriaLabel:"Clear input"},pg={ariaLabel:"Select tab"},mg={ariaLabel:"Tabs"},hg={dragPrompt:"Drag and drop files here",browseButton:"Choose Files",removeAriaLabel:"Remove {{name}}"},fg={ariaLabel:"User avatar"},Cg={relativeDay:{today:"Today",yesterday:"Yesterday",daysAgo:"{{n}}d ago"},reason:{notLoggedIn:"Login required."},list:{title:"Received Homework"},status:{expired:"Expired",done:"Done {{count}}\xD7 \xB7 {{date}}",notDone:"Not done"}},gg={weekly:{title:"Weekly Training",daily:"Daily Listening",crossword:"Crossword"},homework:{title:"Homework Progress",totalRate:"Overall rate",count:"Total",done:"Done",remaining:"Remaining"},today:{tooltipTotal:"Total",tooltipDone:"Done"},filter:{countSuffix:" sessions"},time:{countLabel:"{{n}} sessions",empty:"No training records"},daily:{title:"Today's Listening Record",empty:"No completed sessions"},crossword:{title:"Crossword Quiz",empty:"No completed levels"},visit:{title:"Linked Visit Records"},detail:"Details",trainingType:{LISTEN_IN_NOISE:"Sentence in Noise",SHORT_STORY:"Short Story",LONG_STORY:"Long Story",ORDERING_SENTENCE:"Sentence Ordering"}},bg={import:"Add to my trainings",publisher:"Publisher",time:{justNow:"just now",minutesAgo:"{{n}}m ago",hoursAgo:"{{n}}h ago",daysAgo:"{{n}}d ago",weeksAgo:"{{n}}w ago",monthsAgo:"{{n}}mo ago",yearsAgo:"{{n}}y ago"},badge:{shared:"Store"},publish:{descPlaceholder:"One-line description for the Training Store (optional)"}},yg={manage:{unit:"item(s)"}},vg={cancelLabel:"Cancel"},xg={subtitle:"Select a topic to start listening practice."},_g={steps:"Step {{current}} of {{total}}"},wg={panelTitle:"Training misses",viewItems:"Items",viewTypes:"Types",colPending:"Left",colTrend:"Change",colRuns:"Runs",unitItem:" items",skippedOnly:"{{n}} older record(s) were excluded \u2014 they do not say what was answered.",summaryLabel:"Recorded",summaryValue:"{{items}} items \xB7 {{pending}} still missed",nextLabel:"Next to work on",nextCount:"{{count}}",nextCountCapped:"{{shown}} of {{total}}",picked:"\u2192 {{what}}",typeClear:"All caught up",typePending:"{{pending}} of {{total}} left",flat:"no change",runs:"{{count}} run(s)",avgDuration:"{{sec}}s avg"},kg={resetColumns:"Reset column widths"},Ag={panelTitle:"Word table scores",viewWords:"Words",viewTables:"Tables",colLatest:"When",colTrend:"Change",unitTime:" times",summaryLabel:"Scored",summaryValue:"{{times}} times \xB7 {{words}} words",nextLabel:"Focus next",nextCount:"{{count}}",allClear:"All correct last time.",times:"{{count}}x",flat:"no change",recentLabel:"Recent scorings",nextCountCapped:"{{shown}} of {{total}}"},Bg={ariaLabel:"Banner",dotAriaLabel:"Banner {{index}} of {{count}}"},Ng={selectYearMonth:"Select year and month",chooseDate:"Choose a date"},Eg={previewRegion:"Report preview \u2014 scrollable sideways"},Dg={description:"Description",textbox:"Text",training:"Training guide",menu:"Menu"},Sg={devNone:"No acquisition data",place:{labial:"Bilabial",alveolar:"Alveolar",palatal:"Palatal",velar:"Velar",glottal:"Glottal"}},jg={clearSelection:"Clear selection"},Tg={showResult:"Show {{type}} result"},Mg={selected:"Selected",remove:"Remove",exclude:"Excluded",nthSelected:"Selection {{n}}"},Lg={loading:"Loading"},$g={state:{active:"playing",played:"heard",correct:"correct",wrong:"wrong"}},Rg={ariaLabel:"Breadcrumb"},Pg={empty:"No items yet."},Ig={main:"Main gradient",soft:"Soft",sub:"Sub color",deep:"Deep gradient",softSub:"Soft sub",warm:"Warm (accent)",dark:"Dark",radial:"Radial gradient",diagonal:"Diagonal pattern",dots:"Dot pattern",outline:"Outline",success:"Success / done",naver:"Naver blog notice",instagram:"Instagram notice"},Fg={common:kC,calendar:AC,passCard:BC,searchField:NC,rating:EC,colorPicker:DC,dropdown:SC,accordion:jC,header:TC,nav:MC,settings:LC,usage:$C,account:RC,help:PC,training:IC,trainingSettings:FC,customers:OC,payment:HC,coupons:zC,visits:VC,company:WC,trainingType:qC,myWordTraining:UC,myWordTable:GC,keyWords:KC,wordTable:YC,wordSearch:ZC,wordPrint:XC,topic:JC,accessLinkManager:QC,login:eg,device:tg,manager:ng,wordPairs:ag,game:rg,footer:og,landing:sg,date:ig,trainingSetPage:lg,wordTrainingPreview:cg,wordData:ug,textField:dg,segmentedControl:pg,tabs:mg,fileUpload:hg,avatar:fg,myHomework:Cg,trainingStatus:gg,store:bg,homework:yg,inquiry:vg,trainingPlanRun:xg,progress:_g,trainingMiss:wg,table:kg,wordScore:Ag,topBanner:Bg,datePicker:Ng,report:Eg,tooltip:Dg,phonemeProfile:Sg,bulkBar:jg,debug:Tg,badge:Mg,loader:Lg,soundCompass:$g,breadcrumb:Rg,board:Pg,promoBannerBg:Ig};const Og=[{code:"ko",label:"\uD55C\uAD6D\uC5B4"},{code:"en",label:"English"}],Wr="ko",Hg="ihab_display_language";function _i(){if(typeof window>"u")return Wr;try{const e=localStorage.getItem(Hg);if(e&&Og.some(t=>t.code===e))return e}catch{}return Wr}function wi(e){try{document.documentElement.lang=e}catch{}}At.on("languageChanged",wi),wi(_i()),At.use(be.initReactI18next).init({resources:{ko:{translation:wC},en:{translation:Fg}},lng:_i(),fallbackLng:Wr,interpolation:{escapeValue:!1},react:{useSuspense:!1}});function ht(e,t,a){const r=o.useRef(null);return o.useLayoutEffect(()=>{const s=r.current?.parentElement??null;return t(s,e),()=>a(s)},[e,t,a]),r}const ba={title:"--promo-banner-bg-title",description:"--promo-banner-bg-description"},qr=new WeakMap;function Ur(e){if(e)return qr.get(e)}function Tt(e,t){e&&(e.style.setProperty(ba.title,t.title),e.style.setProperty(ba.description,t.description),qr.set(e,t))}function Mt(e){e&&(e.style.removeProperty(ba.title),e.style.removeProperty(ba.description),qr.delete(e))}const ki={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"default"};function Ai(){const e=ht(ki,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-main","aria-hidden":"true"})}const Bi={title:"var(--color-main)",description:"var(--color-gray)",actionVariant:"main"};function Ni(){const e=ht(Bi,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft","aria-hidden":"true"})}const Ei={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Di(){const e=ht(Ei,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-sub","aria-hidden":"true"})}const Si={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function ji(){const e=ht(Si,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-deep","aria-hidden":"true"})}const Ti={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function Mi(){const e=ht(Ti,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft-sub","aria-hidden":"true"})}const Li={title:"var(--color-black)",description:"var(--color-darkGray)",actionVariant:"main"};function $i(){const e=ht(Li,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-warm","aria-hidden":"true"})}const Ri={title:"var(--color-white)",description:"var(--color-lightGray)",actionVariant:"main"};function Pi(){const e=ht(Ri,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dark","aria-hidden":"true"})}const Ii={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Fi(){const e=ht(Ii,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-radial","aria-hidden":"true"})}const Oi={title:"var(--color-darkMain)",description:"var(--color-gray)",actionVariant:"main"};function Hi(){const e=ht(Oi,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-diagonal","aria-hidden":"true"})}const zi={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function Vi(){const e=ht(zi,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dots","aria-hidden":"true"})}const Wi={title:"var(--color-black)",description:"var(--color-gray)",actionVariant:"main"};function qi(){const e=ht(Wi,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-outline","aria-hidden":"true",children:n.jsx("span",{className:"promo-banner-bg-outline__dot"})})}const Ui={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Gi(){const e=ht(Ui,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-success","aria-hidden":"true"})}const Ki={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"sub"};function Yi(){const e=ht(Ki,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-naver","aria-hidden":"true"})}const Zi={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"transparent-white"};function Xi(){const e=ht(Zi,Tt,Mt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-instagram","aria-hidden":"true"})}const Ht=(e,t,a)=>({key:e,get label(){return At.t(`promoBannerBg.${e}`,t)},textTone:a}),zg=[Ht("main","\uBA54\uC778 \uADF8\uB77C\uB514\uC5B8\uD2B8","light"),Ht("soft","\uC18C\uD504\uD2B8","dark"),Ht("sub","\uC11C\uBE0C \uCEEC\uB7EC","light"),Ht("deep","\uB525 \uADF8\uB77C\uB514\uC5B8\uD2B8","light"),Ht("softSub","\uC18C\uD504\uD2B8 \uC11C\uBE0C","dark"),Ht("warm","\uC6DC(\uAC15\uC870)","dark"),Ht("dark","\uB2E4\uD06C","light"),Ht("radial","\uBC29\uC0AC\uD615 \uADF8\uB77C\uB514\uC5B8\uD2B8","light"),Ht("diagonal","\uB300\uAC01\uC120 \uD328\uD134","dark"),Ht("dots","\uB3C4\uD2B8 \uD328\uD134","dark"),Ht("outline","\uC544\uC6C3\uB77C\uC778","dark"),Ht("success","\uC131\uACF5/\uC644\uB8CC","light"),Ht("naver","\uB124\uC774\uBC84 \uBE14\uB85C\uADF8 \uC548\uB0B4","light"),Ht("instagram","\uC778\uC2A4\uD0C0\uADF8\uB7A8 \uC548\uB0B4","light")],Ji={main:Ai,soft:Ni,sub:Di,deep:ji,softSub:Mi,warm:$i,dark:Pi,radial:Fi,diagonal:Hi,dots:Vi,outline:qi,success:Gi,naver:Yi,instagram:Xi};function Qi({storageKey:e="fontScale",baseFont:t=20,minScale:a=.8,maxScale:r=1.4,step:s=.1,lineHeightRatio:i=1.4}={}){const l=x=>Math.max(a,Math.min(r,Number(x))),c=x=>{try{const v=localStorage.getItem(x),A=v?Number(v):1;return Number.isFinite(A)?l(A):l(1)}catch{return l(1)}},[d,u]=o.useState(()=>c(e)),[p,m]=o.useState(e);p!==e&&(m(e),u(c(e))),o.useEffect(()=>{try{localStorage.setItem(e,String(d))}catch{}},[e,d]);const f=x=>{u(typeof x=="function"?v=>l(x(v)):l(x))},g=()=>f(x=>+(x+s).toFixed(6)),y=()=>f(x=>+(x-s).toFixed(6)),h=d<r-Number.EPSILON,w=d>a+Number.EPSILON,C=Math.round(t*d),b=Math.round(C*i);return{scale:d,setScale:f,increase:g,decrease:y,canIncrease:h,canDecrease:w,fontSize:C,lineHeight:b}}function el(e,t){const a=ga(t);o.useEffect(()=>{const r=()=>a.current();try{window.addEventListener(e,r)}catch{}return()=>{try{window.removeEventListener(e,r)}catch{}}},[e,a])}const Gr=" \xB7 ",tl=(()=>{if(typeof document>"u")return"";const e=document.title;return e.includes(Gr)?e.split(Gr).pop()??e:e})(),Vg=o.createContext(!1),On=[];let nl=null;function Wg(e){const t=o.useContext(Vg);o.useEffect(()=>{if(t||typeof e!="string"||!e)return;On.length===0&&(nl=document.title);const a={text:tl?`${e}${Gr}${tl}`:e};return On.push(a),document.title=a.text,()=>{const r=On.lastIndexOf(a);r>=0&&On.splice(r,1),document.title=On.length?On[On.length-1].text:nl??document.title}},[e,t])}const al=[{value:"10",label:"10\uAC1C\uC529 \uBCF4\uAE30"},{value:"25",label:"25\uAC1C\uC529 \uBCF4\uAE30"},{value:"50",label:"50\uAC1C\uC529 \uBCF4\uAE30"},{value:"100",label:"100\uAC1C\uC529 \uBCF4\uAE30"}],qg=(()=>{let e=null;return()=>(e||(e=new Intl.Collator("ko")),e)})();function Qn(e,t){return qg().compare(e,t)}const qa=new Map;function Ug(e){const t=qa.get(e);if(t)return t;const a=[],r=/-?\d+(?:\.\d+)?/g;let s=0;for(let i=r.exec(e);i;i=r.exec(e)){let l=i.index,c=i[0];c[0]==="-"&&l>0&&!/\s/.test(e[l-1])&&(l+=1,c=c.slice(1)),l>s&&a.push(e.slice(s,l)),a.push(Number(c)),s=i.index+i[0].length}return s<e.length&&a.push(e.slice(s)),qa.size>5e3&&qa.clear(),qa.set(e,a),a}function Gg(e){if(!/^[\d\s-]+$/.test(e))return null;const t=e.replace(/\D/g,"");return t.length<9||t.length>11?null:t[0]==="0"||t[0]==="1"&&e!==t?t:null}function Kg(e,t){const a=u=>u==null||typeof u=="number"&&Number.isNaN(u)?"":String(u).trim(),r=a(e),s=a(t);if(r===s)return 0;const i=(u,p)=>{if(typeof u=="number"&&!Number.isNaN(u))return[u];const m=Gg(p);return m!==null?[m]:Ug(p)},l=i(e,r),c=i(t,s),d=Math.min(l.length,c.length);for(let u=0;u<d;u++){const p=l[u],m=c[u];if(typeof p=="number"&&typeof m=="number"){if(p!==m)return p-m;continue}if(typeof p=="number")return-1;if(typeof m=="number")return 1;const f=Qn(p,m);if(f!==0)return f}return l.length!==c.length?l.length-c.length:Qn(r,s)}const rl=e=>e==null||typeof e=="number"&&Number.isNaN(e)||typeof e=="string"&&e.trim()==="";function Kr(e,t,a){const r=rl(e),s=rl(t);if(r||s)return r===s?0:r?1:-1;const i=Kg(e,t);return a?i:-i}function Yg(e,t,a){const{t:r}=be.useTranslation(),[s,i]=o.useState(()=>{const y=a?.initialPageSize;return y&&al.some(h=>h.value===y)?y:"25"}),[l,c]=o.useState(1),[d,u]=o.useState(t);Object.is(d,t)||(u(t),l!==1&&c(1));const p=o.useMemo(()=>al.map(y=>({...y,label:r("visits.showN",{n:y.value})})),[r]),m=o.useCallback(y=>{i(y),c(1)},[]),f=Math.max(1,Math.ceil(e.length/Number(s)));(l>f||l<1||!Number.isFinite(l))&&c(Math.min(Math.max(1,Number.isFinite(l)?l:1),f));const g=Math.min(Math.max(1,Number.isFinite(l)?l:1),f);return{pageRows:o.useMemo(()=>e.slice((g-1)*Number(s),g*Number(s)),[e,g,s]),pageSizeProps:{options:p,value:s,onChange:m},paginationProps:{page:g,total:f,onChange:c},setPage:c}}function Zg(e){const[t,a]=o.useState(null),r=o.useRef(t),s=o.useRef(e?.onSortChange);s.current=e?.onSortChange;const i=o.useCallback(d=>{const u=r.current,p=u?.key===d?{key:d,asc:!u.asc}:{key:d,asc:!0};r.current=p,a(p),s.current?.(p)},[]),l=o.useCallback((d,u)=>({label:d,sortDir:t?.key===u?t.asc?"asc":"desc":null,onClick:()=>i(u)}),[t,i]),c=o.useCallback((d,u)=>{if(!t)return d;const{key:p,asc:m}=t;return[...d].sort((f,g)=>Kr(u(f,p),u(g,p),m))},[t]);return{\uC815\uB82C:t,\uCE78:l,sortRows:c}}const en="\uC804\uCCB4",Xg=new Map;try{At.store?.on?.("added",()=>Xg.clear())}catch{}Object.fromEntries(Object.entries(c2).map(([e,{nucleus:t}])=>[e,t]));const Jg={labial:e=>e("common.phonetics.place.labial",{defaultValue:"\uC591\uC21C\uC74C"}),alveolar:e=>e("common.phonetics.place.alveolar",{defaultValue:"\uCE58\uC870\uC74C"}),palatal:e=>e("common.phonetics.place.palatal",{defaultValue:"\uACBD\uAD6C\uAC1C\uC74C"}),velar:e=>e("common.phonetics.place.velar",{defaultValue:"\uC5F0\uAD6C\uAC1C\uC74C"}),glottal:e=>e("common.phonetics.place.glottal",{defaultValue:"\uC131\uBB38\uC74C"})},Qg={frontHigh:e=>e("common.phonetics.vowel.frontHigh",{defaultValue:"\uC804\uC124 \uACE0\uBAA8\uC74C"}),backHighUnrounded:e=>e("common.phonetics.vowel.backHighUnrounded",{defaultValue:"\uD6C4\uC124 \uACE0\uBAA8\uC74C \uD3C9\uC21C"}),backHighRounded:e=>e("common.phonetics.vowel.backHighRounded",{defaultValue:"\uD6C4\uC124 \uACE0\uBAA8\uC74C \uC6D0\uC21C"}),frontMid:e=>e("common.phonetics.vowel.frontMid",{defaultValue:"\uC804\uC124 \uC911\uBAA8\uC74C"}),backMidUnrounded:e=>e("common.phonetics.vowel.backMidUnrounded",{defaultValue:"\uD6C4\uC124 \uC911\uBAA8\uC74C \uD3C9\uC21C"}),backMidRounded:e=>e("common.phonetics.vowel.backMidRounded",{defaultValue:"\uD6C4\uC124 \uC911\uBAA8\uC74C \uC6D0\uC21C"}),low:e=>e("common.phonetics.vowel.low",{defaultValue:"\uC800\uBAA8\uC74C"})},eb={j:e=>e("common.phonetics.glide.j",{defaultValue:"j\uD65C\uC74C"}),w:e=>e("common.phonetics.glide.w",{defaultValue:"w\uD65C\uC74C"}),velar:e=>e("common.phonetics.glide.velar",{defaultValue:"\u0270\uD65C\uC74C"})};function tb(e,t){if("place"in t)return Jg[t.place](e);const a=Qg[t.vowel](e);return t.glide?`${a} \xB7 ${eb[t.glide](e)}`:a}const nb=(e,{defaultValue:t})=>t,ol=(e,t)=>({jamos:e,phonetic:t,tooltip:tb(nb,t)}),bn=(e,t)=>t.map(a=>ol([a],{place:e})),Bt=(e,t,a)=>ol([...e],a?{vowel:t,glide:a}:{vowel:t}),Yr={cho:[bn("labial",["\u3142","\u3143","\u314D","\u3141"]),bn("alveolar",["\u3137","\u3138","\u314C","\u3134","\u3139"]),bn("alveolar",["\u3145","\u3146"]),bn("palatal",["\u3148","\u3149","\u314A"]),bn("velar",["\u3131","\u3132","\u314B"]),bn("glottal",["\u314E"])],jung:[[Bt("\u3163","frontHigh"),Bt("\u315F","frontHigh","w"),Bt("\u3162","frontHigh","velar")],[Bt("\u3161","backHighUnrounded")],[Bt("\u315C","backHighRounded"),Bt("\u3160","backHighRounded","j")],[Bt("\u3154\u3150","frontMid"),Bt("\u3156\u3152","frontMid","j"),Bt("\u3159\u315A\u315E","frontMid","w")],[Bt("\u3153","backMidUnrounded"),Bt("\u3155","backMidUnrounded","j"),Bt("\u315D","backMidUnrounded","w")],[Bt("\u3157","backMidRounded"),Bt("\u315B","backMidRounded","j")],[Bt("\u314F","low"),Bt("\u3151","low","j"),Bt("\u3158","low","w")]],jong:[bn("labial",["\u3142","\u3141"]),bn("alveolar",["\u3137","\u3134","\u3139"]),bn("velar",["\u3131","\u3147"])]},ab=e=>e===rb?[]:Array.from(e),rb="__NO_CODA__",Zr=e=>e.map(t=>t.map(({jamos:a,phonetic:r,tooltip:s})=>({v:a.join(""),phonetic:r,tooltip:s}))),sl={cho:Zr(Yr.cho),jung:Zr(Yr.jung),jong:Zr(Yr.jong)};sl.jung.flat().forEach(({v:e})=>{for(const t of ab(e));}),new Set(sl.cho.flat().map(e=>e.v));function ob(e,t=!0){const a=ga(e);o.useEffect(()=>{if(t)return In(()=>{a.current?.()})},[t,a])}function ya(){const[e,t]=o.useState(null),a=o.useCallback(i=>t(i.getBoundingClientRect()),[]),r=o.useCallback(()=>t(null),[]),s=o.useCallback(i=>{const l=i.getBoundingClientRect();t(c=>c?null:l)},[]);return{anchorRect:e,isOpen:e!=null,openAt:a,close:r,toggleAt:s}}function sb(e){const[t,a]=o.useState(null),[r,s]=o.useState(null),i=o.useRef(null);o.useEffect(()=>()=>{i.current&&clearTimeout(i.current)},[]);const l=o.useCallback((d,u)=>{i.current&&clearTimeout(i.current),i.current=setTimeout(()=>{a(d),s(u)},e)},[e]),c=o.useCallback(()=>{i.current&&clearTimeout(i.current),a(null),s(null)},[]);return{payload:t,anchorRect:r,openAfterDelay:l,close:c}}function il(e="warning"){const[t,a]=o.useState(""),[r,s]=o.useState(e),[i,l]=o.useState(0),c=o.useCallback((m,f)=>{s(f),a(m),l(g=>g+1)},[]),d=o.useCallback(m=>c(m,"warning"),[c]),u=o.useCallback(m=>c(m,"normal"),[c]),p=o.useCallback(()=>a(""),[]);return{toastMessage:t,toastType:r,toastKey:i,showToast:c,showWarning:d,showNormal:u,clearToast:p}}function va(e){let t=0;if(e&&typeof window<"u"&&typeof window.getComputedStyle=="function")for(let a=e;a&&a!==document.body&&a!==document.documentElement;a=a.parentElement){const r=parseInt(window.getComputedStyle(a).zIndex,10);!Number.isNaN(r)&&r>t&&(t=r)}return t>0?`max(var(--z-menu, 1500), ${t+1})`:"var(--z-menu, 1500)"}function xa({computeStyle:e,onScroll:t="close",onResize:a="close",ignoreOutsideClickSelector:r}){const[s,i]=o.useState(!1),[l,c]=o.useState({}),d=o.useRef(null),u=o.useRef(null),p=o.useCallback(()=>{d.current&&c(e(d.current.getBoundingClientRect(),d.current))},[e]);o.useEffect(()=>{if(!s)return;p();const g=b=>{const x=b.target;r&&x.closest?.(r)||d.current?.contains(x)||u.current?.contains(x)||i(!1)};document.addEventListener("mousedown",g),document.addEventListener("pointerdown",g);const y=b=>{u.current?.contains(b.target)||(t==="reposition"?p():t==="close"&&i(!1))};t!=="ignore"&&window.addEventListener("scroll",y,!0);const h=()=>{a==="reposition"?p():a==="close"&&i(!1)};let w=null;const C=()=>{h(),w&&clearTimeout(w),w=setTimeout(()=>{w=null,a==="reposition"&&p()},250)};return a!=="ignore"&&(window.addEventListener("resize",h),window.addEventListener("orientationchange",C)),()=>{document.removeEventListener("mousedown",g),document.removeEventListener("pointerdown",g),t!=="ignore"&&window.removeEventListener("scroll",y,!0),a!=="ignore"&&(window.removeEventListener("resize",h),window.removeEventListener("orientationchange",C)),w&&clearTimeout(w)}},[s,p,t,a,r]),o.useEffect(()=>{if(s)return In(()=>i(!1))},[s]);const m=o.useCallback(()=>i(g=>!g),[]),f=o.useCallback(()=>i(!1),[]);return{open:s,setOpen:i,toggle:m,close:f,style:l,triggerRef:d,menuRef:u}}function ib(e,{mode:t="playback",autoStart:a=!1,onPlaySpeaker:r,onComplete:s,playMs:i=1100,feedbackMs:l=1500}={}){const[c,d]=o.useState([]),[u,p]=o.useState(0),[m,f]=o.useState("idle"),[g,y]=o.useState(null),[h,w]=o.useState([]),[C,b]=o.useState(null),[x,v]=o.useState(0),A=o.useRef(0),k=o.useCallback(W=>{A.current=typeof W=="function"?W(A.current):W,v(A.current)},[]),N=o.useRef(r),_=o.useRef(s);o.useEffect(()=>{N.current=r,_.current=s},[r,s]);const B=o.useRef([]),E=()=>{B.current.forEach(clearTimeout),B.current=[]},P=(W,L)=>{B.current.push(setTimeout(L,W))};o.useEffect(()=>()=>E(),[]);const H=c[u]?.id??null,S=o.useRef(null),V=o.useCallback(()=>{E(),f("playing"),w([]),b(null),k(0);let W=0;e.forEach((L,D)=>{P(W,()=>{p(D),y(L.id),N.current?.(L)}),P(W+1e3,()=>{y(null),w(F=>[...F,L.id])}),W+=1300}),P(W,()=>{f("done"),_.current?.({score:0,total:e.length})})},[e,k]),j=o.useCallback((W,L)=>{if(L>=W.length){f("done"),_.current?.({score:A.current,total:W.length});return}S.current=null,p(L),b(null),f("playing"),y(W[L].id),N.current?.(W[L]),P(i,()=>{y(null),f("waiting")})},[i]),M=o.useCallback(()=>{E();const W=fa(e);d(W),k(0),w([]),j(W,0)},[e,j,k]),I=o.useCallback(()=>{t==="playback"?(d(e),V()):M()},[t,e,V,M]),G=o.useCallback(()=>{E(),f("idle"),y(null),w([]),b(null),p(0),k(0),d([])},[k]),Q=e.map(W=>W.id).join("|");o.useEffect(()=>(a?I():G(),()=>E()),[t,Q,a]);const z=o.useCallback(W=>{m!=="waiting"||t==="playback"||S.current===u||(S.current=u,b(W),W===c[u]?.id&&k(L=>L+1),t==="exam"?(f("playing"),P(400,()=>j(c,u+1))):(f("feedback"),P(l,()=>j(c,u+1))))},[m,t,c,u,j,l,k]),q=t==="playback"?e.length:c.length;return{bind:{activeSpeakerId:g,playedIds:h,selectedId:C,answerId:H,showFeedback:m==="feedback",clickable:m==="waiting",onSelectSpeaker:z},index:u,total:q,score:x,phase:m,done:m==="done",start:I,reset:G}}function lb({title:e,description:t,actionLabel:a,onAction:r,bg:s,color:i,size:l="medium",actionVariant:c,titleColor:d,descriptionColor:u,className:p=""}){const m=s??i??"main",f=o.useRef(null),[g,y]=o.useState("main"),h=Zt("(max-width: 767px)"),w=o.useRef({title:!1,description:!1});o.useLayoutEffect(()=>{const x=f.current;if(!x)return;const v=Ur(x),A=(k,N,_)=>{if(_!==void 0)x.style.setProperty(N,_),w.current[k]=!0;else if(w.current[k]){const B=v?.[k];B?x.style.setProperty(N,B):x.style.removeProperty(N),w.current[k]=!1}};A("title","--promo-banner-bg-title",d),A("description","--promo-banner-bg-description",u)},[d,u,m]),o.useLayoutEffect(()=>{const x=f.current;if(!x)return;const v=Ur(x);y(v?.actionVariant??"main")},[m]);const C=De("promo-banner",`promo-banner--${l}`,p),b=Ji[m];return n.jsxs("div",{ref:f,className:C,role:"note",children:[n.jsx(b,{}),n.jsxs("div",{className:"promo-banner__text",children:[n.jsx("span",{className:`promo-banner__title ${l==="small"?"body-2":"h2"}`,children:e}),t&&n.jsx("span",{className:"promo-banner__description body-3",children:t})]}),a&&r&&n.jsx(pe,{htmlType:"button",size:40,variant:c??g,shape:"pill",useBorder:!0,onClick:r,ariaLabel:a,...h?{type:"dot",icon:"arrow-right"}:{rightIcon:"arrow-right",label:a,minWidth:140}})]})}function cb({children:e,interval:t=5e3,dotTone:a,className:r="","aria-label":s}){const{t:i}=be.useTranslation(),l=s??i("topBanner.ariaLabel","\uBC30\uB108"),c=o.Children.toArray(e),d=c.length,[u,p]=o.useState(0),[m,f]=o.useState(!1),[g,y]=o.useState(!1),[h,w]=o.useState(!1),C=o.useRef(null),b=o.useRef(null),x=o.useRef(null),v=Hr(),A=m||g||h,k=d>0?Math.min(u,d-1):0;o.useEffect(()=>{if(d<2||t<=0||A||v)return;const _=window.setInterval(()=>p(B=>(Math.min(B,d-1)+1)%d),t);return()=>window.clearInterval(_)},[d,t,A,v]);const N=_=>{b.current!=null&&window.clearTimeout(b.current),b.current=window.setTimeout(()=>{b.current=null,w(!1)},_)};return o.useEffect(()=>()=>{b.current!=null&&window.clearTimeout(b.current)},[]),o.useEffect(()=>{if(!h)return;const _=B=>{B.pointerType==="touch"&&(x.current&&x.current.contains(B.target)||(b.current!=null&&(window.clearTimeout(b.current),b.current=null),w(!1)))};return document.addEventListener("pointerdown",_,!0),()=>document.removeEventListener("pointerdown",_,!0)},[h]),d===0?null:n.jsxs("section",{ref:x,className:De("top-banner",r),"aria-label":l,"aria-roledescription":"carousel",onPointerEnter:_=>{C.current=_.pointerType},onPointerDown:_=>{C.current=_.pointerType,_.pointerType==="touch"&&(b.current!=null&&(window.clearTimeout(b.current),b.current=null),w(!0))},onPointerUp:_=>{_.pointerType==="touch"&&N(5e3)},onPointerCancel:_=>{_.pointerType==="touch"&&N(5e3)},onMouseEnter:()=>{C.current!=="touch"&&f(!0)},onMouseLeave:()=>f(!1),onFocus:_=>{let B=!0;try{B=_.target.matches(":focus-visible")}catch{B=!0}y(B)},onBlur:_=>{_.currentTarget.contains(_.relatedTarget)||y(!1)},children:[n.jsx("div",{className:"top-banner__viewport",children:n.jsx("div",{className:"top-banner__track",style:{transform:`translateX(-${k*100}%)`},children:c.map((_,B)=>n.jsx("div",{className:"top-banner__slide","aria-hidden":B!==k,...B!==k?{inert:!0}:{},children:_},B))})}),d>1&&n.jsx("div",{className:`top-banner__dots${(a?.[k]??"light")==="dark"?" top-banner__dots--dark":""}`,children:c.map((_,B)=>n.jsx("button",{type:"button",className:`top-banner__dot${B===k?" top-banner__dot--active":""}`,"aria-label":i("topBanner.dotAriaLabel",{count:d,index:B+1,defaultValue:`${d}\uAC1C \uC911 ${B+1}\uBC88\uC9F8 \uBC30\uB108`}),"aria-current":B===k,onClick:()=>p(B)},B))})]})}function ub({title:e,body:t,open:a=!1,onToggle:r,avatar:s,titleClassName:i="body-2",bodyClassName:l="body-2",className:c=""}){const{t:d}=be.useTranslation();return n.jsxs("div",{className:`accordion-item ${a?"accordion-item--open":""} ${c}`.trim(),role:"listitem",children:[n.jsxs("div",{className:"accordion-item__header",role:"button",tabIndex:0,"aria-expanded":a,"data-accordion-header":!0,onClick:r,onKeyDown:u=>{if(u.key==="Enter"||u.key===" ")u.preventDefault(),r?.();else if(u.key==="ArrowDown"||u.key==="ArrowUp"){u.preventDefault();const p=u.currentTarget.closest('[role="list"]');if(!p)return;const m=Array.from(p.querySelectorAll("[data-accordion-header]")),f=m.indexOf(u.currentTarget);(u.key==="ArrowDown"?m[f+1]:m[f-1])?.focus()}},children:[s&&n.jsx("div",{className:"accordion-item__avatar",children:s}),n.jsx("div",{className:`accordion-item__title ${i}`,children:e}),n.jsx("div",{className:"accordion-item__chevron",children:n.jsx(Ue,{icon:a?"chevron-up":"chevron-down",label:a?d("accordion.collapse","\uC811\uAE30"):d("accordion.expand","\uD3BC\uCE58\uAE30"),className:"accordion-item__chevron-icon",imgClassName:"accordion-item__chevron-image"})})]}),a&&n.jsx("div",{className:`accordion-item__body ${l}`,children:typeof t=="string"?n.jsx("p",{children:t}):t})]})}function db({items:e=[],defaultOpenIndex:t=0,size:a=72,className:r="",bodyClassName:s}){const[i,l]=o.useState({index:t}),c=(d,u)=>i.id!=null&&d.id!=null?d.id===i.id:i.id==null&&u===i.index;return n.jsx("div",{className:`accordion-group accordion-group--s${a} ${r}`.trim(),role:"list",children:e.map((d,u)=>n.jsx(ub,{title:d.title,body:d.body,avatar:d.avatar,open:c(d,u),onToggle:()=>l(c(d,u)?{index:-1}:{index:u,id:d.id}),bodyClassName:s},d.id??u))})}function pb(){return n.jsx("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:n.jsx("polyline",{points:"2,6 5,9 10,3"})})}function mb(){return n.jsxs("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round","aria-hidden":"true",children:[n.jsx("line",{x1:"3",y1:"3",x2:"9",y2:"9"}),n.jsx("line",{x1:"9",y1:"3",x2:"3",y2:"9"})]})}function hb(){return n.jsx("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round","aria-hidden":"true",children:n.jsx("line",{x1:"2.5",y1:"6",x2:"9.5",y2:"6"})})}function ft(e){const{t}=be.useTranslation(),{type:a="bar",size:r,className:s="","aria-label":i,"aria-hidden":l}=e;if(a==="dot"){const{icon:A,number:k,position:N="top-right",onClick:_,animate:B=!1}=e,E=A??"check",P=k!==void 0?"number":E,H=typeof r=="number"?r:32,S=De("circle-badge",`circle-badge--${P}`,`circle-badge--${N}`,`circle-badge--${H}`,B?"circle-badge--animate":"",_?"circle-badge--clickable":"",s),V=k!==void 0?t("badge.nthSelected",{n:k,defaultValue:"{{n}}\uBC88\uC9F8 \uC120\uD0DD"}):{check:t("badge.selected","\uC120\uD0DD\uB428"),remove:t("badge.remove","\uC81C\uAC70"),minus:t("badge.exclude","\uC81C\uC678")}[E];return n.jsxs("span",{className:S,onClick:_,onKeyDown:_?j=>{j.key!=="Enter"&&j.key!==" "||(j.preventDefault(),j.currentTarget.click())}:void 0,"aria-label":l?void 0:i??V,"aria-hidden":l||void 0,role:_?"button":l?void 0:"img",tabIndex:_?0:void 0,children:[k!==void 0&&k,k===void 0&&E==="check"&&n.jsx(pb,{}),k===void 0&&E==="remove"&&n.jsx(mb,{}),k===void 0&&E==="minus"&&n.jsx(hb,{})]})}const{label:c,children:d,variant:u="default",fill:p="filled",minWidth:m,iconLeft:f,iconRight:g,color:y}=e,h=typeof r=="number"?"medium":r??"medium",w={small:"caption-2b",medium:"body-3b",large:"body-2b"}[h]??"body-2b",C={small:12,medium:14,large:16}[h]??14,b=De("badge",`badge--${u}`,`badge--${h}`,p!=="filled"?`badge--${p}`:"",w,s),x=y?.startsWith("--")?`var(${y})`:y,v=m!==void 0||x?{...m!==void 0?{minWidth:typeof m=="number"?`${m}px`:m}:{},...x?{"--badge-color":x}:{}}:void 0;return n.jsxs("span",{className:b,style:v,"aria-label":l?void 0:i,role:i&&!l?"img":void 0,"aria-hidden":l||void 0,children:[f&&n.jsx(Ue,{icon:f,size:C,className:"badge__icon"}),c??d,g&&n.jsx(Ue,{icon:g,size:C,className:"badge__icon"})]})}function _a({columns:e=[],onClose:t,className:a="",size:r="medium"}){const{t:s}=be.useTranslation(),i=r==="small"?40:48,[l,c]=o.useState([]),d=o.useMemo(()=>{const w=[{title:null,columns:e}];let C=e;for(const b of l){const x=C?.[b.ci]?.items?.[b.ii];if(!x||!Array.isArray(x.children)||!x.children.length)break;C=[{title:null,items:x.children}],w.push({title:x.label||null,columns:C})}return w},[e,l]),u=d[d.length-1],p=d.length-1,m=o.useCallback(()=>c(w=>w.slice(0,Math.max(0,Math.min(w.length,p)-1))),[p]),f=o.useRef(null),g=o.useRef(null),y=d.length;o.useEffect(()=>{g.current||(g.current=document.activeElement);let w=0,C=0;const b=()=>{const x=f.current?.querySelector("button:not([disabled])");if(x&&x.offsetParent){x.focus({preventScroll:!0});return}C++<20&&(w=requestAnimationFrame(b))};return w=requestAnimationFrame(b),()=>cancelAnimationFrame(w)},[y]),o.useEffect(()=>()=>{g.current?.focus?.({preventScroll:!0})},[]);const h=o.useCallback((w,C,b)=>{if(w){if(Array.isArray(w.children)&&w.children.length){c(x=>[...x.slice(0,p),{ci:C,ii:b}]);return}try{typeof w.onClick=="function"&&w.onClick()}catch{}try{w&&w.closeOnSelect&&typeof t=="function"&&t()}catch{}}},[t,p]);return n.jsxs("div",{className:`tooltip-menu tooltip-menu--${r} ${a}`,children:[(d.length>1||u.title)&&n.jsxs("div",{className:"tooltip-menu__header",children:[d.length>1?n.jsx(pe,{htmlType:"button",size:i,type:"dot",icon:"chevron-left",ariaLabel:s("common.back","\uB4A4\uB85C"),onClick:m,variant:"transparent-gray",useBorder:!1}):null,n.jsx("div",{className:"tooltip-menu__title button-1",children:u.title})]}),n.jsx("div",{className:"tooltip-menu__columns",ref:f,children:u.columns&&u.columns.map((w,C)=>n.jsxs("div",{className:"tooltip-menu__column",children:[w.title?n.jsx("div",{className:"tooltip-menu__column-title body-3",children:w.title}):null,n.jsx("div",{className:"tooltip-menu__items",children:(w.items||[]).map((b,x)=>n.jsxs(o.Fragment,{children:[b.separatorBefore&&x>0&&n.jsx("div",{className:"tooltip-menu__separator",role:"separator"}),n.jsx(pe,{htmlType:"button",className:"tooltip-menu__item",size:i,type:b.label?"bar":"dot",icon:b.selected?"check":b.icon||"none",rightIcon:Array.isArray(b.children)&&b.children.length?"chevron-right":b.badgeCount?n.jsx(ft,{type:"dot",position:"inline",number:Math.min(b.badgeCount,99),size:24,"aria-hidden":!0}):void 0,label:b.label,ariaLabel:b.label&&b.badgeCount&&b.badgeCount>0?s("nav.badgeLabel",{label:b.label,count:b.badgeCount,defaultValue:"{{label}}, {{count}}\uAC1C"}):b.label,onClick:()=>h(b,C,x),selected:b.selected,disabled:b.disabled,showTooltipInfo:b.tooltip||!1,useBorder:!1,align:"left"})]},x))})]},C))})]})}const ll=".content-area";function Xr(e,t="Nav"){try{const a=typeof e=="string"?document.querySelector(e):e?.current??document.querySelector(ll);if(a){a.scrollTop=0;return}const r=document.scrollingElement??document.documentElement;r&&r.scrollHeight<=r.clientHeight&&fn("nav-scroll-container",`[${t}] \uBCF8\uBB38\uC744 \uB9E8 \uC704\uB85C \uB418\uB3CC\uB9B4 \uD1B5\uC744 \uBABB \uCC3E\uC558\uB2E4(\uAE30\uBCF8 ${ll}) \u2014 \uCC3D\uB3C4 \uAD6C\uB97C \uC218 \uC5C6\uC5B4 \uC544\uBB34 \uC77C\uB3C4 \uD558\uC9C0 \uC54A\uB294\uB2E4. scrollContainer \uB85C \uD1B5\uC744 \uC54C\uB824 \uC900\uB2E4.`),window.scrollTo({top:0})}catch{}}const Jr=52,Ua=10,cl=e=>e&&e>0?e:0;function ul({items:e=[],activeKey:t,onChange:a,appMode:r,onAppModeChange:s,moreItems:i=[],scrollContainer:l}){const{t:c}=be.useTranslation(),d=r==="manager"?"malgwi":"manager",u=r==="manager"?"arrow-left":"arrow-right",p=r==="manager"?c("nav.modeLabelMalgwi","\uB9D0\uADC0"):c("nav.modeLabelManager","\uB9D0\uADC0 \uB9E4\uB2C8\uC800"),m=o.useRef(null),[f,g]=o.useState(0),y=e.length;o.useEffect(()=>{const q=m.current;if(!q)return;const W=()=>{const D=typeof getComputedStyle=="function"?getComputedStyle(q):null,F=q.clientWidth-(parseFloat(D?.paddingLeft??"")||0)-(parseFloat(D?.paddingRight??"")||0),R=q.querySelector(".bottom-nav__left"),O=R?.nextElementSibling,$=(R?.offsetWidth??0)+(R&&O?.classList.contains("bottom-nav__divider")?O.offsetWidth:0);g(Math.max(0,F-$))};if(W(),typeof ResizeObserver>"u")return;const L=new ResizeObserver(W);return L.observe(q),()=>L.disconnect()},[]);const h=Jr+1,w=q=>Math.max(0,Math.floor((q+Ua)/(Jr+Ua))),C=y*(Jr+Ua)-Ua<=f,b=f<=0||i.length===0&&C?y:Math.min(y,w(f-h)),x=f>0&&b<y,v=x?b:y,A=e.slice(0,v),k=e.slice(v),N=x||i.length>0,_=o.useCallback((q,W)=>({position:"fixed",bottom:window.innerHeight-q.top+8,right:window.innerWidth-q.right,zIndex:va(W)}),[]),B=o.useId(),{open:E,toggle:P,close:H,style:S,triggerRef:V,menuRef:j}=xa({computeStyle:_,onScroll:"ignore",onResize:"reposition"}),M=o.useCallback((q,W)=>W>0?c("nav.badgeLabel",{label:q,count:W,defaultValue:"{{label}}, {{count}}\uAC1C"}):q,[c]),I=o.useCallback(()=>s?.(d),[s,d]),G=o.useMemo(()=>k.find(q=>!!q.key&&q.key===t)??i.find(q=>q.selected||q.key&&q.key===t),[k,t,i]),Q=o.useMemo(()=>[{items:[...k.map(q=>({label:q.label,icon:q.icon,badgeCount:q.badgeCount,selected:!!q.key&&q.key===t,closeOnSelect:!0,disabled:q.state==="disabled",onClick:()=>{q.state!=="disabled"&&(q.key&&a&&(a(q.key),Xr(l,"BottomNav")),H())}})),...i.map(q=>({label:q.label,icon:q.icon,badgeCount:q.badgeCount,selected:q.selected??(!!q.key&&q.key===t),closeOnSelect:!0,onClick:()=>{q.onClick?.(),H()}}))]}],[k,i,t,a,H]),z=[...k,...i].reduce((q,W)=>q+cl(W.badgeCount),0);return n.jsxs("nav",{className:"bottom-nav",ref:m,"aria-label":c("nav.bottomNav","\uD558\uB2E8 \uB124\uBE44\uAC8C\uC774\uC158"),children:[s&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"bottom-nav__left",children:n.jsx(pe,{htmlType:"button",size:52,type:"dot",icon:u,ariaLabel:p,className:"bottom-nav-item",onClick:I})}),n.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"})]}),n.jsx("div",{className:"bottom-nav__items",children:A.map((q,W)=>{const L=cl(q.badgeCount);return n.jsxs("span",{className:"bottom-nav__slot",children:[n.jsx(pe,{htmlType:"button",size:52,type:"dot",icon:q.icon,ariaLabel:M(q.label,L),selected:!!q.key&&q.key===t,disabled:q.state==="disabled",className:"bottom-nav-item",onClick:()=>{q.key&&(a?.(q.key),Xr(l,"BottomNav"))}}),L>0&&n.jsx("span",{"aria-hidden":"true",children:n.jsx(ft,{type:"dot",position:"top-right",number:Math.min(L,99),size:24})})]},q.key??`__slot-${W}`)})}),N&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"}),n.jsx("div",{className:"bottom-nav__right",children:n.jsxs("div",{ref:V,className:"bottom-nav__slot",children:[n.jsx(pe,{htmlType:"button",size:52,type:"dot",icon:G?.icon??"ellipsis",ariaLabel:M(G?.label??c("nav.more","\uB354\uBCF4\uAE30"),z),selected:!!G,className:"bottom-nav-item",onClick:P,"aria-expanded":E,"aria-controls":E?B:void 0}),z>0&&n.jsx("span",{"aria-hidden":"true",children:n.jsx(ft,{type:"dot",position:"top-right",number:Math.min(z,99),size:24})}),E&&Ut.createPortal(n.jsx("div",{id:B,role:"group","aria-label":c("nav.moreMenu","\uB354\uBCF4\uAE30 \uBA54\uB274"),className:"tooltip-content",style:S,ref:j,children:n.jsx(_a,{columns:Q,onClose:H})}),document.body)]})})]})]})}function dl(e){if(typeof e!="string")return!1;let t="";for(const r of e){const s=r.charCodeAt(0);s<=32||s>=127&&s<=159||(t+=r)}if(!t)return!1;const a=/^([a-zA-Z][a-zA-Z0-9+.-]*):/.exec(t);return a?["http","https","mailto","tel"].includes(a[1].toLowerCase()):!0}function pl(e,t,a){return a&&a>0?e("nav.badgeLabel",{label:t,count:a,defaultValue:"{{label}}, {{count}}\uAC1C"}):t}function fb(e){const{t}=be.useTranslation(),{activeKey:a,unreadCount:r,onDebug:s,onNotification:i,onSetting:l,onHelp:c,onFeedback:d,onAccount:u}=e||{},p="default";return s||i||l||c||d||u?n.jsxs("div",{className:"side-nav__footer",children:[s&&n.jsx(pe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:p,icon:"terminal",ariaLabel:t("nav.debug","\uB514\uBC84\uADF8"),onClick:s,selected:a==="debug"}),i&&n.jsxs("span",{className:"side-nav__notification-wrap",children:[n.jsx(pe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:p,icon:"bell",ariaLabel:pl(t,t("nav.notifications","\uC54C\uB9BC"),r),onClick:i,selected:a==="notifications"}),!!r&&r>0&&n.jsx(ft,{type:"dot",number:Math.min(r,99),size:24,"aria-hidden":!0})]}),l&&n.jsx(pe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:p,icon:"settings",ariaLabel:t("nav.settings","\uC124\uC815"),onClick:l,selected:a==="settings"}),c&&n.jsx(pe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:p,icon:"message-circle-question-mark",ariaLabel:t("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:c,selected:a==="help"}),d&&n.jsx(pe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:p,icon:"bug",ariaLabel:t("nav.feedback","\uBC84\uADF8\uC2E0\uACE0"),onClick:d,selected:a==="feedback"}),u&&n.jsx(pe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:p,icon:"user-round",ariaLabel:t("nav.account","\uACC4\uC815"),onClick:u,selected:a==="account"})]}):null}function ml(e){const{t}=be.useTranslation(),{item:a,itemKey:r,label:s,icon:i,active:l,onClick:c,style:d,state:u,labelStyle:p}=e||{},m=a?.key??r??"",f=a?.label??s??"",g=a?.icon??i??"",y=a?.badge??0,h=n.jsx("span",{className:"side-nav__icon-wrap",children:n.jsx(Ue,{icon:g,label:typeof f=="string"?f:void 0,className:"side-nav__icon",maskClassName:"side-nav__icon-image",imgClassName:void 0,svgClassName:void 0})}),w=u==="disabled",C=`side-nav__item ${l?"active":""} ${u||""} ${w?"disabled":""} ${a?.child?"side-nav__item--child":""}`,b=o.useCallback(x=>{if(w)return;const v=x.detail>0;if(v)try{x.currentTarget.blur()}catch{}c?.(m,x.currentTarget,v)},[w,m,c]);return n.jsxs("button",{type:"button",className:C,onClick:b,"aria-label":typeof f=="string"?pl(t,f,y):void 0,"aria-current":l?"page":void 0,style:d,"aria-disabled":w,children:[h,n.jsx("span",{className:"side-nav__label button-1 f",style:p,children:f}),y>0&&n.jsx(ft,{type:"dot",position:"inline",number:Math.min(y,99),size:24,"aria-hidden":!0}),u==="loading"&&n.jsx("span",{className:"side-nav__spinner",role:"img","aria-label":t("loader.loading","\uBD88\uB7EC\uC624\uB294 \uC911\u2026")})]})}function hl(e){const{t}=be.useTranslation(),{items:a=[],activeKey:r,onChange:s,unreadCount:i,onDebug:l,onNotification:c,onAccount:d,onSetting:u,onHelp:p,onFeedback:m,appMode:f,onAppModeChange:g,scrollContainer:y}=e||{},h=f==="manager",w=o.useCallback(()=>g?.(h?"malgwi":"manager"),[g,h]),C=o.useRef(null),[b,x]=o.useState(null);o.useEffect(()=>{const _=C.current;if(!_)return;const B=()=>{const{scrollHeight:P,clientHeight:H,scrollTop:S}=_;if(P<=H+1){x(null);return}const V=Math.max(24,H/P*H),j=H-V,M=P-H;x({top:Math.round(S/M*j),height:Math.round(V)})};B(),_.addEventListener("scroll",B,{passive:!0});const E=typeof ResizeObserver<"u"?new ResizeObserver(B):null;E?.observe(_);for(const P of Array.from(_.children))E?.observe(P);return()=>{_.removeEventListener("scroll",B),E?.disconnect()}},[a]);const v=o.useRef(null),A=o.useCallback(_=>{const B=C.current;B&&(_.preventDefault(),v.current={y:_.clientY,top:B.scrollTop},_.currentTarget.setPointerCapture(_.pointerId))},[]),k=o.useCallback(_=>{const B=C.current,E=v.current;!B||!E||(B.scrollTop=E.top+(_.clientY-E.y)*(B.scrollHeight/B.clientHeight))},[]),N=o.useCallback(_=>{v.current=null,_.currentTarget.hasPointerCapture(_.pointerId)&&_.currentTarget.releasePointerCapture(_.pointerId)},[]);return n.jsxs("nav",{ref:C,"aria-label":t("nav.mainMenu","\uBA54\uC778 \uBA54\uB274"),className:"side-nav__menu",children:[b&&n.jsx("div",{className:"side-nav__scroll","aria-hidden":"true",children:n.jsx("div",{className:"side-nav__scroll-thumb",style:{top:b.top,height:b.height},onPointerDown:A,onPointerMove:k,onPointerUp:N,onPointerCancel:N})}),n.jsxs("div",{className:"side-nav__menu-list",children:[(a||[]).filter(_=>!_.section&&(_.key||_.label)).map((_,B)=>n.jsxs(o.Fragment,{children:[_.divider&&n.jsx("div",{className:"side-nav__separator"}),n.jsx(ml,{item:_,active:!!_.key&&_.key===r,state:_.disabled?"disabled":void 0,onClick:(E,P,H)=>{if(_.disabled)return;if(_.href){if(dl(_.href)&&window.open(_.href,"_blank","noopener,noreferrer"),H)try{P?.blur()}catch{}return}if(s?.(_.key),Xr(y,"SideNav"),!H)return;try{P?.blur()}catch{}if(typeof window<"u"&&window.matchMedia){if(!window.matchMedia("(min-width: 768px) and (max-width: 1023px)").matches)return}else return;const S=document.querySelector(".header");if(S){const V=typeof S.matches=="function";if(!(window.matchMedia("(hover: hover)").matches&&V&&S.matches(":hover"))){S.classList.add("header--force-collapsed");const j=()=>{S.classList.remove("header--force-collapsed"),S.removeEventListener("mouseenter",j)};S.addEventListener("mouseenter",j)}}}})]},_.key??`side-nav__item-${B}`)),g&&n.jsx("div",{className:"side-nav__separator side-nav__separator--short"}),g&&n.jsx(ml,{item:{key:"__mode-switch__",label:h?t("nav.goToMalgwi","\uB9D0\uADC0\uB85C \uC774\uB3D9"):t("nav.goToManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800\uB85C \uC774\uB3D9"),icon:h?"arrow-left":"arrow-right"},onClick:w})]}),n.jsx(fb,{activeKey:r,unreadCount:i,onDebug:l,onNotification:c,onAccount:d,onSetting:u,onHelp:p,onFeedback:m})]})}var Qr='data:image/svg+xml,<svg width="200" height="100" viewBox="0 0 200 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2080_3066)">%0A<path d="M96.4287 48.3536V24.2572H127.047V48.3536H96.4287ZM142.975 69.1536V76.3607H98.2144V60.6393H132.679V58.5107H98.0787V51.3036H142.429V67.025H108.104V69.1536H142.979H142.975ZM106.247 32.5643V39.9786H117.3V32.5643H106.247ZM148.329 40.3893H142.425V49.45H132.539V23.6357H142.425V30.8429H148.329V40.3857V40.3893Z" fill="black"/>%0A<path d="M185.536 47.8714V57.275C182.743 58.5571 178.371 59.1964 172.425 59.1964H171.807V76.3607H161.921V59.1964H149.704V49.7929H172.564C178.421 49.7929 182.746 49.1536 185.539 47.8714H185.536ZM152.586 34.2786V24.875H181.282V47.05H171.396V34.2821H152.586V34.2786ZM198.307 76.3607H188.421V23.6393H198.307V76.3643V76.3607Z" fill="black"/>%0A<path d="M46.4288 17.8571H25.0002C15.138 17.8571 7.14307 25.852 7.14307 35.7143V57.1428C7.14307 67.0051 15.138 75 25.0002 75H46.4288C56.291 75 64.2859 67.0051 64.2859 57.1428V35.7143C64.2859 25.852 56.291 17.8571 46.4288 17.8571Z" fill="%234DCDC0"/>%0A<path d="M34.8607 50.7393C25.8285 60.6821 10.6142 61.6678 0.385667 53.1643C-0.0821902 52.775 -0.13219 52.0678 0.278524 51.6178L16.3535 33.925L34.8607 50.7393Z" fill="%234DCDC0"/>%0A<path d="M53.5714 25H32.1428C22.2821 25 14.2856 32.9964 14.2856 42.8571V64.2857C14.2856 74.1464 22.2821 82.1429 32.1428 82.1429H48.2535C49.2178 82.1429 49.9999 82.925 49.9999 83.8893C49.9999 84.9107 50.8749 85.7214 51.8928 85.6321C62.8392 84.675 71.4285 75.4821 71.4285 64.2857V42.8571C71.4285 32.9964 63.4321 25 53.5714 25Z" fill="%234DCDC0"/>%0A<path d="M24.9999 25C19.0821 25 14.2856 29.7964 14.2856 35.7143V64.2857C14.2856 67.3786 15.0749 70.2893 16.4571 72.8286C18.9928 74.2143 21.9035 75 24.9999 75H53.5714C59.4892 75 64.2856 70.2036 64.2856 64.2857V35.7143C64.2856 32.6214 63.4964 29.7107 62.1142 27.1714C59.5785 25.7857 56.6678 25 53.5714 25H24.9999Z" fill="%23499CDF"/>%0A<path d="M25.357 40.7143C25.357 39.5308 24.3976 38.5714 23.2141 38.5714C22.0307 38.5714 21.0713 39.5308 21.0713 40.7143V45C21.0713 46.1834 22.0307 47.1428 23.2141 47.1428C24.3976 47.1428 25.357 46.1834 25.357 45V40.7143Z" fill="white"/>%0A<path d="M36.0715 57.1429C35.0287 57.1429 33.9822 56.875 33.0358 56.3286C32.1822 55.8357 31.8894 54.7429 32.3858 53.8893C32.8787 53.0357 33.9715 52.7429 34.8251 53.2393C35.8037 53.8036 37.043 53.6429 37.8394 52.8464C38.2251 52.4607 38.468 51.9714 38.543 51.4357C38.8644 49.1607 39.868 47 41.4501 45.1857C42.393 44.1071 42.8894 42.7214 42.8537 41.2857C42.7787 38.3536 40.4322 35.9107 37.5072 35.7286C36.5215 35.6679 35.5715 35.8464 34.693 36.2679C33.8037 36.6929 32.7358 36.3107 32.3144 35.4214C31.8894 34.5321 32.2715 33.4643 33.1608 33.0429C34.5751 32.3714 36.1537 32.0679 37.7322 32.1643C42.4894 32.4607 46.3072 36.4286 46.4251 41.1964C46.4822 43.5286 45.6715 45.7786 44.143 47.5357C43.018 48.825 42.3037 50.3464 42.0822 51.9357C41.8965 53.2464 41.3037 54.4357 40.368 55.375C39.2001 56.5429 37.6465 57.15 36.0751 57.15L36.0715 57.1429Z" fill="white"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2080_3066">%0A<rect width="200" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',eo='data:image/svg+xml,<svg width="371" height="100" viewBox="0 0 371 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7374)">%0A<path d="M237.151 26.0393V72.7214H216.65V26.0393H237.151ZM234.408 70.0464V28.7179H219.254V70.0464H234.408ZM261.495 76.3607H258.819V48.9679H247.575V75.4679H244.899V23.9821H247.575V46.2929H258.819V23.6393H261.495V76.3643V76.3607Z" fill="black"/>%0A<path d="M299.722 69.2571C302.076 68.775 304.031 68.1464 305.583 67.3679V70.1143C304.074 70.9393 302.144 71.5786 299.789 72.0357C297.435 72.4929 295.045 72.7214 292.623 72.7214H272.257V25.6964H275V69.975H292.623C294.998 69.975 297.364 69.7357 299.722 69.2536V69.2571ZM311.69 76.4321V23.6393H314.433V76.3643L311.69 76.4321Z" fill="black"/>%0A<path d="M340.556 47.9393L358.179 70.4572L356.053 72.1036L339.872 51.1643C338.409 57.3429 336.329 62.2643 333.632 65.925C330.935 69.5857 327.736 71.8536 324.033 72.7215V69.975C327.279 69.15 330.044 66.8643 332.33 63.1107C334.617 59.3572 336.354 54.5179 337.542 48.5893C338.73 42.6643 339.369 36.0393 339.461 28.7143H324.992V26.0357H356.602V28.7143H342.201C342.155 35.9 341.605 42.3072 340.556 47.9357V47.9393ZM369.22 76.3607H366.477V47.4572H352.418V44.7786H366.477V23.6357H369.22V76.3607Z" fill="black"/>%0A<path d="M92.8784 48.3536V24.2572H123.461V48.3536H92.8784ZM139.371 69.1536V76.3607H94.6621V60.6393H129.087V58.5107H94.5265V51.3036H138.825V67.025H104.54V69.1536H139.375H139.371ZM102.685 32.5643V39.9786H113.726V32.5643H102.685ZM144.719 40.3893H138.822V49.45H128.947V23.6357H138.822V30.8429H144.719V40.3857V40.3893Z" fill="black"/>%0A<path d="M181.886 47.8714V57.275C179.097 58.5571 174.73 59.1964 168.791 59.1964H168.174V76.3607H158.299V59.1964H146.096V49.7929H168.93C174.78 49.7929 179.1 49.1536 181.89 47.8714H181.886ZM148.971 34.2786V24.875H177.634V47.05H167.76V34.2821H148.971V34.2786ZM194.64 76.3607H184.765V23.6393H194.64V76.3643V76.3607Z" fill="black"/>%0A<path d="M48.1549 17.8571H26.7511C16.9002 17.8571 8.91455 25.852 8.91455 35.7143V57.1428C8.91455 67.0051 16.9002 75 26.7511 75H48.1549C58.0058 75 65.9915 67.0051 65.9915 57.1428V35.7143C65.9915 25.852 58.0058 17.8571 48.1549 17.8571Z" fill="%234DCDC0"/>%0A<path d="M36.6007 50.7393C27.579 60.6821 12.3823 61.6678 2.1655 53.1643C1.69818 52.775 1.64824 52.0678 2.05848 51.6178L18.1149 33.925L36.6007 50.7393Z" fill="%234DCDC0"/>%0A<path d="M55.2897 25H33.8859C24.0365 25 16.0493 32.9964 16.0493 42.8571V64.2857C16.0493 74.1464 24.0365 82.1429 33.8859 82.1429H49.978C50.9412 82.1429 51.7224 82.925 51.7224 83.8893C51.7224 84.9107 52.5964 85.7214 53.6131 85.6321C64.5469 84.675 73.1262 75.4821 73.1262 64.2857V42.8571C73.1262 32.9964 65.139 25 55.2897 25Z" fill="%234DCDC0"/>%0A<path d="M26.7512 25C20.8402 25 16.0493 29.7964 16.0493 35.7143V64.2857C16.0493 67.3786 16.8377 70.2893 18.2182 72.8286C20.751 74.2143 23.6584 75 26.7512 75H55.2897C61.2007 75 65.9916 70.2036 65.9916 64.2857V35.7143C65.9916 32.6214 65.2032 29.7107 63.8227 27.1714C61.2899 25.7857 58.3826 25 55.2897 25H26.7512Z" fill="%23499CDF"/>%0A<path d="M27.1079 40.7143C27.1079 39.5308 26.1496 38.5714 24.9675 38.5714C23.7854 38.5714 22.8271 39.5308 22.8271 40.7143V45C22.8271 46.1834 23.7854 47.1428 24.9675 47.1428C26.1496 47.1428 27.1079 46.1834 27.1079 45V40.7143Z" fill="white"/>%0A<path d="M37.8097 57.1429C36.768 57.1429 35.7228 56.875 34.7775 56.3286C33.9249 55.8357 33.6323 54.7429 34.1282 53.8893C34.6205 53.0357 35.7121 52.7429 36.5647 53.2393C37.5421 53.8036 38.78 53.6429 39.5755 52.8464C39.9608 52.4607 40.2033 51.9714 40.2782 51.4357C40.5993 49.1607 41.6017 47 43.182 45.1857C44.1238 44.1071 44.6197 42.7214 44.584 41.2857C44.5091 38.3536 42.1653 35.9107 39.2437 35.7286C38.2556 35.6679 37.3102 35.8464 36.4327 36.2679C35.5444 36.6929 34.4778 36.3107 34.0569 35.4214C33.6323 34.5321 34.014 33.4643 34.9023 33.0429C36.315 32.3714 37.8917 32.0679 39.4685 32.1643C44.2201 32.4607 48.0336 36.4286 48.1513 41.1964C48.2084 43.5286 47.3986 45.7786 45.8718 47.5357C44.7481 48.825 44.0346 50.3464 43.8134 51.9357C43.6279 53.2464 43.0358 54.4357 42.1011 55.375C40.9346 56.5429 39.3828 57.15 37.8132 57.15L37.8097 57.1429Z" fill="white"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7374">%0A<rect width="371" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',Cb='data:image/svg+xml,<svg width="100" height="100" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2175_65214)">%0A<path d="M57.1427 17.8571H35.7141C25.8518 17.8571 17.8569 25.852 17.8569 35.7143V57.1428C17.8569 67.0051 25.8518 75 35.7141 75H57.1427C67.0049 75 74.9998 67.0051 74.9998 57.1428V35.7143C74.9998 25.852 67.0049 17.8571 57.1427 17.8571Z" fill="%234DCDC0"/>%0A<path d="M45.575 50.7393C36.5429 60.6821 21.3286 61.6678 11.1 53.1643C10.6322 52.775 10.5822 52.0678 10.9929 51.6178L27.0679 33.925L45.575 50.7393Z" fill="%234DCDC0"/>%0A<path d="M64.2857 25H42.8571C32.9964 25 25 32.9964 25 42.8571V64.2857C25 74.1464 32.9964 82.1429 42.8571 82.1429H58.9679C59.9321 82.1429 60.7143 82.925 60.7143 83.8893C60.7143 84.9107 61.5893 85.7214 62.6071 85.6321C73.5536 84.675 82.1429 75.4821 82.1429 64.2857V42.8571C82.1429 32.9964 74.1464 25 64.2857 25Z" fill="%234DCDC0"/>%0A<path d="M35.7143 25C29.7964 25 25 29.7964 25 35.7143V64.2857C25 67.3786 25.7893 70.2893 27.1714 72.8286C29.7071 74.2143 32.6179 75 35.7143 75H64.2857C70.2036 75 75 70.2036 75 64.2857V35.7143C75 32.6214 74.2107 29.7107 72.8286 27.1714C70.2929 25.7857 67.3821 25 64.2857 25H35.7143Z" fill="%23499CDF"/>%0A<path d="M36.0714 40.7143C36.0714 39.5308 35.112 38.5714 33.9285 38.5714C32.745 38.5714 31.7856 39.5308 31.7856 40.7143V45C31.7856 46.1834 32.745 47.1428 33.9285 47.1428C35.112 47.1428 36.0714 46.1834 36.0714 45V40.7143Z" fill="white"/>%0A<path d="M46.7859 57.1429C45.743 57.1429 44.6966 56.875 43.7502 56.3286C42.8966 55.8357 42.6037 54.7429 43.1002 53.8893C43.593 53.0357 44.6859 52.7429 45.5395 53.2393C46.518 53.8036 47.7573 53.6429 48.5537 52.8464C48.9395 52.4607 49.1823 51.9714 49.2573 51.4357C49.5787 49.1607 50.5823 47 52.1645 45.1857C53.1073 44.1071 53.6037 42.7214 53.568 41.2857C53.493 38.3536 51.1466 35.9107 48.2216 35.7286C47.2359 35.6679 46.2859 35.8464 45.4073 36.2679C44.5145 36.6929 43.4502 36.3107 43.0287 35.4214C42.6037 34.5321 42.9859 33.4643 43.8752 33.0429C45.2895 32.3714 46.868 32.0679 48.4466 32.1643C53.2002 32.4607 57.0216 36.4286 57.1395 41.1964C57.1966 43.5286 56.3859 45.7786 54.8573 47.5357C53.7323 48.825 53.018 50.3464 52.7966 51.9357C52.6109 53.2464 52.018 54.4357 51.0823 55.375C49.9145 56.5429 48.3609 57.15 46.7895 57.15L46.7859 57.1429Z" fill="white"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2175_65214">%0A<rect width="100" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A';function fl({appMode:e}){const{t}=be.useTranslation(),a=e==="manager",r=a?eo:Qr,s=Cb;return n.jsxs("div",{className:"brand-identity__root","aria-label":t("header.biArea","BI \uC601\uC5ED"),children:[n.jsx("img",{src:s,alt:t("header.biSymbol","BI \uC2EC\uBCFC"),className:"brand-identity__image brand-identity__image--symbol"}),n.jsx("img",{src:r,alt:a?t("header.logoManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800 \uB85C\uACE0"):t("header.logoMalgwi","\uB9D0\uADC0 \uB85C\uACE0"),className:"brand-identity__image brand-identity__image--logo"})]})}function Cl({activeKey:e,onChange:t,items:a,malgwiItems:r,managerItems:s,unreadCount:i,onDebug:l,onNotification:c,onAccount:d,onSetting:u,onHelp:p,onFeedback:m,appMode:f,onAppModeChange:g,scrollContainer:y}){const{t:h}=be.useTranslation(),w=Zt("(max-width: 767px)"),C=o.useMemo(()=>(a??[]).filter(S=>!S.section&&(S.key||S.label)).map(S=>({key:S.key,label:typeof S.label=="string"?S.label:void 0,icon:S.icon,state:S.disabled?"disabled":void 0,badgeCount:S.badge})),[a]),b=o.useCallback(S=>{const V=a?.find(j=>j.key===S);if(!V?.disabled){if(V?.href){dl(V.href)&&window.open(V.href,"_blank","noopener,noreferrer");return}t?.(S)}},[a,t]),x=o.useMemo(()=>{const S=[];return l&&S.push({key:"debug",icon:"terminal",label:h("nav.debug","\uB514\uBC84\uADF8"),onClick:l}),c&&S.push({key:"notifications",icon:"bell",label:h("nav.notifications","\uC54C\uB9BC"),badgeCount:i,onClick:c}),u&&S.push({key:"settings",icon:"settings",label:h("nav.settings","\uC124\uC815"),onClick:u}),p&&S.push({key:"help",icon:"message-circle-question-mark",label:h("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:p}),m&&S.push({key:"feedback",icon:"bug",label:h("nav.feedback","\uBC84\uADF8\uC2E0\uACE0"),onClick:m}),d&&S.push({key:"account",icon:"user-round",label:h("nav.account","\uACC4\uC815"),onClick:d}),S},[h,l,c,u,p,m,d,i]),v=o.useCallback((S,V)=>({position:"fixed",top:S.bottom+8,right:Math.max(8,window.innerWidth-S.right),zIndex:va(V)}),[]),A=o.useId(),{open:k,toggle:N,close:_,style:B,triggerRef:E,menuRef:P}=xa({computeStyle:v,onScroll:"ignore",onResize:"reposition"}),H=o.useMemo(()=>[{items:x.map(S=>({label:S.label,icon:S.icon,badgeCount:S.badgeCount,selected:S.selected??(!!S.key&&S.key===e),closeOnSelect:!0,onClick:()=>{S.onClick?.(),_()}}))}],[x,e,_]);return n.jsxs("aside",{className:`header${f==="manager"?" header--manager":""}`,children:[n.jsxs("div",{className:"header__bi",children:[n.jsx(fl,{appMode:f}),n.jsxs("div",{className:"header__menu-button",ref:E,children:[n.jsx(pe,{htmlType:"button",size:48,type:"dot",shape:"pill",variant:"default",useBorder:!1,icon:"menu",ariaLabel:c&&i&&i>0?h("nav.badgeLabel",{label:h("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),count:i,defaultValue:"{{label}}, {{count}}\uAC1C"}):h("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),onClick:N,"aria-expanded":k,"aria-controls":k?A:void 0}),!!c&&!!i&&i>0&&n.jsx(ft,{type:"dot",number:Math.min(i,99),size:24,"aria-hidden":!0}),k&&Ut.createPortal(n.jsx("div",{id:A,role:"group","aria-label":h("header.utilMenu","\uC720\uD2F8\uB9AC\uD2F0 \uBA54\uB274"),className:"tooltip-content",style:B,ref:P,children:n.jsx(_a,{columns:H,onClose:_})}),document.body)]})]}),n.jsx(hl,{scrollContainer:y,items:a,activeKey:e??void 0,onChange:t,unreadCount:i,onDebug:l,onNotification:c,onAccount:d,onSetting:u,onHelp:p,onFeedback:m,appMode:f,onAppModeChange:g}),w&&n.jsx(ul,{items:C,activeKey:e??void 0,onChange:b,scrollContainer:y,appMode:f,onAppModeChange:g})]})}const gb=Cl,bb=()=>At.t("passCard.planSuffix","\uC774\uC6A9\uAD8C");function gl(e){if(!(e==null||e==="")){if(typeof e=="string"&&/^\s*\d[\d,]*\s*$/.test(e)){const t=Number(e.replace(/[,\s]/g,""));if(Number.isFinite(t))return Yn(`${t.toLocaleString("ko-KR")}\uC6D0`)}return Yn(typeof e=="number"?`${e.toLocaleString("ko-KR")}\uC6D0`:e)}}function yb(e){const t=`${e.code??""} ${e.name??""}`.toLowerCase();return/manager|매니저/.test(t)?"manager":"speechear"}function vb(e){if(e.durationDays&&e.durationDays>0){const i=e.durationDays;return i%365===0?`${i/365}\uB144`:`${i}\uC77C`}const t=(e.code??"").match(/(\d+)(d|y)\b/i);if(t)return t[2].toLowerCase()==="y"?`${t[1]}\uB144`:`${t[1]}\uC77C`;const a=e.name??"",r=a.match(/(\d+\s*(?:년|개월|주|일))\s*(?:이용권)?\s*$/);if(r)return r[1].replace(/\s+/g,"");const s=a.match(/(\d+)\s*-?\s*(day|year)s?\b/i);return s?s[2].toLowerCase()==="year"?`${s[1]}\uB144`:`${s[1]}\uC77C`:a||bb()}function xb(e){const t=(e??"").match(/(\d+)(d|y)\b/i);if(!t)return null;const a=Number(t[1]);return t[2].toLowerCase()==="y"?a*365:a}function bl(e){return{type:e.type??yb(e),plan:vb(e),label:e.label,price:gl(e.price),originalPrice:gl(e.originalPrice),discountLabel:e.discountLabel}}var _b='data:image/svg+xml,<svg width="200" height="100" viewBox="0 0 200 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7326)">%0A<path d="M96.4287 48.3536V24.2572H127.047V48.3536H96.4287ZM142.975 69.1536V76.3607H98.2144V60.6393H132.679V58.5107H98.0787V51.3036H142.429V67.025H108.104V69.1536H142.979H142.975ZM106.247 32.5643V39.9786H117.3V32.5643H106.247ZM148.329 40.3893H142.425V49.45H132.539V23.6357H142.425V30.8429H148.329V40.3857V40.3893Z" fill="%23FAFAFA"/>%0A<path d="M185.536 47.8714V57.275C182.743 58.5571 178.371 59.1964 172.425 59.1964H171.807V76.3607H161.921V59.1964H149.704V49.7929H172.564C178.421 49.7929 182.746 49.1536 185.539 47.8714H185.536ZM152.586 34.2786V24.875H181.282V47.05H171.396V34.2821H152.586V34.2786ZM198.307 76.3607H188.421V23.6393H198.307V76.3643V76.3607Z" fill="%23FAFAFA"/>%0A<path opacity="0.1" d="M24.9999 25C19.0821 25 14.2856 29.7964 14.2856 35.7143V64.2857C14.2856 67.3786 15.0749 70.2893 16.4571 72.8286C18.9928 74.2143 21.9035 75 24.9999 75H53.5714C59.4892 75 64.2856 70.2036 64.2856 64.2857V35.7143C64.2856 32.6214 63.4964 29.7107 62.1142 27.1714C59.5785 25.7857 56.6678 25 53.5714 25H24.9999Z" fill="%23FAFAFA"/>%0A<path d="M14.2859 64.2857V35.7143C14.2859 29.7964 19.0823 25 25.0002 25H53.5716C56.6645 25 59.5752 25.7893 62.1145 27.1714C59.0859 21.6214 53.1966 17.8571 46.4288 17.8571H25.0002C15.1395 17.8571 7.14304 25.8535 7.14304 35.7143V44.0643L0.278759 51.6214C-0.131955 52.0714 -0.0855263 52.7785 0.385902 53.1678C2.46447 54.8964 4.75019 56.225 7.14304 57.1714C7.15376 63.9285 10.9145 69.8035 16.4573 72.8285C15.0716 70.2928 14.2859 67.3821 14.2859 64.2857Z" fill="%23FAFAFA"/>%0A<path d="M25.357 40.7143C25.357 39.5308 24.3976 38.5714 23.2141 38.5714C22.0307 38.5714 21.0713 39.5308 21.0713 40.7143V45C21.0713 46.1834 22.0307 47.1428 23.2141 47.1428C24.3976 47.1428 25.357 46.1834 25.357 45V40.7143Z" fill="%23FAFAFA"/>%0A<path d="M36.0715 57.1428C35.0287 57.1428 33.9822 56.875 33.0358 56.3285C32.1822 55.8357 31.8894 54.7428 32.3858 53.8893C32.8787 53.0357 33.9715 52.7428 34.8251 53.2393C35.8037 53.8035 37.043 53.6428 37.8394 52.8464C38.2251 52.4607 38.468 51.9714 38.543 51.4357C38.8644 49.1607 39.868 47 41.4501 45.1857C42.393 44.1071 42.8894 42.7214 42.8537 41.2857C42.7787 38.3535 40.4322 35.9107 37.5072 35.7285C36.518 35.6678 35.5715 35.85 34.693 36.2678C33.8037 36.6893 32.7358 36.3107 32.3144 35.4214C31.8894 34.5321 32.2715 33.4643 33.1608 33.0428C34.5751 32.3714 36.1572 32.0643 37.7322 32.1643C42.4894 32.4607 46.3072 36.4285 46.4251 41.1964C46.4822 43.5285 45.6715 45.7785 44.143 47.5357C43.018 48.825 42.3037 50.3464 42.0822 51.9321C41.8965 53.2428 41.3037 54.4321 40.368 55.3714C39.2001 56.5393 37.6465 57.1464 36.0751 57.1464L36.0715 57.1428Z" fill="%23FAFAFA"/>%0A<path d="M62.1142 27.1714C63.4999 29.7072 64.2856 32.6179 64.2856 35.7143V64.2857C64.2856 70.2036 59.4892 75 53.5713 75H24.9999C21.907 75 18.9963 74.2107 16.457 72.8286C19.4856 78.3786 25.3749 82.1429 32.1427 82.1429H48.2535C49.2177 82.1429 49.9999 82.925 49.9999 83.8893C49.9999 84.9107 50.8749 85.7215 51.8927 85.6322C62.8392 84.675 71.4285 75.4822 71.4285 64.2857V42.8572C71.4285 36.0893 67.6642 30.2 62.1142 27.1714Z" fill="%23FAFAFA"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7326">%0A<rect width="200" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',wb='data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?>%0A<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" viewBox="0 0 200 100">%0A <!-- Generator: Adobe Illustrator 30.4.0, SVG Export Plug-In . SVG Version: 2.1.4 Build 226) -->%0A <defs>%0A <style>%0A .st0 {%0A fill: none;%0A }%0A%0A .st1 {%0A fill: %234dcdc0;%0A }%0A%0A .st2 {%0A fill: %23499cdf;%0A }%0A%0A .st3 {%0A fill: %23fff;%0A }%0A%0A .st4 {%0A clip-path: url(%23clippath);%0A }%0A </style>%0A <clipPath id="clippath">%0A <rect class="st0" width="200" height="100"/>%0A </clipPath>%0A </defs>%0A <g class="st4">%0A <g>%0A <path class="st3" d="M96.43,48.35v-24.1h30.62v24.1h-30.62ZM142.98,69.15v7.21h-44.76v-15.72h34.46v-2.13h-34.6v-7.21h44.35v15.72h-34.33v2.13h34.88,0ZM106.25,32.56v7.41h11.05v-7.41h-11.05ZM148.33,40.39h-5.9v9.06h-9.89v-25.81h9.89v7.21h5.9v9.54h0Z"/>%0A <path class="st3" d="M185.54,47.87v9.4c-2.79,1.28-7.16,1.92-13.11,1.92h-.62v17.16h-9.89v-17.16h-12.22v-9.4h22.86c5.86,0,10.18-.64,12.98-1.92h0ZM152.59,34.28v-9.4h28.7v22.17h-9.89v-12.77h-18.81ZM198.31,76.36h-9.89V23.64h9.89v52.73h0Z"/>%0A <path class="st1" d="M46.43,17.86h-21.43c-9.86,0-17.86,7.99-17.86,17.86v21.43c0,9.86,7.99,17.86,17.86,17.86h21.43c9.86,0,17.86-7.99,17.86-17.86v-21.43c0-9.86-7.99-17.86-17.86-17.86Z"/>%0A <path class="st1" d="M34.86,50.74c-9.03,9.94-24.25,10.93-34.48,2.42-.47-.39-.52-1.1-.11-1.55l16.07-17.69,18.51,16.81Z"/>%0A <path class="st1" d="M53.57,25h-21.43c-9.86,0-17.86,8-17.86,17.86v21.43c0,9.86,8,17.86,17.86,17.86h16.11c.96,0,1.75.78,1.75,1.75,0,1.02.88,1.83,1.89,1.74,10.95-.96,19.54-10.15,19.54-21.35v-21.43c0-9.86-8-17.86-17.86-17.86Z"/>%0A <path class="st2" d="M25,25c-5.92,0-10.71,4.8-10.71,10.71v28.57c0,3.09.79,6,2.17,8.54,2.54,1.39,5.45,2.17,8.54,2.17h28.57c5.92,0,10.71-4.8,10.71-10.71v-28.57c0-3.09-.79-6-2.17-8.54-2.54-1.39-5.45-2.17-8.54-2.17h-28.57Z"/>%0A <path class="st3" d="M25.36,40.71c0-1.18-.96-2.14-2.14-2.14s-2.14.96-2.14,2.14v4.29c0,1.18.96,2.14,2.14,2.14s2.14-.96,2.14-2.14v-4.29Z"/>%0A <path class="st3" d="M36.07,57.14c-1.04,0-2.09-.27-3.04-.81-.85-.49-1.15-1.59-.65-2.44.49-.85,1.59-1.15,2.44-.65.98.56,2.22.4,3.01-.39.39-.39.63-.88.7-1.41.32-2.27,1.33-4.44,2.91-6.25.94-1.08,1.44-2.46,1.4-3.9-.07-2.93-2.42-5.38-5.35-5.56-.99-.06-1.94.12-2.81.54-.89.43-1.96.04-2.38-.85-.42-.89-.04-1.96.85-2.38,1.41-.67,2.99-.97,4.57-.88,4.76.3,8.58,4.26,8.69,9.03.06,2.33-.75,4.58-2.28,6.34-1.12,1.29-1.84,2.81-2.06,4.4-.19,1.31-.78,2.5-1.71,3.44-1.17,1.17-2.72,1.78-4.29,1.78h0Z"/>%0A </g>%0A </g>%0A</svg>',kb='data:image/svg+xml,<svg width="200" height="100" viewBox="0 0 200 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7325)">%0A<path d="M96.4287 48.3536V24.2572H127.047V48.3536H96.4287ZM142.975 69.1536V76.3607H98.2144V60.6393H132.679V58.5107H98.0787V51.3036H142.429V67.025H108.104V69.1536H142.979H142.975ZM106.247 32.5643V39.9786H117.3V32.5643H106.247ZM148.329 40.3893H142.425V49.45H132.539V23.6357H142.425V30.8429H148.329V40.3857V40.3893Z" fill="%23111111"/>%0A<path d="M185.536 47.8714V57.275C182.743 58.5571 178.371 59.1964 172.425 59.1964H171.807V76.3607H161.921V59.1964H149.704V49.7929H172.564C178.421 49.7929 182.746 49.1536 185.539 47.8714H185.536ZM152.586 34.2786V24.875H181.282V47.05H171.396V34.2821H152.586V34.2786ZM198.307 76.3607H188.421V23.6393H198.307V76.3643V76.3607Z" fill="%23111111"/>%0A<path opacity="0.1" d="M24.9999 25C19.0821 25 14.2856 29.7964 14.2856 35.7143V64.2857C14.2856 67.3786 15.0749 70.2893 16.4571 72.8286C18.9928 74.2143 21.9035 75 24.9999 75H53.5714C59.4892 75 64.2856 70.2036 64.2856 64.2857V35.7143C64.2856 32.6214 63.4964 29.7107 62.1142 27.1714C59.5785 25.7857 56.6678 25 53.5714 25H24.9999Z" fill="%23111111"/>%0A<path d="M14.2859 64.2857V35.7143C14.2859 29.7964 19.0823 25 25.0002 25H53.5716C56.6645 25 59.5752 25.7893 62.1145 27.1714C59.0859 21.6214 53.1966 17.8571 46.4288 17.8571H25.0002C15.1395 17.8571 7.14304 25.8535 7.14304 35.7143V44.0643L0.278759 51.6214C-0.131955 52.0714 -0.0855263 52.7785 0.385902 53.1678C2.46447 54.8964 4.75019 56.225 7.14304 57.1714C7.15376 63.9285 10.9145 69.8035 16.4573 72.8285C15.0716 70.2928 14.2859 67.3821 14.2859 64.2857Z" fill="%23111111"/>%0A<path d="M25.357 40.7143C25.357 39.5308 24.3976 38.5714 23.2141 38.5714C22.0307 38.5714 21.0713 39.5308 21.0713 40.7143V45C21.0713 46.1834 22.0307 47.1428 23.2141 47.1428C24.3976 47.1428 25.357 46.1834 25.357 45V40.7143Z" fill="%23111111"/>%0A<path d="M36.0715 57.1428C35.0287 57.1428 33.9822 56.875 33.0358 56.3285C32.1822 55.8357 31.8894 54.7428 32.3858 53.8893C32.8787 53.0357 33.9715 52.7428 34.8251 53.2393C35.8037 53.8035 37.043 53.6428 37.8394 52.8464C38.2251 52.4607 38.468 51.9714 38.543 51.4357C38.8644 49.1607 39.868 47 41.4501 45.1857C42.393 44.1071 42.8894 42.7214 42.8537 41.2857C42.7787 38.3535 40.4322 35.9107 37.5072 35.7285C36.518 35.6678 35.5715 35.85 34.693 36.2678C33.8037 36.6893 32.7358 36.3107 32.3144 35.4214C31.8894 34.5321 32.2715 33.4643 33.1608 33.0428C34.5751 32.3714 36.1572 32.0643 37.7322 32.1643C42.4894 32.4607 46.3072 36.4285 46.4251 41.1964C46.4822 43.5285 45.6715 45.7785 44.143 47.5357C43.018 48.825 42.3037 50.3464 42.0822 51.9321C41.8965 53.2428 41.3037 54.4321 40.368 55.3714C39.2001 56.5393 37.6465 57.1464 36.0751 57.1464L36.0715 57.1428Z" fill="%23111111"/>%0A<path d="M62.1142 27.1714C63.4999 29.7072 64.2856 32.6179 64.2856 35.7143V64.2857C64.2856 70.2036 59.4892 75 53.5713 75H24.9999C21.907 75 18.9963 74.2107 16.457 72.8286C19.4856 78.3786 25.3749 82.1429 32.1427 82.1429H48.2535C49.2177 82.1429 49.9999 82.925 49.9999 83.8893C49.9999 84.9107 50.8749 85.7215 51.8927 85.6322C62.8392 84.675 71.4285 75.4822 71.4285 64.2857V42.8572C71.4285 36.0893 67.6642 30.2 62.1142 27.1714Z" fill="%23111111"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7325">%0A<rect width="200" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',Ab='data:image/svg+xml,<svg width="371" height="100" viewBox="0 0 371 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7395)">%0A<path d="M237.151 26.0393V72.7215H216.65V26.0393H237.151ZM234.408 70.0465V28.7179H219.254V70.0465H234.408ZM261.495 76.3608H258.819V48.9679H247.575V75.4679H244.899V23.9822H247.575V46.2929H258.819V23.6393H261.495V76.3643V76.3608Z" fill="%23FAFAFA"/>%0A<path d="M299.722 69.2572C302.076 68.7751 304.031 68.1465 305.583 67.3679V70.1143C304.074 70.9393 302.144 71.5786 299.79 72.0358C297.435 72.4929 295.045 72.7215 292.623 72.7215H272.257V25.6965H275.001V69.9751H292.623C294.999 69.9751 297.364 69.7358 299.722 69.2536V69.2572ZM311.69 76.4322V23.6393H314.434V76.3643L311.69 76.4322Z" fill="%23FAFAFA"/>%0A<path d="M340.557 47.9393L358.179 70.4572L356.053 72.1036L339.872 51.1643C338.409 57.3429 336.33 62.2643 333.633 65.925C330.936 69.5857 327.736 71.8536 324.033 72.7215V69.975C327.279 69.15 330.044 66.8643 332.331 63.1107C334.617 59.3572 336.355 54.5179 337.543 48.5893C338.731 42.6643 339.369 36.0393 339.462 28.7143H324.993V26.0357H356.603V28.7143H342.201C342.155 35.9 341.606 42.3072 340.557 47.9357V47.9393ZM369.22 76.3607H366.477V47.4572H352.418V44.7786H366.477V23.6357H369.22V76.3607Z" fill="%23FAFAFA"/>%0A<path d="M92.8784 48.3536V24.2572H123.461V48.3536H92.8784ZM139.371 69.1536V76.3607H94.6621V60.6393H129.087V58.5107H94.5265V51.3036H138.825V67.025H104.54V69.1536H139.375H139.371ZM102.685 32.5643V39.9786H113.726V32.5643H102.685ZM144.719 40.3893H138.822V49.45H128.947V23.6357H138.822V30.8429H144.719V40.3857V40.3893Z" fill="%23FAFAFA"/>%0A<path d="M181.886 47.8715V57.2751C179.097 58.5572 174.73 59.1965 168.791 59.1965H168.174V76.3608H158.299V59.1965H146.096V49.7929H168.93C174.78 49.7929 179.1 49.1536 181.89 47.8715H181.886ZM148.971 34.2786V24.8751H177.634V47.0501H167.76V34.2822H148.971V34.2786ZM194.64 76.3608H184.765V23.6393H194.64V76.3643V76.3608Z" fill="%23FAFAFA"/>%0A<g opacity="0.1">%0A<path d="M26.7512 25C20.8402 25 16.0493 29.7964 16.0493 35.7143V64.2857C16.0493 67.3786 16.8377 70.2893 18.2182 72.8286C20.751 74.2143 23.6584 75 26.7512 75H55.2897C61.2007 75 65.9916 70.2036 65.9916 64.2857V35.7143C65.9916 32.6214 65.2032 29.7107 63.8227 27.1714C61.2899 25.7857 58.3826 25 55.2897 25H26.7512Z" fill="%23FAFAFA"/>%0A</g>%0A<path d="M48.155 17.8571H26.7511C16.9018 17.8571 8.91459 25.8536 8.91459 35.7143V44.0643L2.05822 51.6179C1.64798 52.0679 1.69436 52.775 2.16524 53.1643C4.24141 54.8929 6.52449 56.2214 8.91459 57.1679C8.92529 63.925 12.6817 69.8 18.2181 72.825C16.834 70.2893 16.0492 67.3786 16.0492 64.2821V35.7107C16.0492 29.7929 20.8401 24.9964 26.7511 24.9964H55.2896C58.3789 24.9964 61.2862 25.7857 63.8226 27.1679C60.7975 21.6179 54.915 17.8536 48.155 17.8536V17.8571Z" fill="%23FAFAFA"/>%0A<path d="M63.8227 27.1714C65.2068 29.7072 65.9916 32.6179 65.9916 35.7143V64.2857C65.9916 70.2036 61.2008 75 55.2897 75H26.7513C23.662 75 20.7546 74.2107 18.2183 72.8286C21.2433 78.3786 27.1258 82.1429 33.8859 82.1429H49.978C50.9412 82.1429 51.7224 82.925 51.7224 83.8893C51.7224 84.9107 52.5964 85.7215 53.6131 85.6322C64.5469 84.675 73.1263 75.4822 73.1263 64.2857V42.8572C73.1263 36.0893 69.3663 30.2 63.8227 27.1714Z" fill="%23FAFAFA"/>%0A<path d="M27.1079 40.7143C27.1079 39.5308 26.1496 38.5714 24.9675 38.5714C23.7854 38.5714 22.8271 39.5308 22.8271 40.7143V45C22.8271 46.1834 23.7854 47.1428 24.9675 47.1428C26.1496 47.1428 27.1079 46.1834 27.1079 45V40.7143Z" fill="%23FAFAFA"/>%0A<path d="M37.8097 57.1429C36.768 57.1429 35.7228 56.875 34.7775 56.3286C33.9249 55.8357 33.6323 54.7429 34.1282 53.8893C34.6205 53.0357 35.7121 52.7429 36.5647 53.2393C37.5421 53.8036 38.78 53.6429 39.5755 52.8464C39.9608 52.4607 40.2033 51.9714 40.2782 51.4357C40.5993 49.1607 41.6017 47 43.182 45.1857C44.1238 44.1071 44.6197 42.7214 44.584 41.2857C44.5091 38.3536 42.1653 35.9107 39.2437 35.7286C38.2556 35.6679 37.3102 35.8464 36.4327 36.2679C35.5444 36.6929 34.4778 36.3107 34.0569 35.4214C33.6323 34.5321 34.014 33.4643 34.9023 33.0429C36.315 32.3714 37.8917 32.0679 39.4685 32.1643C44.2201 32.4607 48.0336 36.4286 48.1513 41.1964C48.2084 43.5286 47.3986 45.7786 45.8718 47.5357C44.7481 48.825 44.0346 50.3464 43.8134 51.9357C43.6279 53.2464 43.0358 54.4357 42.1011 55.375C40.9346 56.5429 39.3828 57.15 37.8132 57.15L37.8097 57.1429Z" fill="%23FAFAFA"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7395">%0A<rect width="371" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',Bb='data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?>%0A<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" viewBox="0 0 371 100">%0A <!-- Generator: Adobe Illustrator 30.4.0, SVG Export Plug-In . SVG Version: 2.1.4 Build 226) -->%0A <defs>%0A <style>%0A .st0 {%0A fill: none;%0A }%0A%0A .st1 {%0A fill: %234dcdc0;%0A }%0A%0A .st2 {%0A fill: %23499cdf;%0A }%0A%0A .st3 {%0A fill: %23fff;%0A }%0A%0A .st4 {%0A clip-path: url(%23clippath);%0A }%0A </style>%0A <clipPath id="clippath">%0A <rect class="st0" width="371" height="100"/>%0A </clipPath>%0A </defs>%0A <g class="st4">%0A <g>%0A <path class="st3" d="M237.15,26.04v46.68h-20.5V26.04h20.5ZM234.41,70.05V28.72h-15.15v41.33h15.15ZM261.49,76.36h-2.68v-27.39h-11.24v26.5h-2.68V23.98h2.68v22.31h11.24v-22.65h2.68v52.73h0Z"/>%0A <path class="st3" d="M299.72,69.26c2.35-.48,4.31-1.11,5.86-1.89v2.75c-1.51.82-3.44,1.46-5.79,1.92-2.35.46-4.74.69-7.17.69h-20.37V25.7h2.74v44.28h17.62c2.38,0,4.74-.24,7.1-.72h0ZM311.69,76.43V23.64h2.74v52.73l-2.74.07Z"/>%0A <path class="st3" d="M340.56,47.94l17.62,22.52-2.13,1.65-16.18-20.94c-1.46,6.18-3.54,11.1-6.24,14.76-2.7,3.66-5.9,5.93-9.6,6.8v-2.75c3.25-.82,6.01-3.11,8.3-6.86,2.29-3.75,4.02-8.59,5.21-14.52,1.19-5.92,1.83-12.55,1.92-19.87h-14.47v-2.68h31.61v2.68h-14.4c-.05,7.19-.6,13.59-1.64,19.22h0ZM369.22,76.36h-2.74v-28.9h-14.06v-2.68h14.06v-21.14h2.74v52.73Z"/>%0A <path class="st3" d="M92.88,48.35v-24.1h30.58v24.1h-30.58ZM139.37,69.15v7.21h-44.71v-15.72h34.42v-2.13h-34.56v-7.21h44.3v15.72h-34.28v2.13h34.83,0ZM102.68,32.56v7.41h11.04v-7.41h-11.04ZM144.72,40.39h-5.9v9.06h-9.88v-25.81h9.88v7.21h5.9v9.54h0Z"/>%0A <path class="st3" d="M181.89,47.87v9.4c-2.79,1.28-7.16,1.92-13.1,1.92h-.62v17.16h-9.88v-17.16h-12.2v-9.4h22.83c5.85,0,10.17-.64,12.96-1.92h0ZM148.97,34.28v-9.4h28.66v22.17h-9.87v-12.77h-18.79ZM194.64,76.36h-9.88V23.64h9.88v52.73h0Z"/>%0A <path class="st1" d="M48.15,17.86h-21.4c-9.85,0-17.84,7.99-17.84,17.86v21.43c0,9.86,7.99,17.86,17.84,17.86h21.4c9.85,0,17.84-7.99,17.84-17.86v-21.43c0-9.86-7.99-17.86-17.84-17.86Z"/>%0A <path class="st1" d="M36.6,50.74c-9.02,9.94-24.22,10.93-34.44,2.42-.47-.39-.52-1.1-.11-1.55l16.06-17.69,18.49,16.81Z"/>%0A <path class="st1" d="M55.29,25h-21.4c-9.85,0-17.84,8-17.84,17.86v21.43c0,9.86,7.99,17.86,17.84,17.86h16.09c.96,0,1.74.78,1.74,1.75,0,1.02.87,1.83,1.89,1.74,10.93-.96,19.51-10.15,19.51-21.35v-21.43c0-9.86-7.99-17.86-17.84-17.86Z"/>%0A <path class="st2" d="M26.75,25c-5.91,0-10.7,4.8-10.7,10.71v28.57c0,3.09.79,6,2.17,8.54,2.53,1.39,5.44,2.17,8.53,2.17h28.54c5.91,0,10.7-4.8,10.7-10.71v-28.57c0-3.09-.79-6-2.17-8.54-2.53-1.39-5.44-2.17-8.53-2.17h-28.54Z"/>%0A <path class="st3" d="M27.11,40.71c0-1.18-.96-2.14-2.14-2.14s-2.14.96-2.14,2.14v4.29c0,1.18.96,2.14,2.14,2.14s2.14-.96,2.14-2.14v-4.29Z"/>%0A <path class="st3" d="M37.81,57.14c-1.04,0-2.09-.27-3.03-.81-.85-.49-1.15-1.59-.65-2.44.49-.85,1.58-1.15,2.44-.65.98.56,2.22.4,3.01-.39.39-.39.63-.88.7-1.41.32-2.27,1.32-4.44,2.9-6.25.94-1.08,1.44-2.46,1.4-3.9-.07-2.93-2.42-5.38-5.34-5.56-.99-.06-1.93.12-2.81.54-.89.43-1.95.04-2.38-.85-.42-.89-.04-1.96.85-2.38,1.41-.67,2.99-.97,4.57-.88,4.75.3,8.57,4.26,8.68,9.03.06,2.33-.75,4.58-2.28,6.34-1.12,1.29-1.84,2.81-2.06,4.4-.19,1.31-.78,2.5-1.71,3.44-1.17,1.17-2.72,1.78-4.29,1.78h0Z"/>%0A </g>%0A </g>%0A</svg>',Nb='data:image/svg+xml,<svg width="371" height="100" viewBox="0 0 371 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7394)">%0A<path d="M237.151 26.0393V72.7215H216.65V26.0393H237.151ZM234.408 70.0465V28.7179H219.254V70.0465H234.408ZM261.495 76.3608H258.819V48.9679H247.575V75.4679H244.899V23.9822H247.575V46.2929H258.819V23.6393H261.495V76.3643V76.3608Z" fill="%23111111"/>%0A<path d="M299.722 69.2572C302.076 68.7751 304.031 68.1465 305.583 67.3679V70.1143C304.074 70.9393 302.144 71.5786 299.79 72.0358C297.435 72.4929 295.045 72.7215 292.623 72.7215H272.257V25.6965H275.001V69.9751H292.623C294.999 69.9751 297.364 69.7358 299.722 69.2536V69.2572ZM311.69 76.4322V23.6393H314.434V76.3643L311.69 76.4322Z" fill="%23111111"/>%0A<path d="M340.557 47.9393L358.179 70.4572L356.053 72.1036L339.872 51.1643C338.409 57.3429 336.33 62.2643 333.633 65.925C330.936 69.5857 327.736 71.8536 324.033 72.7215V69.975C327.279 69.15 330.044 66.8643 332.331 63.1107C334.617 59.3572 336.355 54.5179 337.543 48.5893C338.731 42.6643 339.369 36.0393 339.462 28.7143H324.993V26.0357H356.603V28.7143H342.201C342.155 35.9 341.606 42.3072 340.557 47.9357V47.9393ZM369.22 76.3607H366.477V47.4572H352.418V44.7786H366.477V23.6357H369.22V76.3607Z" fill="%23111111"/>%0A<path d="M92.8784 48.3536V24.2572H123.461V48.3536H92.8784ZM139.371 69.1536V76.3607H94.6621V60.6393H129.087V58.5107H94.5265V51.3036H138.825V67.025H104.54V69.1536H139.375H139.371ZM102.685 32.5643V39.9786H113.726V32.5643H102.685ZM144.719 40.3893H138.822V49.45H128.947V23.6357H138.822V30.8429H144.719V40.3857V40.3893Z" fill="%23111111"/>%0A<path d="M181.886 47.8715V57.2751C179.097 58.5572 174.73 59.1965 168.791 59.1965H168.174V76.3608H158.299V59.1965H146.096V49.7929H168.93C174.78 49.7929 179.1 49.1536 181.89 47.8715H181.886ZM148.971 34.2786V24.8751H177.634V47.0501H167.76V34.2822H148.971V34.2786ZM194.64 76.3608H184.765V23.6393H194.64V76.3643V76.3608Z" fill="%23111111"/>%0A<g opacity="0.1">%0A<path d="M26.7512 25C20.8402 25 16.0493 29.7964 16.0493 35.7143V64.2857C16.0493 67.3786 16.8377 70.2893 18.2182 72.8286C20.751 74.2143 23.6584 75 26.7512 75H55.2897C61.2007 75 65.9916 70.2036 65.9916 64.2857V35.7143C65.9916 32.6214 65.2032 29.7107 63.8227 27.1714C61.2899 25.7857 58.3826 25 55.2897 25H26.7512Z" fill="%23111111"/>%0A</g>%0A<path d="M48.155 17.8571H26.7511C16.9018 17.8571 8.91459 25.8536 8.91459 35.7143V44.0643L2.05822 51.6179C1.64798 52.0679 1.69436 52.775 2.16524 53.1643C4.24141 54.8929 6.52449 56.2214 8.91459 57.1679C8.92529 63.925 12.6817 69.8 18.2181 72.825C16.834 70.2893 16.0492 67.3786 16.0492 64.2821V35.7107C16.0492 29.7929 20.8401 24.9964 26.7511 24.9964H55.2896C58.3789 24.9964 61.2862 25.7857 63.8226 27.1679C60.7975 21.6179 54.915 17.8536 48.155 17.8536V17.8571Z" fill="%23111111"/>%0A<path d="M63.8227 27.1714C65.2068 29.7072 65.9916 32.6179 65.9916 35.7143V64.2857C65.9916 70.2036 61.2008 75 55.2897 75H26.7513C23.662 75 20.7546 74.2107 18.2183 72.8286C21.2433 78.3786 27.1258 82.1429 33.8859 82.1429H49.978C50.9412 82.1429 51.7224 82.925 51.7224 83.8893C51.7224 84.9107 52.5964 85.7215 53.6131 85.6322C64.5469 84.675 73.1263 75.4822 73.1263 64.2857V42.8572C73.1263 36.0893 69.3663 30.2 63.8227 27.1714Z" fill="%23111111"/>%0A<path d="M27.1079 40.7143C27.1079 39.5308 26.1496 38.5714 24.9675 38.5714C23.7854 38.5714 22.8271 39.5308 22.8271 40.7143V45C22.8271 46.1834 23.7854 47.1428 24.9675 47.1428C26.1496 47.1428 27.1079 46.1834 27.1079 45V40.7143Z" fill="%23111111"/>%0A<path d="M37.8097 57.1429C36.768 57.1429 35.7228 56.875 34.7775 56.3286C33.9249 55.8357 33.6323 54.7429 34.1282 53.8893C34.6205 53.0357 35.7121 52.7429 36.5647 53.2393C37.5421 53.8036 38.78 53.6429 39.5755 52.8464C39.9608 52.4607 40.2033 51.9714 40.2782 51.4357C40.5993 49.1607 41.6017 47 43.182 45.1857C44.1238 44.1071 44.6197 42.7214 44.584 41.2857C44.5091 38.3536 42.1653 35.9107 39.2437 35.7286C38.2556 35.6679 37.3102 35.8464 36.4327 36.2679C35.5444 36.6929 34.4778 36.3107 34.0569 35.4214C33.6323 34.5321 34.014 33.4643 34.9023 33.0429C36.315 32.3714 37.8917 32.0679 39.4685 32.1643C44.2201 32.4607 48.0336 36.4286 48.1513 41.1964C48.2084 43.5286 47.3986 45.7786 45.8718 47.5357C44.7481 48.825 44.0346 50.3464 43.8134 51.9357C43.6279 53.2464 43.0358 54.4357 42.1011 55.375C40.9346 56.5429 39.3828 57.15 37.8132 57.15L37.8097 57.1429Z" fill="%23111111"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7394">%0A<rect width="371" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',yl='data:image/svg+xml,<svg width="100" height="100" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7305)">%0A<path d="M75.2535 24.7464C68.7892 18.2821 59.8606 14.2857 49.9999 14.2857C40.1392 14.2857 37.5214 24.5964 31.0606 31.0607C24.5964 37.525 14.2856 40.1893 14.2856 50C14.2856 59.8107 18.2821 68.7893 24.7464 75.2536C31.2106 81.7179 40.1392 85.7143 49.9999 85.7143C59.8606 85.7143 68.7892 81.7179 75.2535 75.2536C81.7178 68.7893 85.7142 59.8607 85.7142 50C85.7142 40.1393 81.7178 31.2107 75.2535 24.7464ZM62.6285 62.6286C59.3964 65.8607 54.9321 67.8571 49.9999 67.8571C45.0678 67.8571 40.6035 65.8571 37.3714 62.6286C34.1392 59.3964 32.1428 54.9321 32.1428 50C32.1428 45.0678 34.1428 40.6036 37.3714 37.3714C40.6035 34.1393 45.0678 32.1428 49.9999 32.1428C54.9321 32.1428 59.3964 34.1428 62.6285 37.3714C65.8606 40.6036 67.8571 45.0678 67.8571 50C67.8571 54.9321 65.8571 59.3964 62.6285 62.6286Z" fill="%23FAFAFA"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7305">%0A<rect width="100" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A';const Hn={text:"--pass-card-text",sub:"--pass-card-sub",copyright:"--pass-card-copyright"},to=new WeakMap;function Eb(e){if(e)return to.get(e)}function yn(e,t){e&&(e.style.setProperty(Hn.text,t.text),e.style.setProperty(Hn.sub,t.sub),t.copyrightColor&&e.style.setProperty(Hn.copyright,t.copyrightColor),to.set(e,t))}function vn(e){e&&(e.style.removeProperty(Hn.text),e.style.removeProperty(Hn.sub),e.style.removeProperty(Hn.copyright),to.delete(e))}const vl={text:"var(--color-pureBlack)",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#1a1a1a"};function xl(e={}){const t=ht(vl,yn,vn);return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-two-circle","aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg-two-circle__c1"}),n.jsx("div",{className:"pass-card-bg-two-circle__c3"}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-two-circle__symbol",style:{"--symbol-url":`url("${yl}")`}})]})}const _l="M75.2535 24.7464C68.7892 18.2821 59.8606 14.2857 49.9999 14.2857C40.1392 14.2857 37.5214 24.5964 31.0606 31.0607C24.5964 37.525 14.2856 40.1893 14.2856 50C14.2856 59.8107 18.2821 68.7893 24.7464 75.2536C31.2106 81.7178 40.1392 85.7143 49.9999 85.7143C59.8606 85.7143 68.7892 81.7178 75.2535 75.2536C81.7178 68.7893 85.7142 59.8607 85.7142 50C85.7142 40.1393 81.7178 31.2107 75.2535 24.7464Z";var wa='data:image/svg+xml,<svg width="100" height="100" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2175_65181)">%0A<path d="M75.2535 24.7464C68.7892 18.2821 59.8606 14.2857 49.9999 14.2857C40.1392 14.2857 37.5214 24.5964 31.0606 31.0607C24.5964 37.525 14.2856 40.1893 14.2856 50C14.2856 59.8107 18.2821 68.7893 24.7464 75.2536C31.2106 81.7178 40.1392 85.7143 49.9999 85.7143C59.8606 85.7143 68.7892 81.7178 75.2535 75.2536C81.7178 68.7893 85.7142 59.8607 85.7142 50C85.7142 40.1393 81.7178 31.2107 75.2535 24.7464ZM62.6285 62.6286C59.3964 65.8607 54.9321 67.8571 49.9999 67.8571C45.0678 67.8571 40.6035 65.8571 37.3714 62.6286C34.1392 59.3964 32.1428 54.9321 32.1428 50C32.1428 45.0678 34.1428 40.6036 37.3714 37.3714C40.6035 34.1393 45.0678 32.1428 49.9999 32.1428C54.9321 32.1428 59.3964 34.1428 62.6285 37.3714C65.8606 40.6036 67.8571 45.0678 67.8571 50C67.8571 54.9321 65.8571 59.3964 62.6285 62.6286Z" fill="url(%23paint0_linear_2175_65181)"/>%0A</g>%0A<defs>%0A<linearGradient id="paint0_linear_2175_65181" x1="29.6392" y1="29.6393" x2="75.2535" y2="75.2536" gradientUnits="userSpaceOnUse">%0A<stop offset="0.2" stop-color="%23499CDF"/>%0A<stop offset="0.8" stop-color="%234DCDC0"/>%0A</linearGradient>%0A<clipPath id="clip0_2175_65181">%0A<rect width="100" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A';const Db={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"},Sb=[{scale:1,opacity:.55},{scale:2,opacity:.4},{scale:3.1,opacity:.28},{scale:4.5,opacity:.18},{scale:6,opacity:.1}];function wl(e={}){const t=ht(Db,yn,vn),a="var(--color-main)",r=270,s=170;return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-sound-move","aria-hidden":"true",children:[n.jsx("svg",{className:"pass-card-bg-sound-move__svg",viewBox:"0 0 300 189",preserveAspectRatio:"xMidYMid meet",xmlns:"http://www.w3.org/2000/svg",children:Sb.map(({scale:i,opacity:l},c)=>n.jsx("g",{transform:`translate(${r} ${s}) scale(${i}) translate(-50 -50)`,opacity:l,children:n.jsx("path",{d:_l,fill:"none",stroke:a,strokeWidth:"1.5",vectorEffect:"non-scaling-stroke"})},c))}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-move__symbol",style:{"--symbol-url":`url("${wa}")`}})]})}const jb={text:"#ffffff",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",logoColor:"_white",copyrightColor:"#ffffff"},Tb=[{scale:1,opacity:.55},{scale:2,opacity:.4},{scale:3.1,opacity:.28},{scale:4.5,opacity:.18},{scale:6,opacity:.1}];function Mb(e={}){const t=ht(jb,yn,vn),a="#ffffff",r=270,s=170;return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-sound-move-v1","aria-hidden":"true",children:[n.jsx("svg",{className:"pass-card-bg-sound-move-v1__svg",viewBox:"0 0 300 189",preserveAspectRatio:"xMidYMid meet",xmlns:"http://www.w3.org/2000/svg",children:Tb.map(({scale:i,opacity:l},c)=>n.jsx("g",{transform:`translate(${r} ${s}) scale(${i}) translate(-50 -50)`,opacity:l,children:n.jsx("path",{d:_l,fill:"none",stroke:a,strokeWidth:"1.5",vectorEffect:"non-scaling-stroke"})},c))}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-move-v1__symbol",style:{"--symbol-url":`url("${yl}")`}})]})}const Lb={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"};function $b(e={}){const t=ht(Lb,yn,vn);return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-talk","aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg-talk__shape pass-card-bg-talk__shape--left"}),n.jsx("div",{className:"pass-card-bg-talk__shape pass-card-bg-talk__shape--right"}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-talk__symbol",style:{"--symbol-url":`url("${wa}")`}})]})}const Rb={Logo_speechear_kr:{"":Qr,_white:_b,_textWhite:wb,_black:kb},Logo_speechearManager_kr:{"":eo,_white:Ab,_textWhite:Bb,_black:Nb}};function Pb(e,t){if(e)return Rb[e]?.[t??""]??void 0}const Ib={speechear:Qr,manager:eo},Fb={speechear:"Logo_speechear_kr",manager:"Logo_speechearManager_kr"},kl=10;function Al(e,t){if(e<=0)return t("passCard.remainingSecond",{n:0});const a=Math.floor(e/86400);if(a>0)return t("passCard.remainingDay",{n:a});const r=Math.floor(e/3600);if(r>0)return t("passCard.remainingHour",{n:r});const s=Math.floor(e/60);return s>0?t("passCard.remainingMinute",{n:s}):t("passCard.remainingSecond",{n:Math.floor(e)})}function Ob(e,t,a){if(e==="manager"){const r=/년/.test(t)||/yr|year/i.test(t)||/1년|365/.test(t),s=a==="\uC624\uD508\uD2B9\uAC00"||a===At.t("passCard.specialLabel");return r?n.jsx($b,{}):s?n.jsx(Mb,{}):n.jsx(wl,{})}return n.jsx(xl,{})}function Bl({product:e,showPrice:t=!1,plan:a,type:r,endDate:s,remainingSeconds:i,endInclusive:l=!1,state:c="active",bg:d,bgOnly:u=!1,textColor:p,subColor:m,copyrightColor:f,logoSrc:g,label:y,price:h,originalPrice:w,discountLabel:C,onUse:b,onRefund:x,onDelete:v}){const{t:A}=be.useTranslation(),k=e?bl(e):void 0,N=r??k?.type??"speechear",_=a??k?.plan??A("passCard.planSuffix","\uC774\uC6A9\uAD8C"),B=y??k?.label,E=h??(t?k?.price:void 0),P=w??(t?k?.originalPrice:void 0),H=C??k?.discountLabel,S=o.useMemo(()=>{if(E)return null;const ue=e?.durationDays??xb(e?.code);if(!ue||ue<=0)return i!=null?{percent:null,remainingLabel:Al(i,A)}:null;const U=ue*86400;let oe;if(i!=null)oe=i;else if((c==="active"||c==="expired")&&s){const ve=new Date(s).getTime();if(Number.isNaN(ve))return null;const ge=/^(\d{4})-(\d{2})-(\d{2})/.exec(String(s)),Se=/^(\d{4})-(\d{2})-(\d{2})/.exec(Ca()),Ce=Math.round(ge&&Se?(Date.UTC(+ge[1],+ge[2]-1,+ge[3])-Date.UTC(+Se[1],+Se[2]-1,+Se[3]))/864e5:(ve-Date.now())/864e5);oe=Math.max(0,l?Ce+1:Ce)*86400}else c==="expired"?oe=0:oe=U;const de=Math.max(0,Math.min(100,Math.floor(Math.min(oe,U)/U*100)));return c==="pending"&&de>=100?null:{percent:de,remainingLabel:Al(oe,A)}},[E,c,s,i,l,e?.durationDays,e?.code,A]),V=o.useRef(null),[j,M]=o.useState({}),[I,G]=o.useState(null),Q=!!(b||x||v),z=o.useRef(!1),q=o.useRef(void 0),[W,L]=o.useState(g);o.useLayoutEffect(()=>{L(g)},[g]),o.useLayoutEffect(()=>{const ue=V.current;ue&&(p!==void 0&&ue.style.setProperty("--pass-card-text",p),m!==void 0&&ue.style.setProperty("--pass-card-sub",m),f!==void 0&&ue.style.setProperty("--pass-card-copyright",f))},[p,m,f]),o.useLayoutEffect(()=>{const ue=V.current;if(!ue)return;const U=Eb(ue);if(!g){const oe=Fb[N],de=c==="expired"?"_black":U?.logoColor??"",ve=Pb(oe,de);L(ve)}},[d,g,N,c]);const D=ue=>{const U=V.current;if(!U)return null;const{left:oe,top:de,width:ve,height:ge}=U.getBoundingClientRect(),Se=(ue.clientX-oe)/ve-.5;return{rotateX:-((ue.clientY-de)/ge-.5)*kl,rotateY:Se*kl}},F=(ue,U)=>{const oe=U*-.7,de=ue*.7+10,ve=20+(Math.abs(ue)+Math.abs(U))*.4;return`${oe}px ${de}px ${ve}px rgba(0, 0, 0, 0.18)`},R=o.useCallback(ue=>{if(Jn())return;z.current=!0,clearTimeout(q.current),q.current=setTimeout(()=>{z.current=!1},200);const U=D(ue);U&&M({transform:`perspective(800px) rotateX(${U.rotateX}deg) rotateY(${U.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:F(U.rotateX,U.rotateY),transition:"transform 0.25s cubic-bezier(0.23, 1, 0.32, 1), box-shadow 0.25s cubic-bezier(0.23, 1, 0.32, 1)"})},[]),O=o.useCallback(ue=>{if(Jn())return;const U=D(ue);if(!U)return;const oe=z.current?"transform 0.2s ease, box-shadow 0.2s ease":"none";M({transform:`perspective(800px) rotateX(${U.rotateX}deg) rotateY(${U.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:F(U.rotateX,U.rotateY),transition:oe})},[]),$=o.useCallback(()=>{clearTimeout(q.current),z.current=!1,M({transform:"perspective(800px) rotateX(0deg) rotateY(0deg) scale3d(1, 1, 1)",boxShadow:"0px 4px 16px rgba(0, 0, 0, 0.08)",transition:"transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), box-shadow 0.5s cubic-bezier(0.23, 1, 0.32, 1)"})},[]),Y=o.useCallback(()=>G(null),[]),ee=o.useMemo(()=>{const ue=A("passCard.planSuffix","\uC774\uC6A9\uAD8C"),U=_.replace("\uC774\uC6A9\uAD8C","").replace(ue==="\uC774\uC6A9\uAD8C"?"":ue,"").trim(),oe=U.match(/^(.*?)(일|년)$/);return oe?n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"h0 pass-card__plan-number",children:oe[1]}),n.jsx("span",{className:"h5b pass-card__plan-unit",children:oe[2]==="\uB144"?A("passCard.unitYear","\uB144"):A("passCard.unitDay","\uC77C")})]}):n.jsx("span",{className:"h0",children:U})},[_,A]),Z=o.useMemo(()=>{const ue=Yn(E);if(!ue)return null;const U=ue.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!U)return n.jsx("span",{className:"h1",children:ue});const[,oe,de,ve]=U;return n.jsxs(n.Fragment,{children:[oe&&n.jsx("span",{className:"h5 pass-card__price-symbol",children:oe}),n.jsx("span",{className:"h1 pass-card__price-amount",children:de}),ve.trim()&&n.jsx("span",{className:"h5 pass-card__price-symbol",children:ve.trim()})]})},[E]),ae=o.useCallback(()=>{Q&&G(ue=>{if(ue)return null;const U=V.current?.getBoundingClientRect();if(!U)return null;const oe=50;return{left:U.left,right:U.right,width:U.width,height:U.height,x:U.x,y:U.y+oe,top:U.top+oe,bottom:U.bottom+oe}})},[Q]),_e=o.useCallback(ue=>{Q&&(ue.key==="Enter"||ue.key===" ")&&(ue.preventDefault(),ae())},[Q,ae]),re=[{items:[...b?[{label:A("passCard.menu.use","\uC0AC\uC6A9\uD558\uAE30"),icon:"play",onClick:()=>{b(),G(null)},closeOnSelect:!0}]:[],...x?[{label:A("passCard.menu.refund","\uD658\uBD88\uD558\uAE30"),icon:"rotate-ccw",onClick:()=>{x(),G(null)},closeOnSelect:!0}]:[],...v?[{label:A("passCard.menu.delete","\uC0AD\uC81C\uD558\uAE30"),icon:"trash-2",onClick:()=>{v(),G(null)},closeOnSelect:!0}]:[]]}];return n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"pass-card-frame",children:n.jsxs("div",{ref:V,className:`pass-card pass-card--${c}${Q?" pass-card--clickable":""}`,style:j,onMouseEnter:R,onMouseMove:O,onMouseLeave:$,onPointerUp:ue=>{ue.pointerType==="touch"&&$()},onPointerCancel:ue=>{ue.pointerType==="touch"&&$()},onClick:ae,onKeyDown:Q?_e:void 0,role:Q?"button":void 0,tabIndex:Q?0:void 0,"aria-haspopup":Q?"menu":void 0,"aria-expanded":Q?!!I:void 0,children:[d??Ob(N,_,B),!u&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"pass-card__top",children:n.jsxs("div",{className:"pass-card__top-left",children:[n.jsx("img",{src:W??Ib[N],className:"pass-card__logo",alt:N==="manager"?A("header.logoManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800 \uB85C\uACE0"):A("header.logoMalgwi","\uB9D0\uADC0 \uB85C\uACE0")}),n.jsxs("div",{className:"pass-card__plan",children:[n.jsx("div",{children:ee}),n.jsx("span",{className:"h5b pass-card__plan-suffix",children:B?A("passCard.labeledPlan",{label:B}):A("passCard.planSuffix","\uC774\uC6A9\uAD8C")})]})]})}),E?n.jsxs("div",{className:"pass-card__price-area",children:[H&&n.jsx("span",{className:"pass-card__discount body-3",children:H}),n.jsxs("div",{className:"pass-card__price",children:[P&&n.jsx("span",{className:"pass-card__price-original body-3",children:Yn(P)}),Z]})]}):S?n.jsxs("div",{className:"pass-card__usage",children:[n.jsx("span",{className:"h5b pass-card__usage-remaining",children:S.remainingLabel}),S.percent!=null&&n.jsxs("span",{className:"pass-card__usage-percent",children:[n.jsx("span",{className:"h1 pass-card__usage-value",children:S.percent}),n.jsx("span",{className:"h5b pass-card__usage-symbol",children:"%"})]})]}):n.jsx("div",{className:"pass-card__copyright caption-2",children:"\xA9 IHAB Corp. All rights reserved."})]})]})}),I&&n.jsx(Qt,{anchorRect:I,onClose:Y,ariaLabel:A("tooltip.menu","\uBA54\uB274"),children:n.jsx(_a,{columns:re,onClose:Y,size:"small"})})]})}const Hb={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#1a1a1a"};function zb(e={}){const t=`passcard-sound-line-grad-${o.useId()}`,a=ht(Hb,yn,vn);return n.jsxs("div",{ref:a,className:"pass-card-bg pass-card-bg-sound-line","aria-hidden":"true",children:[n.jsxs("svg",{className:"pass-card-bg-sound-line__svg",viewBox:"0 0 500 300",preserveAspectRatio:"xMidYMid slice",xmlns:"http://www.w3.org/2000/svg",children:[n.jsx("defs",{children:n.jsxs("linearGradient",{id:t,x1:"0",y1:"0",x2:"1",y2:"0",children:[n.jsx("stop",{offset:"20%",stopColor:"var(--color-main)"}),n.jsx("stop",{offset:"80%",stopColor:"var(--color-sub)"})]})}),n.jsx("g",{transform:"translate(25, 45)",children:n.jsx("path",{d:"M -30 150 C 40 80, 100 220, 160 150 S 280 80, 340 150 S 460 220, 510 150",fill:"none",stroke:`url(#${t})`,strokeWidth:"50",strokeLinecap:"round"})})]}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-line__symbol",style:{"--symbol-url":`url("${wa}")`}})]})}const Vb={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"};function Wb(e={}){const t=ht(Vb,yn,vn);return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-talk-v1","aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg-talk-v1__shape pass-card-bg-talk-v1__shape--left"}),n.jsx("div",{className:"pass-card-bg-talk-v1__shape pass-card-bg-talk-v1__shape--right"}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-talk-v1__symbol",style:{"--symbol-url":`url("${wa}")`}})]})}function qb(e,t){if(e){if(t==="manager_pro")return n.jsx(Wb,{});if(t==="manager_standard")return n.jsx(zb,{});if(t==="manager_lite")return n.jsx(wl,{})}}function Ub(e){const t=Yn(e);if(!t)return null;const a=t.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!a)return t;const[,r,s,i]=a;return n.jsxs(n.Fragment,{children:[r&&n.jsx("span",{className:"payment-plan__pricing-symbol h4",children:r}),s,i.trim()&&n.jsx("span",{className:"payment-plan__pricing-symbol h4",children:i.trim()})]})}function Gb(e){const{t}=be.useTranslation(),a=t("payment.plan.tierFallback",{defaultValue:"\uC774\uC6A9\uAD8C"}),r=t("payment.plan.openPromo",{defaultValue:"\uC624\uD508 \uD2B9\uAC00"}),{plan:s,onSelect:i,period:l="monthly",ownedCodes:c}=e||{},d=v=>!!v&&!!c?.includes(v),u=v=>v.onceOnly??/오픈\s*특가/.test(v.label??""),p=(s.tiers||[]).some(v=>u(v)&&d(v.code)),m=v=>{const A=v.prices?v.prices[l]:v.price;return A?(s.tiers||[]).some(k=>!!k.badge&&k.originals?.[l]===A):!1},f=s.colorToken?`var(--color-${s.colorToken})`:"var(--color-gray)",g=t("payment.plan.freePrice","\uBB34\uB8CC"),y=t("payment.products.mgrEnterprise.tier.price","\uBB38\uC758"),h=v=>v.prices?v.prices[l]:v.price,w=(s.tiers||[]).length>0&&(s.tiers||[]).every(v=>{const A=h(v);return A==="\uBB34\uB8CC"||A===g||A==="0\uC6D0"||typeof A=="string"&&/\d/.test(A)&&!/[1-9]/.test(A)}),C=(s.tiers||[]).length>0&&(s.tiers||[]).every(v=>{const A=h(v);return A==="\uBB38\uC758"||A===y}),b=s.group==="org",x=b?"manager":"speechear";return n.jsxs("div",{className:"payment-plan__card",style:{borderColor:f,"--plan-color":f},children:[s.cardBadge&&n.jsx("div",{className:"payment-plan__card-badge",children:n.jsx(ft,{label:s.cardBadge,variant:"main",size:"medium",fill:"soft"})}),n.jsxs("div",{className:"payment-plan__title",children:[n.jsx("p",{className:"payment-plan__quote body-3b",style:{color:f},children:s.quote||"\xA0"}),n.jsx("h3",{className:"payment-plan__title-heading h1",children:s.tier??s.title}),n.jsx("p",{className:"payment-plan__subtitle body-3",children:s.subtitle})]}),n.jsxs("div",{className:"payment-plan__box",children:[n.jsx("span",{className:"payment-plan__box-title body-3b",children:t("payment.plan.recommendedFor","\uC774\uB7F0 \uBD84\uAED8 \uCD94\uCC9C\uD569\uB2C8\uB2E4.")}),n.jsx("ul",{className:"payment-plan__feature-list",children:(s.recommendedFor||[]).map((v,A)=>n.jsxs("li",{className:"payment-plan__feature-item body-3",children:[n.jsx(Ue,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:f}}),v]},A))})]}),n.jsxs("div",{className:"payment-plan__box",children:[n.jsx("span",{className:"payment-plan__box-title body-3b",children:t("payment.plan.features","\uD575\uC2EC \uAE30\uB2A5")}),n.jsx("ul",{className:"payment-plan__feature-list",children:(s.features||[]).map((v,A)=>n.jsxs("li",{className:"payment-plan__feature-item body-3",children:[n.jsx(Ue,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:f}}),v]},A))})]}),n.jsx("div",{className:"payment-plan__card-pricing",children:w?null:C?n.jsx(pe,{htmlType:"button",className:"payment-plan__contact-button",label:t("payment.plan.contact",{defaultValue:"\uBB38\uC758\uD558\uAE30"}),variant:"main",size:56,onClick:()=>s.tiers?.[0]&&i?.({...s.tiers[0],productId:s.id,productTitle:s.title})}):n.jsx(n.Fragment,{children:n.jsx("div",{className:"payment-plan__pricing-list",children:(s.tiers||[]).map(v=>{const A=v.label||a,k=u(v),N=k||v.openPromo===!0,_=A.replace(/^오픈\s*특가\s*/,"")||a,B=v.prices?v.prices[l]:v.price,E=v.badge?N?`${r}
|
|
852
|
+
${v.badge}`:v.badge:void 0;if(k&&d(v.code))return null;if(!v.badge&&!p)return m(v)?null:n.jsxs("div",{className:`payment-plan__pricing-row payment-plan__pricing-row--static${v.highlight?" payment-plan__pricing-row--highlight":""}`,children:[n.jsx("div",{className:"payment-plan__pricing-row-title",children:n.jsx("div",{className:"payment-plan__pricing-row-label h5b",children:v.label})}),n.jsx("div",{className:"payment-plan__pricing-row-price",children:n.jsx("span",{className:"payment-plan__pricing-current h1",children:Ub(B)})})]},v.id);const P=s.tier??(b?s.title:void 0),H=n.jsx(Bl,{showPrice:!0,product:{type:x,code:v.code,name:_,label:P,price:B,originalPrice:v.originals?.[l]??void 0,discountLabel:E},bg:qb(b,s.id)}),S=()=>i?.({...v,productId:s.id,productTitle:s.title,preview:H});return n.jsx("div",{className:"payment-plan__pricing-card",onClick:S,onKeyDown:i?V=>{V.target===V.currentTarget&&(V.key==="Enter"||V.key===" ")&&(V.preventDefault(),S())}:void 0,role:i?"button":void 0,tabIndex:i?0:void 0,children:H},v.id)})})})})]})}function Kb({variant:e="default"}){return n.jsxs("div",{className:`pass-card-bg pass-card-bg--${e}`,"aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--1"}),n.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--2"}),n.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--3"})]})}var no='data:image/svg+xml,<svg width="264" height="100" viewBox="0 0 264 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2079_3030)">%0A<path d="M60.9019 24.7464C54.4446 18.2821 45.5257 14.2857 35.6757 14.2857C25.8256 14.2857 23.2106 24.5964 16.7569 31.0607C10.2996 37.5214 0 40.1857 0 50C0 59.8143 3.99211 68.7893 10.4494 75.2536C16.9067 81.7178 25.8256 85.7143 35.6757 85.7143C45.5257 85.7143 54.4446 81.7178 60.9019 75.2536C67.3592 68.7893 71.3513 59.8607 71.3513 50C71.3513 40.1393 67.3592 31.2107 60.9019 24.7464ZM48.2906 62.6286C45.0619 65.8607 40.6025 67.8571 35.6757 67.8571C30.7489 67.8571 26.2894 65.8571 23.0608 62.6286C19.8321 59.3964 17.8378 54.9321 17.8378 50C17.8378 45.0678 19.8357 40.6036 23.0608 37.3714C26.2894 34.1393 30.7489 32.1428 35.6757 32.1428C40.6025 32.1428 45.0619 34.1428 48.2906 37.3714C51.5192 40.6036 53.5135 45.0678 53.5135 50C53.5135 54.9321 51.5157 59.3964 48.2906 62.6286Z" fill="url(%23paint0_linear_2079_3030)"/>%0A<path d="M106.735 74.8322H93.6274V24.8322H106.735V74.8322Z" fill="%23111111"/>%0A<path d="M113.495 24.8322H126.602V44.5143H145.022V24.8322H158.197V74.8322H145.022V55.15H126.602V74.8322H113.495V24.8322Z" fill="%23111111"/>%0A<path d="M163.027 74.8322L179.652 24.8322H197.519L214.076 74.8322H199.934L196.969 65.025H180.205L177.241 74.8322H163.031H163.027ZM193.933 55.0786L188.76 38.2964H188.346L183.241 55.0786H193.933Z" fill="%23111111"/>%0A<path d="M218.906 24.8322H240.29C251.674 24.8322 257.675 29.7357 257.675 37.4C257.675 42.925 253.743 47.1393 248.085 48.3107V48.7929C254.364 49 259.605 53.6286 259.605 60.7393C259.605 68.8893 252.983 74.8286 242.081 74.8286H218.902V24.8322H218.906ZM244.157 40.1643C244.157 36.9857 241.674 35.1929 238.085 35.1929H232.013V45.1393H237.878C241.535 45.1393 244.157 43.3429 244.157 40.1679V40.1643ZM245.741 59.0857C245.741 55.425 243.119 53.3536 238.913 53.3536H232.013V64.2643H238.706C243.397 64.2643 245.741 62.4679 245.741 59.0857Z" fill="%23111111"/>%0A</g>%0A<defs>%0A<linearGradient id="paint0_linear_2079_3030" x1="15.337" y1="29.6393" x2="60.9512" y2="75.2042" gradientUnits="userSpaceOnUse">%0A<stop offset="0.2" stop-color="%23499CDF"/>%0A<stop offset="0.8" stop-color="%234DCDC0"/>%0A</linearGradient>%0A<clipPath id="clip0_2079_3030">%0A<rect width="264" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A';const Nl={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#c9c9c9"};function Yb(){const e=ht(Nl,yn,vn);return n.jsx("div",{ref:e,className:"pass-card-bg pass-card-bg-ihab","aria-hidden":"true",children:n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-ihab__symbol-top",style:{"--symbol-url":`url("${no}")`}})})}const El={text:"#ffffff",sub:"var(--color-lightGray)",logoBase:"Logo_speechearManager_kr",logoColor:"_white",copyrightColor:"#ffffff"};function Zb(e={}){const t=ht(El,yn,vn);return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-left-color-grid","aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg-left-color-grid__bar"}),n.jsx("div",{className:"pass-card-bg-left-color-grid__grid"}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-left-color-grid__symbol",style:{"--symbol-url":`url("${wa}")`}})]})}function Dl({keys:e,anchor:t="top-right",scale:a,className:r=""}){const s=Array.isArray(e)?e:[e];return n.jsx("span",{className:De("shortcut-badge",`shortcut-badge--${t}`,r),style:a===void 0?void 0:{"--shortcut-badge-scale":String(a)},children:s.map((i,l)=>n.jsxs("span",{className:"shortcut-badge__group",children:[l>0&&n.jsx("span",{className:"shortcut-badge__plus",children:"+"}),n.jsx("kbd",{className:"shortcut-badge__key",children:i})]},`${i}-${l}`))})}const ka=(e,t,a)=>e+(t-e)*a;function Xb({speakers:e,size:t=300,viewT:a=0,activeSpeakerId:r=null,playedIds:s,selectedId:i=null,answerId:l=null,showFeedback:c=!1,pulseSelected:d=!1,pulseSelectedDuration:u,pulseScale:p,clickable:m=!1,onSelectSpeaker:f,buttonSize:g=40,showIcon:y=!0,onCenterClick:h,centerLabel:w,centerDisabled:C=!1,centerAttention:b=!1,shortcutAnchor:x="top-right",shortcutScale:v,scaleShortcut:A=!1}){const{t:k}=be.useTranslation(),N=Math.max(0,Math.min(1,a)),_=t/2,B=110/300,E=.18,P=U=>t*(B+(U-1)*E),H=U=>{const oe=P(U.row??1),de=U.angleDeg*Math.PI/180;return{x:_+oe*Math.cos(de),y:_+oe*Math.sin(de)}},S=Math.max(...e.map(U=>U.row??1),1),V=t*.08,j=t*.1,M=t*.24,I=t-2*V,G=t-j-M,Q=t-M/2,z=o.useMemo(()=>[...new Set(e.map(U=>U.deg))].sort((U,oe)=>U-oe),[e]),q=z.length,W=Math.max(68,q>1?I/(q-1):0),L=o.useMemo(()=>new Map(z.map((U,oe)=>[U,oe])),[z]),D=U=>{const oe=L.get(U.deg)??0,de=_+(oe-(q-1)/2)*W,ve=S>1?Math.min(68,G/(S-1)):0,ge=ve*(S-1),Se=j+(G-ge)/2,Ce=S===1?j+G*.4:Se+(S-(U.row??1))*ve;return{x:de,y:Ce}},F=U=>{const oe=H(U),de=D(U);return{x:ka(oe.x,de.x,N),y:ka(oe.y,de.y,N)}},R={x:_,y:ka(_,Q,N)},O=Math.round(g*1.2),$=Math.round(Math.max(16,Math.min(80,g*.7))),Y=[],ee=new Map;for(const U of e){const oe=U.row??1;ee.has(oe)||ee.set(oe,[]),ee.get(oe).push(U)}for(const[U,oe]of ee.entries()){if(oe.length<2)continue;const de=[...oe].sort((Te,Ae)=>Te.deg-Ae.deg),ve=de.map(Te=>F(Te)),ge=de.map(Te=>Te.deg),Se=ge[ge.length-1]-ge[0],Ce=Se/(ge.length-1),Ee=360-Se,Be=de.length>=3&&Ce>0&&Ee<=Ce*1.5,Re=Math.round(P(U)*1e3)/1e3,Le=(Te,Ae,ie,ye)=>{const se=(Ae.angleDeg-Te.angleDeg+540)%360-180;if(se===0)return`L ${ye.x} ${ye.y}`;if(N===0)return`A ${Re} ${Re} 0 0 ${se>0?1:0} ${ye.x} ${ye.y}`;const Ie=(Te.angleDeg+se/2)*Math.PI/180,ze={x:_+Re*Math.cos(Ie),y:_+Re*Math.sin(Ie)},Ge={x:(ie.x+ye.x)/2,y:(ie.y+ye.y)/2},Ze={x:ka(ze.x,Ge.x,N),y:ka(ze.y,Ge.y,N)},Ye={x:2*Ze.x-Ge.x,y:2*Ze.y-Ge.y};return`Q ${Ye.x} ${Ye.y} ${ye.x} ${ye.y}`},me=Be?[...de,de[0]]:de,ke=Be?[...ve,ve[0]]:ve;let Me=`M ${ke[0].x} ${ke[0].y}`;for(let Te=1;Te<ke.length;Te++)Me+=" "+Le(me[Te-1],me[Te],ke[Te-1],ke[Te]);Y.push({key:`arc-${U}`,d:Me})}const Z=o.useMemo(()=>new Set(s??[]),[s]),ae=U=>({idle:"",active:k("soundCompass.state.active","\uC18C\uB9AC \uB098\uB294 \uC911"),played:k("soundCompass.state.played","\uB4E4\uC74C"),correct:k("soundCompass.state.correct","\uC815\uB2F5"),wrong:k("soundCompass.state.wrong","\uC624\uB2F5")})[U],_e=U=>{if(r===U.id)return"active";if(c){if(U.id===l)return"correct";if(U.id===i&&i!==l)return"wrong"}return Z.has(U.id)?"played":"idle"},re=U=>r===U.id?"loop":c?U.id===l?"loop":null:d&&U.id===i?"once":null,ue=(U,oe)=>{switch(U){case"played":case"correct":return n.jsx(rs,{size:oe});case"wrong":return n.jsx(hs,{size:oe});default:return n.jsx(ms,{size:oe})}};return n.jsx("div",{className:"sound-compass",children:n.jsxs("div",{className:"sound-compass__compass-wrap",style:{width:t,height:t},children:[n.jsxs("svg",{width:t,height:t,viewBox:`0 0 ${t} ${t}`,className:"sound-compass__svg",children:[N===0&&e.map(U=>{const{x:oe,y:de}=F(U);return n.jsx("line",{x1:R.x,y1:R.y,x2:oe,y2:de,stroke:"#dde3ec",strokeWidth:"1"},U.id)}),Y.map(U=>n.jsx("path",{d:U.d,fill:"none",stroke:"#dde3ec",strokeWidth:"1"},U.key))]}),b&&!C&&n.jsx("div",{className:"sound-compass__pulse sound-compass__pulse--active sound-compass__pulse--center",style:{width:O,height:O,left:R.x-O/2,top:R.y-O/2}}),h?n.jsx("button",{type:"button",className:`sound-compass__center sound-compass__center--button${C?" sound-compass__center--disabled":""}`,style:{width:O,height:O,left:R.x,top:R.y},"aria-label":w,"aria-disabled":C||void 0,tabIndex:C?-1:0,onClick:C?void 0:h,children:n.jsx(fr,{size:$,color:"currentColor",strokeWidth:1.5})}):n.jsx("div",{className:"sound-compass__center",style:{width:O,height:O,left:R.x,top:R.y},children:n.jsx(fr,{size:$,color:"currentColor",strokeWidth:1.5})}),e.map((U,oe)=>{const{x:de,y:ve}=F(U),ge=_e(U),Se=re(U),Ce={...v!==void 0||A?{"--shortcut-badge-scale":String(v??Math.max(.75,Math.min(3,g/56)))}:null,pointerEvents:m?"auto":"none",cursor:m?"pointer":"default",zIndex:ge!=="idle"?10:1},Ee=g,Be=Math.round(Math.max(10,Math.min(56,Ee*.38))),Re=Math.round(Math.max(7,Math.min(18,Ee*.2))),Le=Math.round(Math.max(10,Math.min(56,Ee*.4))),me=y==="answered"&&(ge==="played"||ge==="correct"||ge==="wrong"),ke=y===!0||me,Me=!me;return n.jsxs("div",{className:"sound-compass__speaker-pos",style:{...Ce,left:de-Ee/2,top:ve-Ee/2},children:[Se&&n.jsx("div",{className:`sound-compass__pulse sound-compass__pulse--${ge}`+(Se==="once"?" sound-compass__pulse--once":""),style:{width:Ee,height:Ee,...Se==="once"&&u!==void 0?{"--sc-pulse-duration-once":`${u}ms`}:null,...p!==void 0?{"--sc-pulse-scale":String(p)}:null}}),n.jsxs("button",{type:"button",tabIndex:m?0:-1,"aria-disabled":m?void 0:!0,onClick:m?()=>f?.(U.id):void 0,className:`sound-compass__speaker-btn sound-compass__speaker-btn--${ge}`,style:{width:Ee,height:Ee},"aria-label":ae(ge)?`${U.label}, ${ae(ge)}`:U.label,"aria-pressed":i!=null?U.id===i:void 0,children:[ke&&ue(ge,Be),Me&&n.jsx("span",{className:"sound-compass__speaker-number",style:{fontSize:y===!0?Re:Le},children:oe+1})]}),U.shortcut&&n.jsx(Dl,{keys:U.shortcut,anchor:x,className:"sound-compass__speaker-shortcut"})]},U.id)})]})})}function Jb({children:e,position:t="top-left",size:a=24,className:r=""}){return n.jsx("span",{className:De("circle-badge","circle-badge--number",`circle-badge--${a}`,`circle-badge--${t}`,r),children:e})}function Qb({orientation:e="horizontal",label:t,className:a=""}){const r=De("divider",`divider--${e}`,t&&e==="horizontal"?"divider--labeled":"",a);return e==="vertical"?n.jsx("div",{className:r,role:"separator","aria-orientation":"vertical"}):t?n.jsxs("div",{className:r,role:"separator","aria-orientation":"horizontal",children:[n.jsx("span",{className:"divider__line"}),n.jsx("span",{className:"divider__label caption-1",children:t}),n.jsx("span",{className:"divider__line"})]}):n.jsx("div",{className:r,role:"separator","aria-orientation":"horizontal"})}function Sl({checked:e,onChange:t,name:a,value:r,disabled:s=!1,label:i,className:l=""}){const c=o.useId();return n.jsxs("label",{className:`radio${s?" radio--disabled":""} ${l}`.trim(),htmlFor:c,children:[n.jsx("input",{id:c,type:"radio",name:a,value:r,checked:e,disabled:s,onChange:d=>t?.(d.target.checked)}),n.jsx("span",{className:"radio__dot"}),i&&n.jsx("span",{className:"radio__label body-2",children:i})]})}function e4({options:e,value:t,onChange:a,name:r,disabled:s=!1,direction:i="vertical",className:l="",ariaLabel:c}){const d=o.useId(),u=r??`radio-group-${d}`;return n.jsx("div",{className:`radio-group radio-group--${i} ${l}`.trim(),role:"radiogroup","aria-label":c,children:e.map(p=>n.jsx(Sl,{name:u,value:p.value,checked:t===p.value,disabled:s||p.disabled,label:p.label,onChange:m=>{m&&a?.(p.value)}},p.value))})}const t4={info:"info",success:"check-circle",warning:"alert-triangle",danger:"alert-circle"};function n4({tone:e="info",title:t,message:a,children:r,dismissible:s=!1,onDismiss:i,live:l,className:c=""}){const{t:d}=be.useTranslation(),[u,p]=o.useState(!1),m=o.useRef(null),f=o.useCallback(()=>{const b=m.current;b&&b.contains(document.activeElement)&&Va(b),p(!0),i?.()},[i]);if(u)return null;const g=De("alert",`alert--${e}`,c),y=l??(e==="danger"||e==="warning"?"assertive":"polite"),h=y==="assertive"?"alert":y==="polite"?"status":void 0,w=!!t,C=!!(a||r);return n.jsxs("div",{ref:m,className:g,role:h,children:[n.jsxs("div",{className:"alert__body",children:[n.jsxs("div",{className:"alert__header",children:[n.jsx(Ue,{icon:t4[e],size:20,className:"alert__icon"}),w&&n.jsx("span",{className:"alert__title body-2",children:t}),!w&&C&&n.jsx("div",{className:"alert__message body-3",children:a||r})]}),w&&C&&n.jsx("div",{className:"alert__message alert__message--indented body-3",children:a||r})]}),s&&n.jsx("button",{type:"button",className:"alert__dismiss",onClick:f,"aria-label":d("common.close","\uB2EB\uAE30"),children:"\xD7"})]})}const a4={ready:"search",guide:"info",error:"circle-alert"};function r4(e,t){const a=t.filter(Boolean);if(a.length===0)return e;const r=[];let s=0,i=0;for(const l of a){const c=e.indexOf(l,s);c<0||(c>s&&r.push(e.slice(s,c)),r.push(n.jsx("strong",{className:"search-summary__em body-2",children:l},i++)),s=c+l.length)}return s<e.length&&r.push(e.slice(s)),r}function o4({status:e="guide",label:t,children:a,emphasis:r,icon:s,className:i=""}){const l=s===!1?null:s??a4[e],c=De("search-summary",`search-summary--${e}`,i),d=t??a,u=typeof d=="string"&&r&&r.length>0?r4(d,r):d;return n.jsxs("div",{className:c,role:"status","aria-live":"polite",children:[l!=null&&n.jsx(Ue,{icon:l,size:18,className:"search-summary__icon"}),n.jsx("span",{className:"search-summary__text body-2",children:u})]})}function Aa({title:e,items:t}){const{t:a}=be.useTranslation(),{anchorRect:r,openAt:s,close:i}=ya(),l=o.useRef(null),c=Vr(!!r,(d,u)=>{d&&u?s(l.current?.querySelector("button")??u):i()},l);return n.jsxs("span",{ref:l,style:{display:"contents"},children:[n.jsx(pe,{htmlType:"button",size:24,type:"dot",icon:"info",variant:"transparent-gray",useBorder:!1,selected:!!r,ariaLabel:a("common.info","\uC124\uBA85"),onPointerEnter:d=>{Xn(d)||s(d.currentTarget)},onPointerLeave:d=>{Xn(d)||i()},onClick:d=>{c.touchPress(d.currentTarget)},onFocus:d=>{Jn()||s(d.currentTarget)},onBlur:i}),r&&n.jsx(Fn,{title:e,items:t,showIndex:t.length>1,anchorRect:r,onClose:i})]})}function s4({items:e=[],value:t,onChange:a,className:r="",size:s=40}){const i=o.useId(),{t:l}=be.useTranslation(),c=o.useRef(null),d=e.find(h=>!h.disabled)?.key,u=e.some(h=>h.key===t)?t:d??e[0]?.key,p=e.find(h=>h.key===u&&!h.disabled)?.key??d,m=()=>Array.from(c.current?.querySelectorAll('[role="tab"]:not(:disabled)')??[]),f=(h,w=m())=>{if(w.length===0)return;const C=(h%w.length+w.length)%w.length;w[C]?.focus(),w[C]?.click()},g=h=>{if(!["ArrowRight","ArrowDown","ArrowLeft","ArrowUp","Home","End"].includes(h.key))return;h.preventDefault();const w=m(),C=w.indexOf(h.currentTarget);h.key==="ArrowRight"||h.key==="ArrowDown"?f(C+1,w):h.key==="ArrowLeft"||h.key==="ArrowUp"?f(C-1,w):h.key==="Home"?f(0,w):f(w.length-1,w)},y=e.find(h=>h.key===u);return n.jsxs("div",{className:`tabs ${r}`.trim(),children:[n.jsx("div",{ref:c,className:`tabs__list tabs__list--${s}`,role:"tablist","aria-label":l("tabs.ariaLabel","\uD0ED"),children:e.map(h=>n.jsx("button",{id:`tabs__tab-${i}-${h.key}`,type:"button",role:"tab","aria-selected":h.key===u,"aria-controls":`tabs__panel-${i}-${h.key}`,disabled:h.disabled,tabIndex:h.key===p?0:-1,className:`tabs__tab body-2${h.key===u?" tabs__tab--active":""}`,onClick:()=>{h.key!==t&&a?.(h.key)},onKeyDown:g,children:h.label},h.key))}),y&&n.jsx("div",{id:`tabs__panel-${i}-${y.key}`,role:"tabpanel","aria-labelledby":`tabs__tab-${i}-${y.key}`,tabIndex:0,className:"tabs__panel",children:y.panel},y.key)]})}const i4={xs:12,sm:16,md:20,lg:28,xl:36};function l4(e){const t=e.trim().split(/\s+/).filter(Boolean);return t.length===0?"":t.length===1?[...t[0]].slice(0,2).join("").toUpperCase():([...t[0]][0]+[...t[t.length-1]][0]).toUpperCase()}function c4({src:e,name:t,size:a="md",shape:r="circle",className:s=""}){const{t:i}=be.useTranslation(),[l,c]=o.useState(null),d=!!e&&l===e,u=t?l4(t):"",p=!!e&&!d,m=!p&&!!u,f=t||i("avatar.ariaLabel","\uC0AC\uC6A9\uC790 \uC544\uBC14\uD0C0");return n.jsxs("span",{className:`avatar avatar--${a} avatar--${r} ${s}`.trim(),role:"img","aria-label":f,children:[p&&n.jsx("img",{className:"avatar__image",src:e,alt:f,onError:()=>c(e??null)}),!p&&m&&n.jsx("span",{className:"avatar__initials","aria-hidden":"true",children:u}),!p&&!m&&n.jsx(Ue,{icon:"user-round",size:i4[a],className:"avatar__icon"})]})}function u4(e,t){if(!t)return!0;const a=t.split(",").map(i=>i.trim()).filter(Boolean);if(a.length===0)return!0;const r=e.name.toLowerCase(),s=e.type.toLowerCase();return a.some(i=>{const l=i.toLowerCase();return l.startsWith(".")?r.endsWith(l):l.endsWith("/*")?s.startsWith(l.slice(0,-1)):s===l})}function d4({onFilesSelected:e,accept:t,multiple:a=!1,disabled:r=!1,showFileList:s=!0,files:i,onRemove:l,className:c=""}){const{t:d}=be.useTranslation(),u=o.useRef(null),[p,m]=o.useState(!1),[f,g]=o.useState([]),y=i??f,h=k=>{if(!k||k.length===0)return;const N=Array.from(k).filter(B=>u4(B,t));if(N.length===0)return;const _=a?N:N.slice(0,1);if(i===void 0){const B=a?[...y,..._]:_;g(B),e?.(B)}else e?.(_)},w=k=>{k.preventDefault(),!r&&m(!0)},C=k=>{k.preventDefault(),m(!1)},b=k=>{k.preventDefault(),m(!1),!r&&h(k.dataTransfer.files)},x=k=>{const N=k.target;try{h(N.files)}finally{N.value=""}},v=()=>{r||u.current?.click()},A=k=>{if(!r&&(l?.(k),i===void 0)){const N=y.filter((_,B)=>B!==k);g(N),l||e?.(N)}};return n.jsxs("div",{className:`file-upload ${c}`.trim(),children:[n.jsxs("div",{className:De("file-upload__dropzone",p&&"file-upload__dropzone--dragging",r&&"file-upload__dropzone--disabled"),role:"button",tabIndex:r?-1:0,"aria-disabled":r,onClick:v,onKeyDown:k=>{(k.key==="Enter"||k.key===" ")&&(k.preventDefault(),v())},onDragOver:w,onDragLeave:C,onDrop:b,children:[n.jsx(Ue,{icon:"upload",size:24,className:"file-upload__icon"}),n.jsx("span",{className:"file-upload__prompt body-2",children:d("fileUpload.dragPrompt","\uD30C\uC77C\uC744 \uC774\uACF3\uC5D0 \uB4DC\uB798\uADF8\uD558\uC5EC \uC5C5\uB85C\uB4DC")}),n.jsx("button",{type:"button",className:"file-upload__browse-button body-3",disabled:r,onClick:k=>{k.stopPropagation(),v()},children:d("fileUpload.browseButton","\uD30C\uC77C \uC120\uD0DD")}),n.jsx("input",{ref:u,type:"file",className:"file-upload__input",accept:t,multiple:a,disabled:r,onChange:x,tabIndex:-1})]}),s&&y.length>0&&n.jsx("ul",{className:"file-upload__list",children:y.map((k,N)=>n.jsxs("li",{className:"file-upload__list-item body-3",children:[n.jsx("span",{className:"file-upload__file-name body-3",children:k.name}),n.jsx("button",{type:"button",className:"file-upload__remove-button","aria-label":d("fileUpload.removeAriaLabel",{name:k.name}),disabled:r,onClick:()=>A(N),children:n.jsx(Ue,{icon:"x",size:14})})]},`${k.name}-${N}`))})]})}function p4({items:e,className:t=""}){const{t:a}=be.useTranslation();return n.jsx("nav",{className:`breadcrumb ${t}`.trim(),"aria-label":a("breadcrumb.ariaLabel","\uC774\uB3D9 \uACBD\uB85C"),children:n.jsx("ol",{className:"breadcrumb__list",children:e.map((r,s)=>{const i=s===e.length-1;return n.jsxs("li",{className:"breadcrumb__item",children:[i?n.jsx("span",{className:"breadcrumb__current body-3","aria-current":"page",children:r.label}):r.href?n.jsx("a",{className:"breadcrumb__link body-3",href:r.href,target:r.target,rel:r.rel??(r.target==="_blank"?"noopener noreferrer":void 0),onClick:r.onClick,children:r.label}):r.onClick?n.jsx("button",{type:"button",className:"breadcrumb__link body-3",onClick:r.onClick,children:r.label}):n.jsx("span",{className:"breadcrumb__text body-3",children:r.label}),!i&&n.jsx(Ue,{icon:"chevron-right",size:14,className:"breadcrumb__separator"})]},s)})})})}const m4={small:14,medium:20,large:28};function h4({value:e,onChange:t,max:a=5,readOnly:r=!1,size:s="medium",ariaLabel:i,className:l=""}){const{t:c}=be.useTranslation(),d=r||!t,[u,p]=o.useState(null),m=d?e:Number.isFinite(e)?Math.round(e):0,f=u??m,g=m4[s],y=k=>{k!==e&&t?.(k)},h=k=>{d||y(k)},w=k=>{d||Jn()||p(k)},C=o.useRef(null),b=k=>{const N=Math.min(a,Math.max(1,k));y(N),Array.from(C.current?.querySelectorAll("[data-star]")??[]).find(_=>_.dataset.star===String(N))?.focus()},x=k=>{if(!d){switch(k.key){case"ArrowRight":case"ArrowUp":b((m||0)+1);break;case"ArrowLeft":case"ArrowDown":b((m||1)-1);break;case"Home":b(1);break;case"End":b(a);break;default:return}k.preventDefault()}},v=m>=1&&m<=a?Math.round(m):1,A=()=>{d||p(null)};return n.jsx("div",{className:`rating rating--${s}${d?" rating--readOnly":""} ${l}`.trim(),ref:C,onKeyDown:x,role:d?"img":"radiogroup","aria-label":d?c("rating.valueLabel",{value:e,max:a}):i??c("rating.groupLabel","\uBCC4\uC810"),onMouseLeave:A,onPointerUp:k=>{k.pointerType==="touch"&&A()},onPointerCancel:k=>{k.pointerType==="touch"&&A()},children:Array.from({length:a},(k,N)=>{const _=N+1,B=Math.max(0,Math.min(1,f-N)),E=B>0&&B<1,P=n.jsxs("span",{className:"rating__star-wrap",children:[n.jsx(Ue,{icon:"star",size:g,className:"rating__star rating__star--empty"}),B>0&&n.jsx("span",{className:`rating__star-fill${E?" rating__star-fill--half":""}`,style:E?{width:`${B*100}%`}:void 0,children:n.jsx(Ue,{icon:"star",size:g,className:"rating__star rating__star--filled"})})]});return d?n.jsx("span",{className:"rating__item","aria-hidden":"true",children:P},_):n.jsx("button",{type:"button",className:"rating__item rating__item--interactive",role:"radio","aria-checked":m===_,"aria-label":c("rating.starLabel",{n:_}),"data-star":_,tabIndex:_===v?0:-1,onClick:()=>h(_),onMouseEnter:()=>w(_),children:P},_)})})}const f4=20,C4=["#499cdf","#4dcdc0","#2fae9e","#e6b94e","#d9534f","#e06b68","#bfc7d1"];function g4({value:e,onChange:t,palette:a=C4,size:r=40,className:s="",ariaLabel:i}){const{t:l}=be.useTranslation();return n.jsx("div",{className:`color-picker ${s}`.trim(),role:"group","aria-label":i,children:a.map(c=>{const d=e?.toLowerCase()===c.toLowerCase();return n.jsx("button",{type:"button",className:`color-picker__swatch color-picker__swatch--${r}`,style:{backgroundColor:c},onClick:()=>t(c),"aria-pressed":d,"aria-label":d?`${c} ${l("colorPicker.selected","\uC120\uD0DD\uB428")}`:c,children:d&&n.jsx(Ue,{icon:"check",size:f4,className:"color-picker__check"})},c)})})}function jl({icon:e,label:t,tooltip:a,wrapperStyle:r,color:s,bgColor:i,useHover:l=!0,iconSize:c="medium"}){const d=c==="small",u=De("category-icon",d?"category-icon--small":""),p=d?16:20,m=o.useRef(null),[f,g]=o.useState(!1),y=o.useMemo(()=>{const k=r&&typeof r=="object"?{...r}:{};return!s&&!i?k:{...k,...s?{color:s,"--t-item-fg":s}:{},...i?{"--t-item-bg":i}:{}}},[r,s,i]),h=a||t,[w,C]=o.useState(null);o.useLayoutEffect(()=>{f&&C(m.current?.getBoundingClientRect()??null)},[f]),o.useEffect(()=>{if(!l&&f)try{g(!1)}catch{}},[l,f]),o.useEffect(()=>{if(!f)return;const k=N=>{const _=m.current;if(!_)return;const B=N.target;B&&!_.contains(B)&&g(!1)};return document.addEventListener("pointerdown",k,!0),()=>document.removeEventListener("pointerdown",k,!0)},[f]);const b=o.useCallback(()=>{l&&g(!0)},[l]),x=o.useCallback(()=>{l&&g(!1)},[l]),v=o.useCallback(()=>g(!1),[]),A=o.useCallback(k=>{if(k.key==="Escape"){g(!1);return}(k.key==="Enter"||k.key===" ")&&(k.preventDefault(),g(N=>!N))},[]);return n.jsxs("span",{ref:m,className:"category-icon__wrap",onPointerEnter:b,onPointerLeave:x,onFocus:b,onBlur:x,onKeyDown:A,role:"button",tabIndex:0,"aria-label":typeof h=="string"?h:void 0,"aria-haspopup":!!h,"aria-expanded":f,"data-tooltip-ignore":!0,children:[n.jsx(Ue,{icon:e,label:t,className:u,imgClassName:"category-icon__image",maskClassName:"category-icon__mask",svgClassName:"category-icon__svg",wrapperStyle:y,size:p}),f&&h&&n.jsx(gn,{anchorRect:w,text:typeof h=="string"?h:void 0,offset:8,onClose:v,className:"category-icon__tooltip",ariaLabel:typeof h=="string"?h:void 0})]})}let En=null;function Ga(e){if(En&&En!==e)try{En()}catch{}return En=e,()=>{En===e&&(En=null)}}function Ka(e){if(En===e){En=null;try{e()}catch{}}}function b4(e,t){if(!e)return{previewCodes:[],previewBucket:null};const a=e,r=l=>l.map(c=>c?.contextCode||c?.context_code).filter(Boolean).map(String);if(t==="LISTEN_IN_NOISE"){const l=a.sentences||a.items||[],c=Array.isArray(l)&&l.length>0?r(l):[];return c.length===0&&(a.contextCode||a.context_code)&&c.push(String(a.contextCode||a.context_code)),{previewCodes:c,previewBucket:"LIN_D"}}if(t==="SHORT_STORY"){const l=a.items||a.sentences||[],c=Array.isArray(l)&&l.length>0?r(l):[];return c.length===0&&(a.contextCode||a.context_code)&&c.push(String(a.contextCode||a.context_code)),{previewCodes:c,previewBucket:"SHORT_S"}}if(t==="LONG_STORY"){const l=a.items||a.sentences||[],c=Array.isArray(l)&&l.length>0?r(l):[];return c.length===0&&(a.contextCode||a.context_code)&&c.push(String(a.contextCode||a.context_code)),{previewCodes:c,previewBucket:"LONG"}}if(t==="ORDERING_SENTENCE"){const l=a.sentences||a.items||[],c=Array.isArray(l)&&l.length>0?r(l):[];return c.length===0&&(a.contextCode||a.context_code)&&c.push(String(a.contextCode||a.context_code)),{previewCodes:c,previewBucket:"LIN_D"}}const s=a.sentences||a.items||[],i=r(Array.isArray(s)?s:[]);return i.length===0&&(a.contextCode||a.context_code)&&i.push(String(a.contextCode||a.context_code)),{previewCodes:i,previewBucket:null}}function y4(e,t){const[a,r]=o.useState(!1),[s,i]=o.useState(-1),[l,c]=o.useState({key:"",urls:[]}),d=o.useRef(null),u=o.useRef(!1),p=o.useRef(null),m=o.useRef(null),[f,g]=o.useState(!1),y=o.useRef([]),{previewCodes:h,previewBucket:w}=b4(e,t),C=`${h.join(",")}|${w??""}`,b=o.useMemo(()=>l.key===C?l.urls:[],[l,C]);o.useEffect(()=>{if(!h.length)return;let v=!1;return(async()=>{const A=[],k=[];for(const N of h)try{const _=zs(N,w);if(!_){A.push("");continue}let B=null;try{B=await Vs(_)}catch{}if(!B)try{const E=await Ws(_);E&&(B=URL.createObjectURL(E),k.push(B))}catch{}A.push(B??"")}catch{A.push("")}v?k.forEach(N=>{try{URL.revokeObjectURL(N)}catch{}}):(y.current.forEach(N=>{try{URL.revokeObjectURL(N)}catch{}}),y.current=k,c({key:C,urls:A}))})(),()=>{v=!0}},[h.join(","),w]),o.useEffect(()=>()=>{y.current.forEach(v=>{try{URL.revokeObjectURL(v)}catch{}}),y.current=[]},[]);const x=o.useCallback(async v=>{if(v.stopPropagation(),v.preventDefault(),u.current){p.current&&Ka(p.current),u.current=!1;try{d.current?.pause()}catch{}r(!1),i(-1);return}if(!b.filter(Boolean).length)return;let A=null;const k=()=>{u.current=!1;try{d.current?.pause()}catch{}A?.()};p.current=k;const N=Ga(k);u.current=!0,r(!0);for(let _=0;_<b.length&&u.current;_++){const B=b[_];if(B){i(_);try{await new Promise((E,P)=>{A=E;const H=new Audio(B);d.current=H,H.onended=()=>E(),H.onerror=()=>P(),H.play().catch(P)})}catch{break}}}N(),p.current===k&&(p.current=null,u.current=!1,r(!1),i(-1))},[b]);return o.useEffect(()=>()=>{p.current&&Ka(p.current),u.current=!1;try{d.current?.pause()}catch{}d.current=null},[]),{playing:a,playingIndex:s,previewUrls:b,previewHover:f,setPreviewHover:g,previewBtnRef:m,handlePreview:x}}const v4=e=>{if(!e)return[];const t=typeof e.context=="string"&&e.context.trim()||typeof e.sentence=="string"&&e.sentence.trim()||typeof e.text=="string"&&e.text.trim()||"";if(t)return[String(t)];const a=e.sentences||e.items||e.questions||[];return Array.isArray(a)&&a.length>0?a.map(r=>{if(typeof r=="string")return r;if(r&&typeof r=="object"){const s=r;return s.sentence||s.text||s.context||s.question||s.title||""}return""}).filter(r=>typeof r=="string"&&r.trim().length>0).map(r=>r.trim()):[]};function ao(e){const{index:t,type:a,trainingData:r,ariaLabel:s,depth:i,renderPopup:l,completed:c,completedIds:d,selectedIds:u,tooltipText:p,useDescriptionTooltip:m=!1,onRemove:f,hideCheckBadge:g=!1,showTypeLabel:y=!1,onComplete:h,onSelect:w,onMore:C,countLabelOverride:b,size:x="square"}=e||{},{t:v}=be.useTranslation(),[A,k]=o.useState(!1),N=o.useRef(null),[_,B]=o.useState(!1);o.useEffect(()=>{N.current?.matches(":hover")&&B(!0)},[]);const{playing:E,playingIndex:P,previewUrls:H,previewHover:S,setPreviewHover:V,previewBtnRef:j,handlePreview:M}=y4(r,a?.key),I=o.useCallback(()=>{w?w():k(!0)},[w]),G=o.useCallback(()=>k(!1),[]),Q=o.useCallback(()=>B(!0),[]),z=o.useCallback(()=>B(!1),[]),q=o.useCallback(()=>V(!0),[V]),W=o.useCallback(()=>V(!1),[V]),[L,D]=o.useState(null);o.useLayoutEffect(()=>{S&&D(j.current?.getBoundingClientRect()??null)},[S,j]);const[F,R]=o.useState(null);o.useLayoutEffect(()=>{_&&!A&&m&&R(N.current?.getBoundingClientRect()??null)},[_,A,m]);const O=o.useCallback(se=>{se.target===se.currentTarget&&(se.key==="Enter"||se.key===" ")&&(se.preventDefault(),I())},[I]),$=r||null,Y=o.useMemo(()=>{if(!m)return null;const se=p?(Array.isArray(p)?p:[p]).filter(Boolean):null,Ie=se&&se.length>0?se:v4($);return Ie&&Ie.length>0?Ie:null},[m,p,$]),ee=o.useCallback(se=>{se.stopPropagation(),f?.()},[f]),Z=o.useCallback(se=>se.stopPropagation(),[]),ae=o.useCallback(se=>{typeof h=="function"&&h(se)},[h]),_e=c||(d&&r?.id!=null?d.has(String(r.id)):!1),re=!_e&&(u!=null&&r?.id!=null?u.has(String(r.id)):!1);el("speechear.popup.close",G);const ue=di(),U=`${a?.label||""} ${t+1}`,oe=$?.title||$?.name||U;let de=a?.icon,ve,ge="",Se="";try{const se=$?.category_0||$?.category_main_code||$?.category_main,Ie=$?.category_1||$?.category_sub_code||$?.category_sub,ze=ue.find(Ge=>Ge.key===se);ze?.icon&&(de=ze.icon),!ve&&ze?.color&&(ve={"--t-item-fg":ze.color}),!ve&&$?.iconColor&&(ve={"--t-item-fg":$.iconColor}),ge=ze?v(`topic.${ze.key}`,{defaultValue:ze.label||""}):"";try{const Ge=ze?.subs?.find(Ze=>Ze.key===Ie);Se=Ge?v(`topic.sub.${Ge.key}`,{defaultValue:Ge.label||""}):""}catch{}}catch{}const Ce=Se?`${ge} / ${Se}`:ge||a?.label||oe,Ee=se=>v("training.countQuestions",{n:se}),Be=se=>v("training.countSentences",{n:se});let Re="";try{if($)if(a?.key==="LISTEN_IN_NOISE"){let se=0;Array.isArray($.items)&&$.items.length>0?se=$.items.length:Array.isArray($.sentences)&&$.sentences.length>0?se=$.sentences.length:$.sentences&&(se=1),Re=Be(se)}else if(a?.key==="SHORT_STORY"){let se=1;Array.isArray(r?.items)?se=r.items.length:Array.isArray(r?.raw&&r.raw?.items)?se=r.raw.items.length:Array.isArray($?.questions)?se=$.questions.length:Array.isArray($?.sentences)&&(se=$.sentences.length),Re=Ee(se)}else if(a?.key==="LONG_STORY"){let se=1;if(Array.isArray($.items)&&$.items.length>0){const Ie=$.items.reduce((ze,Ge)=>{const Ze=Ge.questionItems;return Array.isArray(Ze)?ze+Ze.length:Array.isArray(Ge.questions)?ze+Ge.questions.length:ze},0);se=Ie>0?Ie:$.items.length}else Array.isArray($.questions)&&$.questions.length>0?se=$.questions.length:Array.isArray($.sentences)&&$.sentences.length>0&&(se=$.sentences.length);Re=Ee(se)}else if(a?.key==="ORDERING_SENTENCE"){let se=1;Array.isArray($.items)&&$.items.length>0?se=$.items.length:Array.isArray($.sentences)&&$.sentences.length>0&&(se=$.sentences.length),Re=Be(se)}else Array.isArray($.items)&&(Re=$.items.length>0?Ee($.items.length):"")}catch{}const Le=x==="row",me=x==="list"||Le,ke=x==="compact",Me=x==="small",Te=Me&&a?.key?P2().find(se=>se.key===a.key):void 0,Ae=Te?pi[Te.key]:void 0,ie=Te?Ae?v(`trainingType.${Ae}.title`,{defaultValue:Te.label}):Te.label??"":"",ye=!!y&&!!a?.label&&a.label!==String(oe)||Me&&!!ie&&ie!==String(oe);return n.jsxs(n.Fragment,{children:[n.jsxs("div",{ref:N,className:`training-block-button${me?" training-block-button--list":""}${Le?" training-block-button--row":""}${ke?" training-block-button--compact":""}${Me?" training-block-button--small":""}${_e?" training-block-button--completed":""}${re?" training-block-button--selected":""}${ye&&!Me?" training-block-button--withType":""}${Me&&!ye?" training-block-button--no-type-label":""}`,onClick:I,onPointerEnter:Q,onPointerLeave:z,role:"button",tabIndex:0,onKeyDown:O,"aria-label":typeof s=="string"?s:typeof oe=="string"?oe:void 0,title:!m&&p&&(Array.isArray(p)?p.filter(Boolean).join(`
|
|
853
|
+
`):p)||void 0,children:[n.jsxs("div",{className:"training-block-button__left",children:[y&&a?.label&&a.label!==String(oe)&&n.jsx("span",{className:"training-block-button__type-label caption-1",children:a.label}),Me&&ie&&ie!==String(oe)&&n.jsx("span",{className:"training-block-button__type-label caption-2",children:ie}),n.jsx(jl,{icon:de,label:oe,tooltip:Ce,wrapperStyle:ve,iconSize:Me||ke?"small":"medium"}),!g&&(_e||re)&&!(f&&_)&&n.jsx(ft,{className:f?"training-block-button__check--removable":void 0,type:"dot",icon:"check",position:"top-left",size:"medium","aria-label":_e?v("training.completed","\uD6C8\uB828 \uC644\uB8CC"):v("training.selected","\uC120\uD0DD\uB428")}),f&&n.jsx(ft,{className:`training-block-button__remove${_?" is-hover":""}`,type:"dot",icon:"remove",position:"top-left",size:"medium","aria-label":v("common.remove","\uC81C\uAC70"),onClick:ee}),n.jsx("div",{className:`training-block-button__title ${ke?"body-3":Me?"body-3b":"h3"}`,children:String(oe)}),n.jsxs("div",{className:"training-block-button__description",children:[(()=>{const se=b!==void 0?b:Re;return se?n.jsx("div",{className:`training-block-button__count ${Me?"caption-2":"caption-1"}`,children:se}):null})(),n.jsx("div",{className:"training-block-button__chevron",children:n.jsx(Ue,{icon:"chevron-right",label:v("training.next","\uB2E4\uC74C"),className:"training-block-button__chevron-icon",imgClassName:"training-block-button__chevron-icon-image",maskClassName:"training-block-button__chevron-icon-mask",svgClassName:"training-block-button__chevron-icon-svg",size:Me?12:20})})]}),(me&&!Le||Me)&&H.length>0&&n.jsx("div",{ref:j,className:"training-block-button__preview","data-tooltip-ignore":!0,onClick:Z,onPointerEnter:q,onPointerLeave:W,children:n.jsx(pe,{htmlType:"button",size:Me?28:32,type:"dot",icon:E?"pause":"play",variant:Me?"transparent-lightGray":"default",useBorder:!1,selected:E,ariaLabel:E?v("training.stop","\uC815\uC9C0"):v("training.preview","\uBBF8\uB9AC \uB4E3\uAE30"),onClick:M})})]}),C&&n.jsx("div",{className:"training-block-button__more","data-tooltip-ignore":!0,onClick:se=>{se.stopPropagation(),C(se)},children:n.jsx(pe,{htmlType:"button",size:40,type:"dot",icon:"more-horizontal",variant:"transparent-lightGray",useBorder:!1,ariaLabel:v("common.more","\uB354\uBCF4\uAE30")})})]}),S&&n.jsx(gn,{anchorRect:L,text:E?v("training.stop","\uC815\uC9C0"):v("training.preview","\uBBF8\uB9AC \uB4E3\uAE30"),offset:8,onClose:W}),_&&!A&&m&&(Y?n.jsx(Fn,{anchorRect:F,items:Y,activeIndex:P,onClose:z}):$?.subTitle?n.jsx(gn,{anchorRect:F,text:$.subTitle,offset:8,onClose:z}):null),A&&l&&l({trainingData:$,typeKey:a?.key??"",onClose:G,onComplete:ae,popupTitle:String(oe),popupSubTitle:a?.subTitle,depth:i!=null?String(i):void 0,popupIcon:de,popupIconTooltip:String(Ce),popupWrapperStyle:ve})]})}const Tl=200;function x4(e){return e.itemId?(z2()[e.trainingType]??[]).find(t=>t?.id!=null&&String(t.id)===String(e.itemId))??null:null}function Ml({plan:e,anchorRect:t,offset:a=12,onClose:r}){const{t:s}=be.useTranslation(),i=o.useMemo(()=>W2(s).map(c=>({type:c,items:(e.items??[]).filter(d=>d.trainingType===c.key)})).filter(c=>c.items.length>0),[e.items,s]);if(i.length===0)return null;const l=n.jsx("div",{className:"tooltip-training__box",children:n.jsx("div",{className:"tooltip-training__groups",children:i.flatMap(({type:c,items:d},u)=>[u>0?n.jsx("div",{className:"tooltip-training__divider"},`div-${c.key}`):null,n.jsxs("div",{className:"tooltip-training__section",children:[n.jsx("div",{className:"tooltip-training__section-header",children:n.jsx("span",{className:"tooltip-training__type-label body-3b",children:c.label})}),n.jsx("div",{className:"tooltip-training__items",children:d.map((p,m)=>{const f=x4(p);return f?n.jsx(ao,{index:m,type:c,trainingData:f,size:"compact",hideCheckBadge:!0},p.itemId??m):null})})]},c.key)])})});return t?n.jsx(Qt,{anchorRect:t,offset:a,onClose:r,closeOnOutsideClick:!1,className:"tooltip-training",ariaLabel:s("tooltip.training","\uD6C8\uB828 \uC548\uB0B4"),children:l}):l}const _4=200;function w4({icon:e,count:t,title:a,plan:r,tooltip:s=!0,className:i="",onClick:l,onMouseEnter:c,onMouseLeave:d}){const u=De("count-tile",l&&"count-tile--clickable",i),p=o.useRef(null),[m,f]=o.useState(null),g=o.useRef(null),y=o.useRef(null),h=!!(m&&r&&s),w=o.useCallback(()=>{g.current&&(clearTimeout(g.current),g.current=null),y.current&&(clearTimeout(y.current),y.current=null)},[]),C=o.useCallback(()=>{w(),f(null)},[w]),b=o.useCallback(()=>{!s||!r||(w(),g.current=setTimeout(()=>{g.current=null,f(p.current?.getBoundingClientRect()??null)},Tl))},[s,r,w]),x=o.useCallback(()=>{g.current&&(clearTimeout(g.current),g.current=null),!y.current&&(y.current=setTimeout(()=>{y.current=null,f(null)},_4))},[]);return o.useEffect(()=>()=>{w()},[w]),o.useEffect(()=>{(!s||!r)&&C()},[s,r,C]),o.useEffect(()=>{if(!h)return;const v=k=>k instanceof Element&&(p.current?.contains(k)||!!k.closest(".tooltip-training")),A=k=>{v(k.target)?w():x()};return document.addEventListener("pointerover",A,!0),()=>document.removeEventListener("pointerover",A,!0)},[h,w,x]),n.jsxs(n.Fragment,{children:[n.jsxs("div",{ref:p,className:u,onClick:l?v=>{C(),l(v)}:void 0,onKeyDown:l?v=>{v.key!=="Enter"&&v.key!==" "||(v.preventDefault(),v.currentTarget.click())}:void 0,onPointerEnter:v=>{v.pointerType==="touch"||v.pointerType==="pen"?C():b()},onMouseEnter:c,onMouseLeave:v=>{x(),d?.(v)},role:l?"button":"img",tabIndex:l?0:void 0,"aria-label":`${a} ${t}`,children:[n.jsx(Ue,{icon:e,size:20,className:"count-tile__icon"}),n.jsx("span",{className:"count-tile__count h5","aria-hidden":"true",children:t})]}),m&&r&&n.jsx(Ml,{plan:r,anchorRect:m,onClose:C})]})}let Ba=0,Ll="",ro="",Na=0;function $l(){return Rl(!1)}function k4(){return Rl(!0)}function Rl(e){const t=typeof document<"u";Ba===0&&t&&(Ll=document.body.style.overflow,document.body.style.overflow="hidden"),e&&t&&(Na===0&&(ro=document.body.style.paddingRight),Na++,document.body.style.paddingRight="0px"),Ba++;let a=!1;return()=>{a||(a=!0,Ba=Math.max(0,Ba-1),e&&t&&(Na=Math.max(0,Na-1),Na===0&&(ro?document.body.style.paddingRight=ro:document.body.style.removeProperty("padding-right"))),Ba===0&&t&&(document.body.style.overflow=Ll))}}function A4(){return n.jsx("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round","aria-hidden":!0,children:n.jsx("path",{d:"M6 6l12 12M18 6 6 18"})})}function B4({open:e,onClose:t,ariaLabel:a,title:r,children:s,size:i="md",closeOnBackdrop:l=!0,closeOnEscape:c=!0,showClose:d=!0,className:u,contentClassName:p}){const{t:m}=be.useTranslation(),f=o.useId(),g=o.useRef(null),y=o.useCallback(()=>t(),[t]);o.useEffect(()=>{if(!e)return;const b=document.activeElement,x=$l(),v=g.current;return Fr(v,b),v?.focus(),()=>{x();const A=document.activeElement;(!A||A===document.body||v&&v.contains(A))&&Or(b)?.focus?.()}},[e]);const h=o.useRef(y),w=o.useRef(c);o.useEffect(()=>{h.current=y,w.current=c}),o.useEffect(()=>{if(e)return In(()=>{w.current&&h.current()})},[e]);const C=o.useRef(!1);return Pr(g,e),!e||typeof document>"u"?null:Ut.createPortal(n.jsx("div",{className:De("dialog",u),onPointerDown:l?b=>{C.current=b.target===b.currentTarget}:void 0,onMouseDown:b=>{b.target===b.currentTarget&&b.preventDefault()},onClick:l?b=>{const x=C.current;C.current=!1,x&&b.target===b.currentTarget&&y()}:void 0,children:n.jsxs("div",{ref:g,role:"dialog","aria-modal":"true","aria-label":r?void 0:a,"aria-labelledby":r?f:void 0,tabIndex:-1,className:De("dialog__surface",`dialog__surface--${i}`,p),onClick:b=>b.stopPropagation(),children:[r?n.jsx("div",{className:"dialog__header",children:n.jsx("h2",{id:f,className:"dialog__title h4b",children:r})}):null,d?n.jsx("button",{type:"button",className:"dialog__close","aria-label":m("common.close","\uB2EB\uAE30"),onClick:y,children:n.jsx(A4,{})}):null,n.jsx("div",{className:"dialog__body",children:s})]})}),document.body)}function N4({columns:e,rows:t,rowKey:a,title:r,toolbar:s,empty:i,loading:l,caption:c,className:d=""}){const{t:u}=be.useTranslation(),p=!l&&t.length===0;return n.jsxs("div",{className:De("board",d),children:[r||s?n.jsxs("div",{className:"board__head",children:[r?n.jsx("h2",{className:"board__title",children:r}):n.jsx("span",{}),s?n.jsx("div",{className:"board__toolbar",children:s}):null]}):null,n.jsxs("table",{className:"board__table",children:[c?n.jsx("caption",{className:"board__caption",children:c}):null,n.jsx("thead",{children:n.jsx("tr",{children:e.map(m=>n.jsx("th",{scope:"col",className:De("board__th",`board__cell--${m.headerAlign??m.align??"left"}`),style:m.width?{width:m.width}:void 0,children:m.header},m.key))})}),n.jsx("tbody",{children:l?n.jsx("tr",{children:n.jsx("td",{className:"board__state",colSpan:e.length,children:l})}):p?n.jsx("tr",{children:n.jsx("td",{className:"board__state",colSpan:e.length,children:i??u("board.empty","\uB4F1\uB85D\uB41C \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.")})}):t.map((m,f)=>n.jsx("tr",{className:"board__row",children:e.map(g=>n.jsx("td",{className:De("board__td",`board__cell--${g.align??"left"}`),children:g.render(m,f)},g.key))},a(m,f)))})]})]})}function E4({name:e,role:t,photo:a,media:r,credentials:s,size:i=190,className:l=""}){return n.jsxs("div",{className:De("person-card",l),children:[n.jsx("div",{className:"person-card__photo",style:{width:i,height:i},children:r??(a?n.jsx("img",{src:a,alt:t?`${e} ${t}`:e}):null)}),n.jsx("h3",{className:"person-card__name",children:e}),t?n.jsx("p",{className:"person-card__role",children:t}):null,s?.length?n.jsx("ul",{className:"person-card__credentials",children:s.map(c=>n.jsx("li",{children:c},c))}):null]})}function D4({groups:e,className:t=""}){return n.jsx("div",{className:De("timeline",t),children:e.map(a=>n.jsxs("section",{className:"timeline__group",children:[n.jsx("h3",{className:"timeline__title",children:a.title}),n.jsx("ul",{className:"timeline__rows",children:a.entries.map((r,s)=>n.jsxs("li",{className:"timeline__row",children:[r.label?n.jsx("span",{className:"timeline__label",children:r.label}):null,n.jsx("div",{className:"timeline__items",children:r.items.map((i,l)=>n.jsx("p",{children:i},l))})]},`${r.label??""}-${s}`))})]},a.title))})}function S4({title:e,kind:t,body:a,badge:r,badgeSrc:s,footer:i,width:l,className:c=""}){const d=r??(s?n.jsx("img",{src:s,alt:""}):null);return n.jsxs("div",{className:De("publication-card",c),style:l?{width:l,flexShrink:0}:void 0,children:[d?n.jsx("div",{className:"publication-card__badge","aria-hidden":"true",children:d}):null,n.jsx("h3",{className:"publication-card__title",children:e}),t?n.jsx("p",{className:"publication-card__kind",children:t}):null,n.jsx("p",{className:"publication-card__body",children:a}),i?n.jsx("div",{className:"publication-card__footer",children:i}):null]})}function j4({logo:e,alt:t,onDone:a,durationMs:r=3e3}){const s=ga(a);return o.useEffect(()=>{const i=setTimeout(()=>s.current?.(),r);return()=>clearTimeout(i)},[r,s]),n.jsx("div",{className:"splash-logo",style:{"--splash-logo-duration":`${r}ms`},"aria-hidden":"true",children:n.jsx("img",{src:e,alt:t,className:"splash-logo__image"})})}function T4({eyebrow:e,eyebrowIndex:t,title:a,description:r,level:s=2,tone:i="dark",className:l=""}){const c=s===1?"h1":"h2";return n.jsxs("div",{className:De("section-header",`section-header--${i}`,l),children:[e?n.jsxs("p",{className:"section-header__eyebrow",children:[t?n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"section-header__index",children:t}),n.jsx("span",{"aria-hidden":!0,className:"section-header__rule"})]}):null,e]}):null,a?n.jsx(c,{className:"section-header__title",children:a}):null,r?n.jsx("div",{className:"section-header__description",children:r}):null]})}function M4({items:e,className:t=""}){return n.jsx("ul",{className:De("company-meta",t),children:e.map((a,r)=>n.jsxs("li",{className:"company-meta__item",children:[r>0?n.jsx("span",{"aria-hidden":!0,className:"company-meta__divider",children:"|"}):null,a]},a))})}function Pl({value:e,onChange:t,suggestions:a,openOnFocus:r=!1}){const s=o.useId(),[i,l]=o.useState(!1),[c,d]=o.useState(-1),u=o.useRef(null),p=o.useMemo(()=>{if(!a.length)return[];const N=e??"";return N?a.filter(_=>_.toLowerCase().includes(N.toLowerCase())):r?a:[]},[a,e,r]),[m,f]=o.useState(!1),g=o.useRef([]),y=m&&p.length===0?g.current:p;o.useEffect(()=>{y.length&&(g.current=y)},[y]);const h=o.useCallback(()=>f(!0),[]),w=o.useCallback(()=>f(!1),[]);o.useEffect(()=>{i||d(-1)},[i]),o.useEffect(()=>()=>{u.current&&clearTimeout(u.current)},[]);const C=c<y.length?c:-1,b=o.useCallback(N=>{t?.(N),l(!1)},[t]),x=o.useCallback(()=>l(!0),[]),v=o.useCallback(()=>{l(!0),d(-1)},[]),A=o.useCallback(()=>{u.current=setTimeout(()=>l(!1),120)},[]),k=o.useCallback(N=>{N.nativeEvent.isComposing||N.keyCode===229||(N.key==="ArrowDown"?(N.preventDefault(),l(!0),d(_=>Math.min(y.length-1,(_<y.length?_:-1)+1))):N.key==="ArrowUp"?(N.preventDefault(),d(_=>Math.max(-1,(_<y.length?_:y.length)-1))):N.key==="Enter"?C>=0&&b(y[C]):N.key==="Escape"&&i&&(N.preventDefault(),l(!1)))},[y,C,i,b]);return{listId:s,open:i,activeIdx:C,filtered:y,handleFocus:x,handleBlur:A,handleInput:v,handleKeyDown:k,handleSelect:b,handleCompositionStart:h,handleCompositionEnd:w}}const oo=typeof window<"u"?o.useLayoutEffect:o.useEffect;function zn(e){const{value:t,defaultValue:a,name:r,inputRef:s,onChange:i,label:l,ariaLabel:c,required:d,placeholder:u,ghostText:p,ghostHint:m,type:f="text",disabled:g=!1,readOnly:y=!1,error:h,helperText:w,maxLength:C,size:b=48,variant:x="input",fullWidth:v=!1,newline:A=!1,multiline:k=!1,rows:N=3,leftIcon:_,rightIcon:B,clearable:E=!1,list:P,showCount:H=!0,className:S="",onFocus:V,onBlur:j,onKeyDown:M,onEnter:I,inputMode:G,autoComplete:Q,autoFocus:z,suggestions:q,openOnFocus:W=!1}=e,L=y||g?void 0:q,{t:D}=be.useTranslation(),F=o.useId();!l&&!c&&fn(`TextField:unnamed:${F}`,"[ihab/TextField] \uC774\uB984\uC774 \uC5C6\uC2B5\uB2C8\uB2E4 \u2014 label \uC774\uB098 ariaLabel \uC911 \uD558\uB098\uB97C \uC8FC\uC138\uC694. placeholder \uB294 \uC774\uB984\uC744 \uB300\uC2E0\uD558\uC9C0 \uBABB\uD569\uB2C8\uB2E4.");const R=`tf-${F}`,O=`tf-helper-${F}`,$=o.useRef(null),Y=Pl({value:t??"",onChange:i,suggestions:L??[],openOnFocus:W}),ee=!!L&&Y.open&&Y.filtered.length>0,Z=o.useRef(null),[ae,_e]=o.useState(null),re=o.useCallback(()=>{const Ae=Z.current;if(!Ae||typeof window>"u")return;const ie=Ae.getBoundingClientRect(),ye=230,se=window.innerHeight-ie.bottom<ye+8&&ie.top>ye+8;_e({position:"fixed",left:ie.left,width:ie.width,...se?{bottom:window.innerHeight-ie.top+8}:{top:ie.bottom+8},zIndex:va(Ae)})},[]);oo(()=>{if(!ee)return;re();const Ae=ie=>{const ye=ie.target;ye&&ye.nodeType===1&&ye.closest?.(".text-field__suggestions")||re()};return window.addEventListener("scroll",Ae,!0),window.addEventListener("resize",re),()=>{window.removeEventListener("scroll",Ae,!0),window.removeEventListener("resize",re)}},[ee,re]);const ue=o.useCallback(Ae=>{$.current=Ae,typeof s=="function"?s(Ae):s&&(s.current=Ae)},[s]),U=p?`${p}${m??D("wordTable.save.autoFillHint"," (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)")}`:u,oe=t!==void 0,de=oe&&f==="password",[ve,ge]=o.useState((a??"").length),Se=oe?(t??"").length:ve,Ce=o.useRef(t);oo(()=>{Ce.current=t}),o.useEffect(()=>{const Ae=$.current;if(!de||!Ae)return;const ie=t??"";Ae.value!==ie&&(Ae.value=ie)},[de,t]),o.useEffect(()=>{if(!A||!$.current)return;const Ae=$.current;Ae.style.height="",Ae.scrollHeight>Ae.clientHeight&&(Ae.style.height=`${Ae.scrollHeight}px`)},[t,ve,A]);const Ee=C!=null&&Se>C,Be=b===32?16:20,Re=De("text-field",`text-field--s${b}`,x==="display"?"text-field--display":"",v?"text-field--full-width":"",g?"text-field--disabled":"",y?"text-field--readonly":"",h?"text-field--error":"",_?"text-field--has-left-icon":"",B||E?"text-field--has-right-icon":"",S),Le={id:R,...de?{}:oe?{value:t}:{defaultValue:a},ref:ue,placeholder:U,name:r,disabled:g,readOnly:y,autoFocus:z,maxLength:C,list:P,inputMode:G,autoComplete:Q,"aria-label":!l&&c?c:void 0,"aria-required":d,"aria-invalid":!!h,"aria-describedby":w||h?O:void 0,role:L?"combobox":void 0,"aria-autocomplete":L?"list":void 0,"aria-haspopup":L?"listbox":void 0,"aria-expanded":L?Y.open:void 0,"aria-controls":ee?Y.listId:void 0,"aria-activedescendant":ee&&Y.activeIdx>=0?`${Y.listId}-option-${Y.activeIdx}`:void 0,onChange:Ae=>{const ie=Ae.target;oe||ge(ie.value.length),i?.(ie.value),L&&Y.handleInput(),de&&queueMicrotask(()=>{const ye=Ce.current??"";ie.value!==ye&&(ie.value=ye)})},onCompositionStart:L?Y.handleCompositionStart:void 0,onCompositionEnd:L?Y.handleCompositionEnd:void 0,onFocus:(Ae=>{V?.(Ae),L&&Y.handleFocus()}),onBlur:(Ae=>{j?.(Ae),L&&Y.handleBlur()}),onKeyDown:(Ae=>{const ie=(Ae.key==="Tab"&&!Ae.shiftKey||Ae.key===" ")&&!Ae.nativeEvent.isComposing;if(p&&ie&&!y&&!g&&!(Ae.currentTarget.value??"").trim()){Ae.preventDefault();const ye=Ae.currentTarget;oe||(ye.value=p,ge(p.length)),i?.(p);return}L&&Ae.key==="Enter"&&!Ae.nativeEvent.isComposing&&Y.activeIdx>=0?Ae.preventDefault():I&&Ae.key==="Enter"&&!Ae.nativeEvent.isComposing&&(Ae.preventDefault(),I()),M?.(Ae),L&&Y.handleKeyDown(Ae)})},me=E&&!g&&!y&&Se>0,ke=()=>A?n.jsx("textarea",{...Le,className:"text-field__input text-field__input--auto body-2",rows:1}):k?n.jsx("textarea",{...Le,className:"text-field__input text-field__input--textarea body-2",rows:N}):n.jsx("input",{...Le,type:f,className:"text-field__input body-2"}),Me=x==="display"&&!A&&!k&&!!U,Te=()=>n.jsxs(n.Fragment,{children:[ke(),Me&&n.jsx("span",{className:"text-field__placeholder","aria-hidden":"true",children:U})]});return n.jsxs("div",{ref:Z,className:Re,children:[l&&n.jsxs("label",{htmlFor:R,className:"text-field__label caption-1",children:[l,d&&n.jsx("span",{className:"text-field__required",children:"*"})]}),n.jsxs("div",{className:"text-field__wrap",children:[_&&n.jsx("span",{className:"text-field__icon text-field__icon--left",children:n.jsx(Ue,{icon:_,label:"",className:"",svgClassName:"text-field__icon-svg",size:Be})}),Te(),C!=null&&H&&n.jsxs("span",{className:`text-field__count caption-2${Ee?" text-field__count--over":""}`,children:[Se,"/",C]}),me&&n.jsx(pe,{size:24,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,className:"text-field__clear",ariaLabel:D("textField.clearAriaLabel","\uC785\uB825\uAC12 \uC9C0\uC6B0\uAE30"),htmlType:"button",onMouseDown:Ae=>{Ae.preventDefault()},onClick:()=>{!oe&&$.current&&($.current.value="",ge(0)),i?.("")},tabIndex:-1}),B&&!me&&n.jsx("span",{className:"text-field__icon text-field__icon--right",children:n.jsx(Ue,{icon:B,label:"",className:"",svgClassName:"text-field__icon-svg",size:Be})})]}),ee&&(typeof document>"u"?null:Ut.createPortal(n.jsx("ul",{id:Y.listId,className:"text-field__suggestions",role:"listbox",style:ae??{position:"fixed",visibility:"hidden"},"data-tooltip-ignore":!0,children:Y.filtered.map((Ae,ie)=>n.jsx("li",{id:`${Y.listId}-option-${ie}`,role:"option","aria-selected":ie===Y.activeIdx,className:`text-field__suggestion body-2${ie===Y.activeIdx?" is-active":""}`,onMouseDown:ye=>ye.preventDefault(),onClick:()=>{Y.handleSelect(Ae),$.current?.focus()},children:Ae},`${Ae}-${ie}`))}),document.body)),(w||h)&&n.jsx("div",{className:"text-field__footer",children:n.jsx("span",{id:O,className:"text-field__helper caption-1",role:h?"alert":void 0,children:h||w})})]})}function tn({options:e,value:t,onChange:a,placeholder:r,disabled:s=!1,block:i=!1,size:l=48,error:c=!1,className:d="",ariaLabel:u,ariaDescribedBy:p}){const{t:m}=be.useTranslation(),f=r??m("dropdown.placeholder","\uC120\uD0DD"),g=o.useId(),y=o.useId(),h=o.useRef(null),w=o.useCallback((j,M)=>{const I=window.innerHeight-j.bottom<260&&j.top>260;return{position:"fixed",left:j.left,minWidth:j.width,...I?{bottom:window.innerHeight-j.top+6}:{top:j.bottom+6},zIndex:va(M)}},[]),{open:C,setOpen:b,toggle:x,style:v,triggerRef:A,menuRef:k}=xa({computeStyle:w}),[N,_]=o.useState(-1),B=o.useCallback(()=>_(-1),[]),E=e.find(j=>j.value===t);o.useEffect(()=>{if(C){const j=e.findIndex(M=>M.value===t);_(j>=0?j:e.length?0:-1),requestAnimationFrame(()=>{const M=k.current;if(!M)return;const I=M.querySelectorAll(".dropdown__option")[j];I&&(M.scrollTop=Math.max(0,I.offsetTop-M.clientHeight/2+I.clientHeight/2))})}},[C]),o.useEffect(()=>{C&&_(j=>{if(j>=0&&j<e.length)return j;const M=e.findIndex(I=>I.value===t);return M>=0?M:e.length?0:-1})},[C,e.length]);const P=o.useCallback(()=>{s||x()},[s,x]),H=o.useCallback(j=>{j.disabled||s||(j.value!==t&&a?.(j.value),b(!1))},[a,b,s,t]);o.useEffect(()=>{s&&b(!1)},[s,b]);const S=o.useCallback(j=>{if(!s){if(!C){(j.key==="Enter"||j.key===" "||j.key==="ArrowDown")&&(j.preventDefault(),b(!0));return}if(j.key==="Escape"){j.preventDefault(),b(!1);return}j.key==="ArrowDown"?(j.preventDefault(),_(M=>{let I=M+1;for(;I<e.length&&e[I].disabled;)I++;return I<e.length?I:M})):j.key==="ArrowUp"?(j.preventDefault(),_(M=>{let I=M-1;for(;I>=0&&e[I].disabled;)I--;return I>=0?I:M})):(j.key==="Enter"||j.key===" ")&&(j.preventDefault(),e[N]?H(e[N]):b(!1))}},[s,C,e,N,H,b]),V=C?n.jsx("div",{ref:k,id:g,className:"dropdown__menu","data-tooltip-ignore":!0,role:"listbox",style:v,onMouseLeave:B,onMouseDown:j=>j.preventDefault(),children:e.map((j,M)=>n.jsxs("button",{id:`${g}-option-${M}`,type:"button",role:"option","aria-selected":j.value===t,className:De("dropdown__option body-2",j.value===t?"dropdown__option--active":"",M===N?"dropdown__option--active":"",j.disabled?"dropdown__option--disabled":""),onMouseDown:I=>I.preventDefault(),onClick:()=>H(j),onMouseEnter:()=>_(M),disabled:j.disabled,children:[n.jsx("span",{className:"dropdown__option-check",children:j.value===t&&n.jsx("svg",{viewBox:"0 0 14 14",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:n.jsx("polyline",{points:"2 7 5.5 10.5 12 3.5"})})}),j.label]},j.value))}):null;return n.jsxs("div",{ref:h,className:De("dropdown",`dropdown--s${l}`,C?"dropdown--open":"",i?"dropdown--block":"",c?"dropdown--error":"",d),onKeyDown:S,children:[n.jsxs("button",{ref:A,type:"button",className:"dropdown__trigger","aria-haspopup":"listbox","aria-expanded":C,"aria-controls":C?g:void 0,"aria-activedescendant":C&&N>=0?`${g}-option-${N}`:void 0,"aria-label":u,"aria-describedby":[u&&E?y:"",p??""].filter(Boolean).join(" ")||void 0,"aria-invalid":c||void 0,disabled:s,onClick:P,onBlur:j=>{C&&!k.current?.contains(j.relatedTarget)&&b(!1)},children:[n.jsx("span",{id:y,className:`dropdown__trigger-label body-2${E?"":" dropdown__trigger-label--placeholder"}`,children:E?E.label:f}),n.jsx("svg",{className:"dropdown__chevron",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:n.jsx("polyline",{points:"4 6 8 10 12 6"})})]}),typeof document<"u"&&Ut.createPortal(V,h.current?.closest(".ihabdevteam-core-scope")??document.body)]})}function Ya({page:e,totalPages:t,onChange:a,prevLabel:r,nextLabel:s,className:i=""}){const{t:l}=be.useTranslation(),c=r??l("common.prevPage","\uC774\uC804 \uD398\uC774\uC9C0"),d=s??l("common.nextPage","\uB2E4\uC74C \uD398\uC774\uC9C0"),u=Math.max(1,t),p=()=>a(Math.max(1,Math.min(u,e-1))),m=()=>a(Math.min(u,e+1));return n.jsxs("div",{className:De("pagination",i),children:[n.jsx(pe,{htmlType:"button",size:32,type:"dot",shape:"rounded",icon:"chevron-left",ariaLabel:c,disabled:e<=1,onClick:p}),n.jsxs("span",{className:"pagination__info body-3","aria-live":"polite","aria-atomic":"true",children:[Math.min(Math.max(1,e),u)," / ",u]}),n.jsx(pe,{htmlType:"button",size:32,type:"dot",shape:"rounded",icon:"chevron-right",ariaLabel:d,disabled:e>=t,onClick:m})]})}function xn(e){const{t}=be.useTranslation(),{options:a=[],value:r=a.find(b=>!b.disabled)?.key??a[0]?.key,onChange:s=b=>{},className:i="",size:l=40,shape:c="pill",useBG:d=!0,fullWidth:u=!1,minButtonWidth:p,ariaLabel:m}=e||{},f=o.useRef(null),g=a.filter(b=>!b.disabled),y=b=>{if(!g.length)return;const x=Math.max(0,g.findIndex(A=>A.key===r)),v=b==="first"?g[0]:b==="last"?g[g.length-1]:g[(x+b+g.length)%g.length];v&&(s(v.key),Array.from(f.current?.querySelectorAll("[data-segkey]")??[]).find(A=>A.dataset.segkey===v.key)?.focus())},h=b=>{switch(b.key){case"ArrowRight":case"ArrowDown":y(1);break;case"ArrowLeft":case"ArrowUp":y(-1);break;case"Home":y("first");break;case"End":y("last");break;default:return}b.preventDefault()},w=b=>{const x=v=>typeof v=="string"||typeof v=="number";if(!(!x(b.label)||b.count==null||b.count===!1||!x(b.count)))return`${b.label}, ${b.count}`},C=g.some(b=>b.key===r)?r:g[0]?.key;return n.jsx("div",{ref:f,onKeyDown:h,className:De("segmented-control",`segmented-control--${c}`,`segmented-control--${l}`,u&&"segmented-control--full",!d&&"segmented-control--no-bg",p!=null&&"segmented-control--min",i),style:p!=null?{"--segmented-min-button-w":`${p}px`}:void 0,role:"radiogroup","aria-label":m??t("segmentedControl.ariaLabel","\uC120\uD0DD \uD0ED"),children:a.map(b=>n.jsx(pe,{htmlType:"button",role:"radio","aria-checked":b.key===r,"data-segkey":b.key,tabIndex:b.key===C?0:-1,label:b.label,count:b.count,ariaLabel:w(b),disabled:b.disabled,className:b.key===r?"is-selected":"",onClick:()=>{b.disabled||s(b.key)},size:l,shape:c,useBorder:!1,useBG:!1},b.key))})}function so({count:e,search:t,segment:a,filters:r,pageSize:s,pagination:i,actions:l,className:c}){const{t:d}=be.useTranslation(),u=e!=null&&n.jsxs("p",{className:"toolbar__count body-1",role:"status","aria-atomic":"true",children:[e.prefix??d("common.totalPrefix","\uCD1D "),n.jsx("span",{className:"toolbar__count-highlight",children:e.value}),e.unit,e.suffix]}),p=!!(t||r?.length||s||i||l);return n.jsxs("div",{className:De("toolbar",c),children:[n.jsxs("div",{className:"toolbar__row",children:[u,a&&(Array.isArray(a)?a:[a]).map((m,f)=>n.jsx(xn,{size:40,...m},m.ariaLabel??f))]}),p&&n.jsx("div",{className:"toolbar__row",children:n.jsxs("div",{className:"toolbar__row-end",children:[t&&n.jsx(zn,{className:"toolbar__search",size:40,value:t.value,onChange:t.onChange,placeholder:t.placeholder??d("common.search","\uAC80\uC0C9"),ariaLabel:t.placeholder??d("common.search","\uAC80\uC0C9"),clearable:!0}),r?.map((m,f)=>n.jsx(tn,{size:40,options:m.options,value:m.value,onChange:m.onChange,ariaLabel:m.ariaLabel},f)),(s||i)&&n.jsxs("div",{className:"toolbar__pager",children:[s&&n.jsx(tn,{size:40,options:s.options,value:s.value,onChange:s.onChange,ariaLabel:s.ariaLabel??d("common.pageSizeSelect","\uD398\uC774\uC9C0\uB2F9 \uD45C\uC2DC \uAC1C\uC218")}),i&&n.jsx(Ya,{page:i.page,totalPages:i.total,onChange:i.onChange,prevLabel:i.prevLabel,nextLabel:i.nextLabel})]}),l]})})]})}function Il(e){return typeof e=="string"?e:typeof e=="number"?String(e):Array.isArray(e)?e.map(Il).join(""):""}function L4(e){let t=e.replace(/\r\n/g,`
|
|
854
854
|
`).replace(/\r/g,`
|
|
855
855
|
`);t=t.replace(/^\n+/,"").replace(/\n+$/,"");const a=t.split(`
|
|
856
856
|
`).map(i=>i.replace(/\t/g," ")),r=a.filter(i=>i.trim().length>0),s=r.length>0?Math.min(...r.map(i=>i.match(/^ */)?.[0].length??0)):0;return a.map(i=>i.slice(s)).join(`
|
|
857
857
|
`)}const $4=new Set(["pnpm","npm","yarn","node","git","curl","docker","cat","ls","cd","rm","mv","cp","echo","export"]),R4=/^(?:const|let|var|function|return|if|else|for|while|switch|case|break|import|from|export|class|new|try|catch|finally|throw|await|async|null|true|false|this|typeof|instanceof)\b/;function P4(e,t){let a=e;const r=[],s=/^(?:sh|bash|zsh|shell|console)$/.test(t.toLowerCase()),i=(l,c)=>r.push({type:l,content:c});for(;a.length>0;){const l=a.match(/^\s+/);if(l){i("whitespace",l[0]),a=a.slice(l[0].length);continue}if(!s&&a.startsWith("//")){const y=a.indexOf(`
|
|
858
|
-
`),
|
|
859
|
-
`),f=y===-1?a:a.slice(0,y);i("comment",f),a=a.slice(f.length);continue}const c=a.match(/^\/\*[\s\S]*?\*\//);if(c){i("comment",c[0]),a=a.slice(c[0].length);continue}const d=a.match(/^(`(?:\\.|[^`])*`|"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*')/);if(d){i("string",d[0]),a=a.slice(d[0].length);continue}const u=a.match(/^\d+(?:\.\d+)?/);if(u){i("number",u[0]),a=a.slice(u[0].length);continue}const p=a.match(R4);if(p){i("keyword",p[0]),a=a.slice(p[0].length);continue}const m=a.match(/^[A-Za-z_$][A-Za-z0-9_$-]*/);if(m){const y=m[0];i(s&&$4.has(y)?"command":"identifier",y),a=a.slice(y.length);continue}const h=a.match(/^[=+\-*/%<>!&|^~?:]+/);if(h){i("operator",h[0]),a=a.slice(h[0].length);continue}const g=a.match(/^[()[\]{};.,]/);if(g){i("punctuation",g[0]),a=a.slice(1);continue}i("other",a[0]),a=a.slice(1)}return r}function I4({children:e,language:t="bash",title:a="",showCopy:r=!0,size:s="default",className:i=""}){const{t:l}=be.useTranslation(),[c,d]=o.useState(!1),u=L4(Il(e)),p=o.useRef(null);o.useEffect(()=>()=>{p.current&&clearTimeout(p.current)},[]);const m=async()=>{try{if(!await j2(u))return;d(!0),p.current&&clearTimeout(p.current),p.current=setTimeout(()=>d(!1),2e3)}catch{}},h=P4(u,t),g=s==="small"?"caption-1":"body-3";return n.jsxs("div",{className:De("code-box",s==="small"?"code-box--small":"",i),children:[(a||r)&&n.jsxs("div",{className:"code-box__header",role:"toolbar","aria-label":l("common.codeBlock","\uCF54\uB4DC \uBE14\uB85D"),children:[n.jsx("div",{className:"code-box__title caption-1",children:a}),r&&n.jsx(pe,{htmlType:"button",className:"code-box__copy",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:c?"check":"copy",onClick:m,ariaLabel:c?l("common.copied","\uBCF5\uC0AC\uB428"):l("common.copyCode","\uCF54\uB4DC \uBCF5\uC0AC")})]}),n.jsx("pre",{className:"code-box__inner","data-lang":t,children:n.jsx("code",{children:h.map((y,f)=>n.jsx("span",{className:`code-token ${y.type} ${g}`,children:y.content},f))})})]})}const F4={position:"absolute",width:1,height:1,margin:-1,padding:0,overflow:"hidden",clipPath:"inset(50%)",whiteSpace:"nowrap",border:0};function Ea(e){const{t}=be.useTranslation(),{variant:a="spinner",size:r=24,progress:s=null,label:i}=e||{},l=i||t("loader.loading","Loading");if(a==="bar"){const d=s==null||!Number.isFinite(Number(s)),u=d?0:Math.max(0,Math.min(100,Number(s)));return n.jsx("div",{className:`loader-bar${d?" loader-bar--indeterminate":""}`,role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":d?void 0:u,"aria-label":l,children:n.jsx("div",{className:"loader-bar__inner",style:d?void 0:{width:`${u}%`}})})}const c=typeof r=="number"?`${r}px`:r;return n.jsxs("div",{className:"loader-spinner",style:{width:c,height:c},role:"status","aria-label":l,children:[n.jsx("span",{style:F4,children:l}),n.jsxs("svg",{className:"loader-spinner__svg",viewBox:"0 0 50 50",width:r,height:r,children:[n.jsx("circle",{className:"loader-spinner__bg",cx:"25",cy:"25",r:"20",fill:"none",strokeWidth:"4"}),n.jsx("circle",{className:"loader-spinner__fg",cx:"25",cy:"25",r:"20",fill:"none",strokeWidth:"4",strokeLinecap:"round"})]})]})}function Fl({checked:e,onChange:t,disabled:a=!1,label:r,ariaLabel:s,labelPosition:i="right",className:l="",id:c}){const d=r&&n.jsx("span",{className:"toggle__label body-3",children:r});return n.jsxs("label",{className:`toggle${a?" toggle--disabled":""} ${l}`.trim(),children:[i==="left"&&d,n.jsx("input",{id:c,type:"checkbox",role:"switch",checked:e,disabled:a,onChange:u=>t?.(u.target.checked),"aria-label":!r&&s?s:void 0}),n.jsx("span",{className:"toggle__slider"}),i==="right"&&d]})}function Ol({checked:e=!1,onChange:t,disabled:a,indeterminate:r,label:s,size:i="medium",className:l,title:c,ariaLabel:d}){const u=o.useRef(null),p=o.useId(),m=o.useRef(!!r);return m.current=!!r,o.useEffect(()=>{u.current&&(u.current.indeterminate=!!r)}),n.jsxs("label",{className:De("checkbox",i==="small"&&"checkbox--small",i==="large"&&"checkbox--large",a&&"checkbox--disabled",l),htmlFor:p,title:c,children:[n.jsx("input",{ref:u,id:p,type:"checkbox",className:"checkbox__input",checked:e,onChange:h=>{t?.(h.target.checked),u.current&&(u.current.indeterminate=m.current)},disabled:a,"aria-label":!s&&d?d:void 0}),n.jsx("span",{className:"checkbox__box"}),s&&n.jsx("span",{className:"checkbox__label body-3",children:s})]})}function O4({count:e,actions:t,onClear:a,clearLabel:r,visible:s,content:i,max:l}){const{t:c}=be.useTranslation(),d=s!==void 0?s:e>0,u=r??c("bulkBar.clearSelection","\uC120\uD0DD \uD574\uC81C"),p=o.useRef(null),m=o.useRef(null),h=o.useRef(null),g=o.useRef(d);o.useLayoutEffect(()=>{const b=m.current,_=g.current;if(g.current=d,d&&!_){const x=typeof document<"u"?document.activeElement:null;h.current=x&&x!==document.body&&!b?.contains(x)?x:null}else!d&&_&&b&&b.contains(document.activeElement)&&Va(b,h.current)},[d]);const[y,f]=o.useState(!1),w=o.useRef(!1),C=o.useRef(null);return o.useEffect(()=>{const b=p.current;if(!b)return;const _=N=>{w.current=N,f(N)},x=()=>{const N=b.firstElementChild??b,E=Array.from(N.children);if(E.length<2){_(!1);return}const T=E[0].offsetTop,I=E.some(F=>F.offsetTop!==T);if(!w.current){C.current=b.clientWidth,I&&_(!0);return}if(I)return;const R=E[0],V=E[E.length-1],j=V.offsetLeft+V.offsetWidth-R.offsetLeft,M=C.current;(M==null||j<=M)&&_(!1)};if(x(),typeof ResizeObserver>"u")return;const k=new ResizeObserver(x);k.observe(b);const v=b.parentElement;let B=v?.clientWidth??0;const A=new ResizeObserver(()=>{const N=v?.clientWidth??0;N!==B&&(B=N,C.current=null,x())});return v&&A.observe(v),()=>{k.disconnect(),A.disconnect()}},[i,e]),n.jsxs("div",{ref:m,className:`bulk-bar ${d?"bulk-bar--visible":""}`,inert:!d||void 0,"aria-hidden":d?void 0:!0,children:[n.jsx("span",{ref:p,className:"bulk-bar__count body-2",role:"status",children:i??n.jsx("b",{children:c("common.selectedCount",{count:e})})}),l!==void 0&&n.jsx(ft,{size:"small",fill:"soft",variant:"main",label:`${e} / ${l}`}),n.jsxs("div",{className:`bulk-bar__actions${y?" bulk-bar__actions--stacked":""}`,children:[n.jsx(pe,{htmlType:"button",size:40,label:u,onClick:a}),t.map((b,_)=>n.jsx(pe,{htmlType:"button",size:40,variant:b.variant??"default",icon:b.icon,label:b.label,onClick:b.onClick},_))]})]})}const H4=[{\uC5F4\uC1E0:"edit",icon:"edit-2",\uB2EB\uACE0\uD560\uAE4C:!0},{\uC5F4\uC1E0:"duplicate",icon:"copy",\uB2EB\uACE0\uD560\uAE4C:!1},{\uC5F4\uC1E0:"publish",icon:"book-marked",\uB2EB\uACE0\uD560\uAE4C:!1},{\uC5F4\uC1E0:"copyLink",icon:"link",\uB2EB\uACE0\uD560\uAE4C:!1},{\uC5F4\uC1E0:"remove",icon:"trash-2",\uB2EB\uACE0\uD560\uAE4C:!0}];function z4(e){const{onClose:t,className:a}=e;return n.jsx("div",{className:De("item-actions",a),children:H4.map(({\uC5F4\uC1E0:r,icon:s,\uB2EB\uACE0\uD560\uAE4C:i})=>{const l=e[r];if(!l)return null;const c=r==="publish"?l.published?l.unpublish:l.publish:l;return n.jsx(pe,{htmlType:"button",size:40,type:"dot",icon:s,ariaLabel:c.label,showTooltipInfo:c.label,onClick:()=>{i&&t(),c.onClick()}},r)})})}function Hl(e,t){const a=()=>{if(e){const[f,w]=e.split("-");return{y:+f,m:+w-1}}const[g,y]=Lr(t).split("-");return{y:+g,m:+y-1}},[r,s]=o.useState(()=>a().y),[i,l]=o.useState(()=>a().m),c=o.useRef(e);o.useEffect(()=>{if(e===c.current)return;c.current=e;const g=a();s(g.y),l(g.m)},[e]);const d=o.useRef({y:r,m:i});o.useEffect(()=>{d.current={y:r,m:i}},[r,i]);const u=o.useCallback(g=>{const y=d.current.y*12+d.current.m+g,f=Math.floor(y/12),w=y-f*12;d.current={y:f,m:w},s(f),l(w)},[]),p=o.useCallback(()=>u(-1),[u]),m=o.useCallback(()=>u(1),[u]),h=o.useCallback((g,y)=>{d.current={y:g,m:y},s(g),l(y)},[]);return{viewY:r,viewM:i,prevMonth:p,nextMonth:m,setViewYM:h}}function Za(e,t){return new Date(e,t+1,0).getDate()}function V4(e,t){return new Date(e,t,1).getDay()}function Xa(e,t,a){return`${e}-${String(t+1).padStart(2,"0")}-${String(a).padStart(2,"0")}`}function W4(e){if(!e)return"";const[t,a,r]=e.split("-");return`${t}. ${a}. ${r}.`}function q4(e,t,a,r){const s=a?+a.split("-")[0]:e-10,i=r?+r.split("-")[0]:e+10,l=[];for(let c=s;c<=i;c++)for(let d=0;d<12;d++){const u=`${c}-${String(d+1).padStart(2,"0")}`;a&&u<a.slice(0,7)||r&&u>r.slice(0,7)||l.push({value:u,label:t(c,d+1)})}return l}function U4({value:e,onChange:t,size:a=48,min:r,max:s,disabled:i,placeholder:l,className:c,today:d}){const{t:u}=be.useTranslation(),p=l??u("datePicker.chooseDate","\uB0A0\uC9DC \uC120\uD0DD"),m=o.useMemo(()=>u("calendar.dow",{returnObjects:!0}),[u]),h=Lr(d),{viewY:g,viewM:y,prevMonth:f,nextMonth:w,setViewYM:C}=Hl(e,d),b=o.useId(),_=o.useCallback((D,O)=>{const P=window.innerHeight,H=window.innerWidth,$=typeof document<"u"?document.getElementById(b):null,Y=$?.offsetHeight||300,ee=Math.max(D.width,$?.offsetWidth||0,260),Z=P-D.bottom<Y&&D.top>Y,ae=8,_e=(re,ue)=>Math.min(Math.max(ae,re),Math.max(ae,ue));return{position:"fixed",left:_e(D.left,H-ee-ae),width:D.width,minWidth:260,...Z?{bottom:_e(P-D.top+6,P-Y-ae)}:{top:_e(D.bottom+6,P-Y-ae)},zIndex:va(O)}},[b]),{open:x,setOpen:k,toggle:v,style:B,triggerRef:A,menuRef:N}=xa({computeStyle:_,onScroll:"reposition",onResize:"reposition",ignoreOutsideClickSelector:".dropdown__menu"});o.useEffect(()=>{if(!x)return;const D=N.current;return(D?.querySelector(".date-picker__day--selected:not(:disabled)")??D?.querySelector(".date-picker__day--today:not(:disabled)")??D?.querySelector(".date-picker__day:not(:disabled)")??D?.querySelector(Cn)??D)?.focus?.(),()=>{const O=document.activeElement;(!O||O===document.body)&&A.current?.focus?.()}},[x,N,A]);const[E,T]=o.useState(1),I=o.useRef(null),R=o.useRef(null);o.useEffect(()=>{if(!x)return;const D=e&&e.slice(0,7)===`${g}-${String(y+1).padStart(2,"0")}`?+e.slice(8):h.slice(0,7)===`${g}-${String(y+1).padStart(2,"0")}`?+h.slice(8):1;T(D)},[x]),o.useEffect(()=>{if(R.current==null)return;const D=R.current;R.current=null,I.current?.querySelector(`[data-day="${D}"]`)?.focus()}),o.useEffect(()=>{T(D=>Math.min(D,Za(g,y)))},[g,y]);const V=o.useCallback(D=>{let O=Xa(D.getFullYear(),D.getMonth(),D.getDate());r&&O<r&&(O=r),s&&O>s&&(O=s);const[P,H,$]=O.split("-").map(Number);(P!==g||H-1!==y)&&C(P,H-1),T($),R.current=$},[r,s,g,y,C]),j=o.useCallback(D=>{const O=new Date(g,y,E),P=$=>{O.setDate(O.getDate()+$),V(O)},H=$=>{const Y=O.getFullYear()*12+O.getMonth()+$,ee=Math.floor(Y/12),Z=Y-ee*12;V(new Date(ee,Z,Math.min(O.getDate(),Za(ee,Z))))};switch(D.key){case"ArrowLeft":P(-1);break;case"ArrowRight":P(1);break;case"ArrowUp":P(-7);break;case"ArrowDown":P(7);break;case"Home":P(-O.getDay());break;case"End":P(6-O.getDay());break;case"PageUp":D.shiftKey?H(-12):H(-1);break;case"PageDown":D.shiftKey?H(12):H(1);break;default:return}D.preventDefault()},[g,y,E,V]),M=o.useCallback(D=>{i||(t(Xa(g,y,D)),k(!1))},[g,y,t,k,i]);o.useEffect(()=>{i&&k(!1)},[i,k]);const F=D=>{const O=Xa(g,y,D);return!!(r&&O<r||s&&O>s)},U=(()=>{const D=Za(g,y);if(E>=1&&E<=D&&!F(E))return E;for(let O=1;O<=D;O++)if(!F(O))return O;return-1})(),Q=[];for(let D=0;D<V4(g,y);D++)Q.push(null);for(let D=1;D<=Za(g,y);D++)Q.push(D);const z=a===64?20:a===40?16:18,G=q4(g,(D,O)=>u("calendar.yearMonth",{year:D,month:O,defaultValue:"{{year}}\uB144 {{month}}\uC6D4"}),r,s),W=`${g}-${String(y+1).padStart(2,"0")}`,L=x?Ut.createPortal(n.jsxs("div",{ref:N,id:b,className:"date-picker__dropdown",style:B,"data-tooltip-ignore":!0,role:"dialog","aria-label":u("datePicker.chooseDate","\uB0A0\uC9DC \uC120\uD0DD"),tabIndex:-1,children:[n.jsxs("div",{className:"date-picker__nav",children:[n.jsx("button",{type:"button",className:"date-picker__nav-btn",onClick:f,"aria-label":u("calendar.prevMonth","\uC774\uC804 \uB2EC"),children:n.jsx(os,{size:16,strokeWidth:2})}),n.jsx(en,{className:"date-picker__nav-dropdown",ariaLabel:u("datePicker.selectYearMonth","\uC5F0\uC6D4 \uC120\uD0DD"),options:G,value:W,onChange:D=>{const[O,P]=D.split("-");C(+O,+P-1)},block:!0,size:40}),n.jsx("button",{type:"button",className:"date-picker__nav-btn",onClick:w,"aria-label":u("calendar.nextMonth","\uB2E4\uC74C \uB2EC"),children:n.jsx(ss,{size:16,strokeWidth:2})})]}),n.jsxs("div",{className:"date-picker__grid",ref:I,onKeyDown:j,children:[m.map(D=>n.jsx("div",{className:"date-picker__dow caption-1",children:D},D)),Q.map((D,O)=>{if(D===null)return n.jsx("div",{},`e${O}`);const P=Xa(g,y,D),H=P===e,$=P===h,Y=F(D),ee=O%7;return n.jsx("button",{type:"button",disabled:Y,"data-day":D,tabIndex:D===U?0:-1,"aria-current":$?"date":void 0,onClick:()=>!Y&&M(D),className:De("date-picker__day caption-1",H&&"date-picker__day--selected",$&&!H&&"date-picker__day--today",Y&&"date-picker__day--disabled",ee===0&&"date-picker__day--sun",ee===6&&"date-picker__day--sat"),children:D},D)})]})]}),document.body):null;return n.jsxs("div",{className:De("date-picker",`date-picker--s${a}`,x&&"date-picker--open",c),children:[n.jsxs("button",{ref:A,type:"button",className:"date-picker__trigger body-2",onClick:()=>!i&&v(),disabled:i,"aria-haspopup":"true","aria-expanded":x,children:[n.jsx("span",{className:e?"date-picker__value":"date-picker__placeholder",children:e?W4(e):p}),n.jsx(fs,{size:z,className:"date-picker__icon",strokeWidth:1.5})]}),L]})}function zl({children:e,className:t}){const a=o.useRef(null),[r,s]=o.useState(null);return o.useEffect(()=>{s(a.current?.parentElement??null)},[]),o.useEffect(()=>{const i=a.current;if(!i||!r)return;const l=()=>{const d=typeof window<"u"&&window.getComputedStyle(i).position==="absolute"?Math.ceil(i.getBoundingClientRect().width):0;d>0?r.style.setProperty("--section-head-float-w",`${d}px`):r.style.removeProperty("--section-head-float-w")};if(l(),typeof ResizeObserver>"u")return()=>{r.style.removeProperty("--section-head-float-w")};const c=new ResizeObserver(()=>l());return c.observe(i),c.observe(r),()=>{c.disconnect(),r.style.removeProperty("--section-head-float-w")}},[r,e]),n.jsx("div",{ref:a,className:De("section-head-float",t),children:e})}function io({items:e,className:t}){return n.jsx("div",{className:t?`manager-bar-chart-legend ${t}`:"manager-bar-chart-legend",children:e.map((a,r)=>n.jsxs("span",{className:"manager-bar-chart-legend-item",children:[n.jsx("span",{className:"manager-bar-chart-legend-dot",style:{background:a.color}}),a.label]},r))})}function Da({label:e,children:t}){return e?n.jsxs("div",{className:"barchart-total barchart-total--stacked",children:[n.jsx("span",{className:"barchart-total__label body-3",children:e}),n.jsx("span",{className:"barchart-total__value",children:t})]}):n.jsx("div",{className:"barchart-total",children:t})}function lo({title:e,titleClassName:t="h3",icon:a,disc:r,headRight:s,headFloat:i,headSegment:l,headMenuItems:c,collapseBelow:d=420,onClick:u,ariaLabel:p,tooltip:m,totalNum:h,totalUnit:g,totalLabel:y,subRow:f,subRowAlign:w="start",className:C,inGrid:b=!1,children:_}){const{t:x}=be.useTranslation(),k=o.useRef(null),{anchorRect:v,openAt:B,close:A}=ya(),N=o.useCallback(()=>{m&&k.current&&B(k.current)},[m,B]),[E,T]=o.useState(!1);oo(()=>{const L=k.current;if(!L||!l)return;const D=P=>T(P>0&&P<d);if(D(L.clientWidth),typeof ResizeObserver>"u")return;const O=new ResizeObserver(P=>D(P[0].contentRect.width));return O.observe(L),()=>O.disconnect()},[l,d]);const[I,R]=o.useState(null),V=o.useCallback(()=>R(null),[]),j=o.useCallback(L=>{const D=L.currentTarget.getBoundingClientRect();R(O=>O?null:{left:D.left,right:D.right,top:D.top,bottom:D.bottom,width:D.width,height:D.height,x:D.x,y:D.y})},[]),M=!!l&&E;o.useEffect(()=>{M||R(null)},[M]);const F=l?[...l.options.map(L=>({label:L.label,icon:L.icon,selected:L.key===l.value,disabled:L.disabled,onClick:()=>l.onChange(L.key),closeOnSelect:!0})),...(c??[]).map((L,D)=>D===0?{...L,separatorBefore:!0}:L)]:[],U=o.useCallback(L=>{if(!u)return;const D=L.target;D&&typeof D.closest=="function"&&D.closest('button, a, input, select, textarea, [role="radiogroup"]')||u()},[u]),Q=o.useCallback(L=>{u&&L.target===L.currentTarget&&(L.key==="Enter"||L.key===" ")&&(L.preventDefault(),u())},[u]),z=typeof s=="function"?s({collapsed:M}):s,G=h!=null||y?n.jsxs(Da,{label:y,children:[h!=null&&n.jsx("span",{className:"barchart-total__num h0",children:h}),g&&n.jsx("span",{className:"barchart-total__unit h5",children:g})]}):null,W=z||l?n.jsxs("div",{className:"manager-section__head-right",children:[l&&(M?n.jsx(pe,{htmlType:"button",size:32,type:"dot",icon:"ellipsis",ariaLabel:l.ariaLabel??x("common.more","\uB354\uBCF4\uAE30"),showTooltipInfo:l.ariaLabel??x("common.more","\uB354\uBCF4\uAE30"),"aria-haspopup":"menu","aria-expanded":!!I,onClick:j}):n.jsx(xn,{size:32,ariaLabel:l.ariaLabel,options:l.options.map(L=>({key:L.key,label:L.label,disabled:L.disabled})),value:l.value,onChange:l.onChange})),z]}):null;return n.jsxs("section",{ref:k,className:["manager-section",b&&"manager-section--grid",u&&"manager-section--clickable",C].filter(Boolean).join(" "),onClick:u?U:void 0,onKeyDown:u?Q:void 0,onPointerEnter:m?N:void 0,onPointerLeave:m?A:void 0,onFocus:m?N:void 0,onBlur:m?A:void 0,role:u?"button":void 0,tabIndex:u?0:void 0,"aria-label":u?p??(typeof e=="string"?e:void 0):void 0,children:[m&&v&&n.jsx(gn,{anchorRect:{left:v.left,top:v.top+21,right:v.right,bottom:v.bottom,width:v.width,height:v.height},text:m}),i&&n.jsx(zl,{children:i}),n.jsxs("div",{className:"manager-section__head",children:[n.jsxs("div",{className:"manager-section__title-row",children:[a&&n.jsx(Ue,{icon:a,label:typeof e=="string"?e:void 0,className:"manager-section__icon"}),n.jsx("div",{className:["manager-section__title",t].filter(Boolean).join(" "),children:e})]}),W,r&&n.jsx("div",{className:"manager-section__disc body-3",children:r})]}),(G||f)&&n.jsxs("div",{className:["barchart-sub-row",w!=="start"&&`barchart-sub-row--${w}`].filter(Boolean).join(" "),children:[G,f]}),_,I&&n.jsx(Qt,{anchorRect:I,onClose:V,ariaLabel:l?.ariaLabel??x("tooltip.menu","\uBA54\uB274"),children:n.jsx(_a,{columns:[{items:F}],onClose:V,size:"small"})})]})}function cn(e,t){const a=new Date(e,t,1).getDay();return 1+(8-(a===0?7:a))%7}function G4(){const e=Kn();let t=e.getFullYear(),a=e.getMonth(),r=e.getDate();if(r<cn(t,a)){const l=new Date(t,a,0);t=l.getFullYear(),a=l.getMonth(),r=l.getDate()}const s=Math.floor((r-cn(t,a))/7),i=`${t}\uB144 ${a+1}\uC6D4`;return{monthKey:i,value:`${i}#${s}`}}function K4(e){const t=Kn(),a=`${t.getFullYear()}\uB144 ${t.getMonth()+1}\uC6D4`,r=(d,u)=>`${d}\uB144 ${u+1}\uC6D4`,s=new Map;s.set(a,[]);for(const d of e){if(isNaN(d.date.getTime()))continue;const u=r(d.date.getFullYear(),d.date.getMonth());s.has(u)||s.set(u,[]),s.get(u).push(d)}for(const[d,u]of[...s.entries()]){const p=d.match(/^(\d+)년 (\d+)월$/);if(!p)continue;const m=Number(p[1]),h=Number(p[2])-1,g=cn(m,h);if(!(d===a&&t.getDate()<g)&&!u.some(w=>w.date.getDate()<g))continue;const y=new Date(m,h,0),f=r(y.getFullYear(),y.getMonth());s.has(f)||s.set(f,[])}const i=new Map;for(const[d,u]of s){const p=d.match(/^(\d+)년 (\d+)월$/);if(!p)continue;const m=Number(p[1]),h=Number(p[2])-1,g=new Date(m,h+1,0).getDate(),y=u.reduce((x,k)=>Math.max(x,k.parts?.length??0,k.partsB?.length??0),0),f=u.some(x=>x.partsB),w=new Array(g+1).fill(0),C=new Array(g+1).fill(0),b=Array.from({length:g+1},()=>new Array(y).fill(0)),_=Array.from({length:g+1},()=>new Array(y).fill(0));for(const x of u){const k=x.date.getDate();if(w[k]+=x.a,C[k]+=x.b,x.parts)for(let v=0;v<y;v++)b[k][v]+=x.parts[v]??0;if(x.partsB)for(let v=0;v<y;v++)_[k][v]+=x.partsB[v]??0}i.set(d,{year:m,month:h,daysInMonth:g,partsLen:y,hasPartsB:f,dayA:w,dayB:C,dayParts:b,dayPartsB:_})}const l=(d,u,p)=>new Date(d,u,p).getTime()>new Date(t.getFullYear(),t.getMonth(),t.getDate()).getTime(),c={};for(const[d,u]of i){const{year:p,month:m,daysInMonth:h,dayA:g,dayB:y,dayParts:f,dayPartsB:w}=u,C=p===t.getFullYear()&&m===t.getMonth(),b=t.getDate(),_=i.get(r(m===11?p+1:p,(m+1)%12)),x=u.partsLen,k=[];for(let B=1;B<=h;B++){const A=C&&B>b;k.push({label:String(B),...A&&g[B]===0&&y[B]===0?{future:!0}:{},a:A&&g[B]===0&&y[B]===0?-1:g[B],b:y[B],...x?{parts:f[B]}:{},...x&&u.hasPartsB?{partsB:w[B]}:{}})}const v=[];for(let B=cn(p,m);B<=h;B+=7){const A=Math.max(0,B+6-h),N=A&&_?Math.max(x,_.partsLen):x,E=u.hasPartsB||!!(A&&_?.hasPartsB);let T=0,I=0;const R=new Array(N).fill(0),V=new Array(N).fill(0);for(let M=B;M<=Math.min(B+6,h);M++){T+=g[M],I+=y[M];for(let F=0;F<x;F++)R[F]+=f[M][F],V[F]+=w[M][F]}if(A&&_)for(let M=1;M<=A&&!l(_.year,_.month,M);M++){T+=_.dayA[M],I+=_.dayB[M];for(let F=0;F<_.partsLen;F++)R[F]+=_.dayParts[M][F],V[F]+=_.dayPartsB[M][F]}const j=A?`${(m+1)%12+1}/${A}`:`${B+6}`;v.push({label:`${v.length+1}\uC8FC`,sublabel:`[${B}\uC77C~${j}\uC77C]`,a:T,b:I,...N?{parts:R}:{},...N&&E?{partsB:V}:{}})}c[d]={weekly:v,daily:k}}return c}function Vl(){const e=Kn(),t=e.getFullYear(),a=e.getMonth()+1,r=[];for(let s=2024;s<=t;s++){const i=s===t?a:12;for(let l=1;l<=i;l++){const c=`${s}\uB144 ${l}\uC6D4`;r.push({value:c,label:c,year:s,month:l})}}return r.reverse()}Vl();function Y4(){return Vl()}const Wl=["\uCCAB\uC9F8","\uB458\uC9F8","\uC14B\uC9F8","\uB137\uC9F8","\uB2E4\uC12F\uC9F8","\uC5EC\uC12F\uC9F8","\uC77C\uACF1\uC9F8"];function ql(e){const{t,i18n:a}=be.useTranslation(),[r,s]=o.useState("week"),i=o.useMemo(()=>Y4().filter(N=>N.value in e),[e]),l=o.useMemo(()=>{const N=[];for(const E of i){const T=new Date(E.year,E.month,0).getDate(),I=cn(E.year,E.month-1),R=Math.ceil((T-I+1)/7);for(let V=R-1;V>=0;V--)N.push({value:`${E.value}#${V}`,monthKey:E.value,year:E.year,month:E.month,week:V})}return N},[i]),c=o.useCallback(N=>{const E=t("calendar.yearMonth",{year:N.year,month:N.month});return a.language?.startsWith("ko")?`${E} ${Wl[N.week]??`${N.week+1}`}\uC8FC`:`${E} Week ${N.week+1}`},[t,a.language]),d=o.useMemo(()=>i.map(N=>({value:N.value,label:t("calendar.yearMonth",{year:N.year,month:N.month})})),[t,i]),u=o.useMemo(()=>l.map(N=>({value:N.value,label:c(N)})),[l,c]),p=o.useMemo(()=>G4(),[e]),m=o.useMemo(()=>i.find(N=>N.value===p.monthKey)?.value??i[0]?.value??"",[i,p]),h=o.useMemo(()=>l.find(N=>N.value===p.value)?.value??l[0]?.value??"",[l,p]),[g,y]=o.useState(""),[f,w]=o.useState("");o.useEffect(()=>{i.find(N=>N.value===g)||y(m)},[i,g,m]),o.useEffect(()=>{l.find(N=>N.value===f)||w(h)},[l,f,h]);const C=r==="month"?d:u,b=r==="month"?g:f,_=r==="month"?y:w,x=o.useMemo(()=>{const N=t("calendar.dow",{returnObjects:!0});return Array.isArray(N)?N:["\uC77C","\uC6D4","\uD654","\uC218","\uBAA9","\uAE08","\uD1A0"]},[t]),k=C.findIndex(N=>N.value===b),v=o.useCallback(()=>{const N=C.findIndex(E=>E.value===b);N<C.length-1&&_(C[N+1].value)},[C,b,_]),B=o.useCallback(()=>{const N=C.findIndex(E=>E.value===b);N>0&&_(C[N-1].value)},[C,b,_]),A=o.useMemo(()=>[{key:"week",label:t("manager.chart.periodWeek","\uC8FC")},{key:"month",label:t("manager.chart.periodMonth","\uC6D4")}],[t]);return{period:r,setPeriod:s,range:b,setRange:_,activeOptions:C,activeIdx:k,handlePrev:v,handleNext:B,periodOptions:A,monthRange:g,weekRange:f,weekRanges:l,DOW:x}}const ct=e=>typeof e=="number"&&Number.isFinite(e)?e:0;function _n(e,t=!0){return e.future===!0||t&&e.a===-1}function Z4({data:e,colorA:t,colorB:a,labelA:r,labelB:s,barWidth:i=10,barGap:l=1,height:c=140,maxOverride:d,tightMax:u,seriesColors:p,seriesLabels:m,rateLabels:h,grouped:g=!1,baseline:y}){const f=!a,w=!!(p&&p.length>0),C=y,b=o.useMemo(()=>w?Math.max(0,...e.filter(M=>!_n(M,C==null)).map(M=>g?Math.max(0,...(M.parts??[]).map(ct)):(M.parts??[]).reduce((F,U)=>F+Math.max(0,ct(U)),0))):Math.max(0,...e.filter(M=>!_n(M,C==null)).flatMap(M=>f?[ct(M.a)]:[ct(M.a),ct(M.b)])),[e,f,w,g]),_=o.useMemo(()=>{if(C==null)return 0;const M=e.filter(F=>!_n(F,C==null)).flatMap(F=>w?(F.parts??[]).map(ct):f?[ct(F.a)]:[ct(F.a),ct(F.b)]);return Math.max(0,...M.map(F=>Math.abs(F-C)))},[e,C,w,f]),x=o.useMemo(()=>{const M=C!=null?_:b;return d??(u?M>0?M:10:Math.ceil(M/10)*10||10)},[b,_,C,d,u]),k=c,v=w?g?Math.max(1,p.length):1:f?1:2,B={"--bar-width":`${o.useMemo(()=>{const M=Math.max(1,e.length);return Math.max(2,Math.min(i,Math.round(120/(M*v)+6)))},[e.length,v,i])}px`},A={"--bar-group-gap":`${Math.max(0,l)}px`},N=o.useMemo(()=>{const M=Math.round(x/2);return C!=null?[C+x,...M!==x?[C+M]:[],C,...M!==x?[C-M]:[],C-x]:M!==x?[x,M,0]:[x,0]},[x,C]),E=M=>C!=null?1-(M-(C-x))/(2*x):1-M/x,[T,I]=o.useState(null),R=o.useCallback(()=>I(null),[]),V=M=>C!=null&&M>C?`+${M}`:`${M}`,j=T!=null;return o.useEffect(()=>{if(!j)return;const M=()=>I(null),F=U=>{const Q=U.target;Q&&typeof Q.closest=="function"&&Q.closest(".manager-bar-chart-col")||I(null)};return window.addEventListener("scroll",M,!0),document.addEventListener("pointerdown",F,!0),()=>{window.removeEventListener("scroll",M,!0),document.removeEventListener("pointerdown",F,!0)}},[j]),n.jsxs("div",{className:"manager-bar-chart-wrap",style:A,children:[n.jsx("div",{className:"manager-bar-chart-inner",children:n.jsx("div",{className:"manager-bar-chart-scroll",children:n.jsxs("div",{className:"manager-bar-chart-area",children:[n.jsxs("div",{className:"manager-bar-chart-plot",style:{height:k},children:[N.slice(0,-1).map((M,F)=>n.jsx("div",{className:`manager-bar-chart-gridline${C!=null&&M===C?" manager-bar-chart-gridline--baseline":""}`,style:{top:E(M)*k},children:n.jsx("span",{className:"manager-bar-chart-gridline__label caption-1",children:M})},F)),e.map((M,F)=>{const U=_n(M,C==null),Q=k/2,z=D=>C!=null?Math.min(Q,Math.abs(ct(D)-C)/x*Q):Math.min(k,Math.max(0,ct(D)/x*k)),G=U?0:z(M.a),W=U?0:z(M.b),L=(M.parts??[]).map(ct);return n.jsx("div",{className:`manager-bar-chart-col${g&&w?" manager-bar-chart-col--group":""}`,style:{cursor:U?"default":"pointer"},onMouseEnter:U?void 0:D=>{const O=D.currentTarget.getBoundingClientRect(),P=[M.label,M.sublabel].filter(Boolean).join(" ");let H;if(w&&g&&M.rawPartsB)H=(m??[]).map(($,Y)=>{const ee=M.rawPartsB[Y]??0;return{text:ee>0?`${$}: ${L[Y]??0}% (${M.rawParts?.[Y]??0}/${ee})`:`${$}: -`,color:(p??[])[Y]}});else if(w&&g)H=(m??[]).map(($,Y)=>({text:`${$}: ${V(L[Y]??0)}`,color:(p??[])[Y]}));else if(w){const $=(m??[]).map((ee,Z)=>({text:`${ee}: ${L[Z]??0}`,color:(p??[])[Z]})),Y=$.filter((ee,Z)=>(L[Z]??0)>0);H=Y.length?Y:$}else h&&!f?H=[{text:`${r} ${ct(M.a)}%`,color:t},{text:`${s} ${ct(M.b)}%`,color:a}]:h&&M.rawB!==void 0?H=[{text:`${h.total} ${M.rawB}`},{text:`${h.done} ${M.rawA??0}`,color:t}]:f?H=[{text:`${r}: ${ct(M.a)}`,color:t}]:H=[{text:`${r}: ${ct(M.a)}`,color:t},{text:`${s}: ${ct(M.b)}`,color:a}];I({rect:{left:O.left,top:O.top,right:O.right,bottom:O.bottom,width:O.width,height:O.height},title:P,items:H})},onMouseLeave:R,children:!U&&(w&&g?(p??[]).map((D,O)=>{const P=L[O]??0;if(C==null)return n.jsx("div",{className:"manager-bar-chart-bar",style:{...B,height:z(P),background:D}},O);const H=ct(P)<C;return n.jsxs("div",{className:"manager-bar-chart-slot",style:B,children:[n.jsx("div",{className:"manager-bar-chart-slot__half manager-bar-chart-slot__half--up",children:!H&&n.jsx("div",{className:"manager-bar-chart-bar manager-bar-chart-bar--full",style:{height:z(P),background:D}})}),n.jsx("div",{className:"manager-bar-chart-slot__half manager-bar-chart-slot__half--down",children:H&&n.jsx("div",{className:"manager-bar-chart-bar manager-bar-chart-bar--full manager-bar-chart-bar--down",style:{height:z(P),background:D}})})]},O)}):w?n.jsx("div",{className:"manager-bar-chart-stack",style:B,children:(()=>{const D=L.reduce((P,H,$)=>H>0?$:P,-1);let O=k;return L.map((P,H)=>{if(P<=0)return null;const $=Math.min(O,P/x*k);return O-=$,n.jsx("div",{className:"manager-bar-chart-stack-segment",style:{height:$,background:(p??[])[H],borderRadius:H===D?"6px 6px 0 0":void 0}},H)})})()}):C!=null?n.jsx(n.Fragment,{children:[{v:ct(M.a),c:t},...f?[]:[{v:ct(M.b),c:a}]].map(({v:D,c:O},P)=>n.jsxs("div",{className:"manager-bar-chart-slot",style:B,children:[n.jsx("div",{className:"manager-bar-chart-slot__half manager-bar-chart-slot__half--up",children:D>=C&&n.jsx("div",{className:"manager-bar-chart-bar manager-bar-chart-bar--full",style:{height:z(D),background:O}})}),n.jsx("div",{className:"manager-bar-chart-slot__half manager-bar-chart-slot__half--down",children:D<C&&n.jsx("div",{className:"manager-bar-chart-bar manager-bar-chart-bar--full manager-bar-chart-bar--down",style:{height:z(D),background:O}})})]},P))}):n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"manager-bar-chart-bar",style:{...B,height:G,background:t}}),!f&&n.jsx("div",{className:"manager-bar-chart-bar",style:{...B,height:W,background:a}})]}))},F)})]}),n.jsx("div",{className:"manager-bar-chart-x-axis",children:e.map((M,F)=>{const U=_n(M,C==null);return n.jsxs("span",{className:`manager-bar-chart-x-axis__label${U?" manager-bar-chart-x-axis__label--future":""}`,children:[n.jsxs("span",{className:"caption-1 manager-bar-chart-x-axis__main",children:[M.isToday&&n.jsx("span",{className:"manager-bar-chart-x-axis__today-dot",style:{background:t}}),M.label]}),M.sublabel&&n.jsx("span",{className:"caption-1",children:M.sublabel})]},F)})})]})})}),T&&n.jsx(Fn,{anchorRect:T.rect,title:T.title,items:T.items,showIndex:!1,closeOnOutsideClick:!1})]})}function Ul({control:e}){const{t}=be.useTranslation(),{activeOptions:a,activeIdx:r,range:s,setRange:i,handlePrev:l,handleNext:c,periodOptions:d,period:u,setPeriod:p}=e,m=u==="week"?t("calendar.prevWeek","\uC774\uC804 \uC8FC"):t("calendar.prevMonth","\uC774\uC804 \uB2EC"),h=u==="week"?t("calendar.nextWeek","\uB2E4\uC74C \uC8FC"):t("calendar.nextMonth","\uB2E4\uC74C \uB2EC");return n.jsxs("div",{className:"manager-section-controls",children:[n.jsx(pe,{htmlType:"button",size:32,type:"dot",icon:"chevron-left",ariaLabel:m,showTooltipInfo:m,disabled:r===a.length-1,onClick:l}),n.jsx(en,{value:s,onChange:i,options:a,size:40,className:"month-dropdown",ariaLabel:t("calendar.rangeSelect","\uAE30\uAC04 \uC120\uD0DD")}),n.jsx(pe,{htmlType:"button",size:32,type:"dot",icon:"chevron-right",ariaLabel:h,showTooltipInfo:h,disabled:r<=0,onClick:c}),n.jsx(xn,{ariaLabel:t("calendar.periodSelect","\uAE30\uAC04 \uB2E8\uC704"),options:d,value:u,onChange:g=>p(g),size:40})]})}function co(e,t,a,r=!0){const s=new Date(a.getFullYear(),a.getMonth(),a.getDate());return Array.from({length:7},(i,l)=>{const c=new Date(t);c.setDate(t.getDate()+l);const d=(e[`${c.getFullYear()}\uB144 ${c.getMonth()+1}\uC6D4`]?.daily??[])[c.getDate()-1],u=d!=null&&_n(d,r)||c>s;return{dt:c,entry:d,isFuture:u}})}function X4(e,t,a,r,s=!0){const{period:i,monthRange:l,weekRange:c,weekRanges:d,DOW:u}=t,p=r?.startsWith("ko"),m=Kn(),h=m.getFullYear(),g=m.getMonth()+1,y=m.getDate();if(i==="month"){const C=e[l]??{weekly:[],daily:[]},b=l.match(/^(\d+)년 (\d+)월$/),_=b?Number(b[1]):null,x=b?Number(b[2]):null,k=_&&x?cn(_,x-1):1;return C.weekly.map((v,B)=>{const A=B+1;let N=v.label,E=!1,T=!1;if(_&&x){const I=k+B*7,R=new Date(_,x-1,I+6),V=R.getMonth()+1,j=R.getDate(),M=V===x?`${j}`:`${V}/${j}`;N=a("manager.chart.weekRange",{start:I,end:M});const F=new Date(h,g-1,y).getTime();E=F>=new Date(_,x-1,I).getTime()&&F<=R.getTime(),T=_>h||_===h&&(x>g||x===g&&I>y)}return{...v,label:N,sublabel:p?`${Wl[A-1]??A}\uC8FC`:`Week ${A}`,isToday:E,future:v.future===!0||T||void 0,a:T?-1:v.a,b:T?0:v.b}})}const f=d.find(C=>C.value===c);if(!f)return[];const w=new Date(f.year,f.month-1,cn(f.year,f.month-1)+f.week*7);return co(e,w,m,s).map(({dt:C,entry:b,isFuture:_})=>{const x=C.getMonth()+1,k=C.getDate(),v=C.getFullYear();return{label:x===f.month&&v===f.year?`${k}`:`${x}/${k}`,sublabel:u[C.getDay()]??"",future:_||void 0,a:_?-1:b&&b.a>0?b.a:0,b:_?0:b&&b.b>0?b.b:0,isToday:v===h&&x===g&&k===y,...b?.parts?{parts:_?b.parts.map(()=>0):b.parts}:{},...b?.partsB?{partsB:_?b.partsB.map(()=>0):b.partsB}:{}}})}const J4={small:{height:100,barWidth:16},medium:{height:140,barWidth:20},large:{height:180,barWidth:24}};function Q4({size:e="medium",barWidth:t,titleKey:a,data:r,colorA:s,colorB:i,labelAKey:l,labelBKey:c,showTotal:d=!1,totalUnitKey:u,totalLabelKey:p,control:m,hideControls:h=!1,rate:g=!1,rateAgg:y="dayMean",tightMax:f=!1,avgMode:w=!1,totalFormat:C,series:b,seriesMode:_="stack",loading:x=!1,onDetail:k,headExtra:v,headSegment:B,icon:A,disc:N,onClick:E,cardAriaLabel:T,cardTooltip:I,detailSize:R=32,barGap:V,baseline:j,className:M,inGrid:F=!1}){const{t:U,i18n:Q}=be.useTranslation(),z=J4[e],G=ql(r),W=m??G,L=o.useMemo(()=>X4(r,W,U,Q.language,j==null),[r,W,U,Q.language,j]),D=_==="group"&&!!b&&b.length>0;V!=null&&!D&&fn("bar-chart-bargap-without-group","[BarChart] barGap \uC740 seriesMode='group' + series \uC5D0\uC11C\uB9CC \uC4F0\uC778\uB2E4 \u2014 \uADF8 \uBC16\uC5D0\uC11C\uB294 \uC544\uBB34 \uC77C\uB3C4 \uD558\uC9C0 \uC54A\uB294\uB2E4.");const O=o.useMemo(()=>{if(!g)return L;const ee=W.period==="month"?W.monthRange.match(/^(\d+)년 (\d+)월$/):null,Z=Kn(),ae=b?.length??0,_e=re=>{const ue=[],q=[],oe=[];for(let de=0;de<ae;de++){let ve=0,ge=0,Se=0;for(const Ce of re){const Ee=ct(Ce.a[de]),Be=ct(Ce.b[de]);Be<=0||(ve+=Ee,ge+=Be,Se+=Ee/Be*100)}ue.push(y==="weighted"?ge>0?Math.round(ve/ge*100):0:re.length?Math.round(Se/re.length):0),q.push(ve),oe.push(ge)}return{pct:ue,ra:q,rb:oe}};return L.map((re,ue)=>{let q=re.a===-1?-1:re.b>0?Math.round(re.a/re.b*100):0;if(ee&&!_n(re)){const de=Number(ee[1]),ve=Number(ee[2])-1,ge=co(r,new Date(de,ve,cn(de,ve)+ue*7),Z).filter(Se=>!Se.isFuture);if(y==="weighted"){let Se=0,Ce=0;for(const{entry:Ee}of ge)Ee&&Ee.b>0&&(Se+=Ee.a,Ce+=Ee.b);q=Ce>0?Math.round(Se/Ce*100):0}else q=ge.length?Math.round(ge.reduce((Se,{entry:Ce})=>Se+(Ce&&Ce.b>0?Ce.a/Ce.b*100:0),0)/ge.length):0}let oe=null;if(D&&!_n(re)){let de;if(ee){const ge=Number(ee[1]),Se=Number(ee[2])-1;de=co(r,new Date(ge,Se,cn(ge,Se)+ue*7),Z).filter(Ce=>!Ce.isFuture).map(({entry:Ce})=>({a:Ce?.parts??[],b:Ce?.partsB??[]}))}else de=[{a:re.parts??[],b:re.partsB??[]}];const ve=_e(de);oe={parts:ve.pct,rawParts:ve.ra,rawPartsB:ve.rb}}return{...re,a:q,b:re.a===-1?0:c&&re.parts&&re.parts[1]>0?Math.round(re.parts[0]/re.parts[1]*100):0,rawA:re.a===-1?-1:re.a,rawB:re.b,...oe??{}}})},[L,g,y,c,W.period,W.monthRange,r,D,b?.length]),P=o.useMemo(()=>{if(g||w){const Z=(W.period==="week"?L:r[W.monthRange]?.daily??[]).filter(_e=>_e.a!==-1);if(Z.length===0)return 0;if(g&&y==="weighted"){let _e=0,re=0;for(const ue of Z)ue.b>0&&(_e+=ue.a,re+=ue.b);return re>0?Math.round(_e/re*100):0}const ae=g?Z.reduce((_e,re)=>_e+(re.b>0?re.a/re.b*100:0),0):Z.reduce((_e,re)=>_e+(re.a>0?re.a:0),0);return Math.round(ae/Z.length)}const ee=W.period==="month"?r[W.monthRange]?.daily??[]:O;return j!=null?ee.reduce((Z,ae)=>Z+(_n(ae,!1)?0:ct(ae.a)+(c?ct(ae.b):0)),0):ee.reduce((Z,ae)=>Z+(ae.a>0?ae.a:0)+(c&&ae.b>0?ae.b:0),0)},[O,L,g,y,w,j,c,W.period,W.monthRange,r]),H=b&&b.length>0?b.map(ee=>({color:ee.color,label:ee.label})):[{color:s,label:U(l)},...c?[{color:i,label:U(c)}]:[]],$=e==="small",Y=[$?"manager-section--compact":e==="large"?"manager-section--full":void 0,M].filter(Boolean).join(" ")||void 0;return n.jsx(lo,{className:Y,inGrid:F,icon:A,disc:N,onClick:E,ariaLabel:T,tooltip:I,headSegment:B,headMenuItems:k?[{label:U("trainingStatus.detail","\uC0C1\uC138\uBCF4\uAE30"),icon:"list",onClick:k,closeOnSelect:!0}]:void 0,title:U(a),titleClassName:$?"h5 chart-section-title--small":void 0,headRight:$?v??void 0:({collapsed:ee})=>n.jsxs(n.Fragment,{children:[!h&&n.jsx(Ul,{control:W}),v,k&&!ee&&n.jsx("span",{className:"manager-bar-chart-detail-btn",children:n.jsx(pe,{htmlType:"button",size:R,type:"dot",icon:"list",ariaLabel:U("trainingStatus.detail","\uC0C1\uC138\uBCF4\uAE30"),showTooltipInfo:U("trainingStatus.detail","\uC0C1\uC138\uBCF4\uAE30"),onClick:k})})]}),subRow:n.jsxs(n.Fragment,{children:[d?g||w||p&&C?n.jsx(Da,{label:$?void 0:`${U(W.period==="week"?"manager.chart.weeklyPrefix":"manager.chart.monthlyPrefix")} ${U(p??l)}`,children:C?(C(P).match(/([+-]?\d[\d.,]*|[^\d]+)/g)??[]).map((ee,Z)=>/\d/.test(ee)?n.jsx("span",{className:"barchart-total__num h0",children:ee},Z):n.jsx("span",{className:"barchart-total__unit h5",children:ee},Z)):n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"barchart-total__num h0",children:P}),u&&n.jsx("span",{className:"barchart-total__unit h5",children:U(u)})]})}):n.jsxs(Da,{children:[n.jsx("span",{className:"barchart-total__num h0",children:P}),n.jsx("span",{className:"barchart-total__unit h5",children:U(l)}),u&&n.jsx("span",{className:"barchart-total__unit h5",children:U(u)})]}):n.jsx("span",{}),n.jsx(io,{items:H,className:"caption-1"})]}),children:x?n.jsx("div",{className:"manager-bar-chart-wrap manager-bar-chart-loading","aria-busy":"true",children:n.jsx("div",{className:"manager-bar-chart-inner",children:n.jsxs("div",{className:"manager-bar-chart-area manager-bar-chart-area--loading",children:[n.jsx("div",{className:"manager-bar-chart-plot manager-bar-chart-plot--loading",style:{height:z.height},children:n.jsx(Ea,{size:32})}),n.jsx("div",{className:"manager-bar-chart-x-axis","aria-hidden":"true",children:n.jsxs("span",{className:"manager-bar-chart-x-axis__label",children:[n.jsx("span",{className:"caption-1 manager-bar-chart-x-axis__main",children:"\xA0"}),O.some(ee=>!!ee.sublabel)&&n.jsx("span",{className:"caption-1",children:"\xA0"})]})})]})})}):n.jsx(Z4,{data:O,colorA:s,colorB:c?i:void 0,labelA:U(l),labelB:c?U(c):void 0,barWidth:t??z.barWidth,barGap:V,baseline:j,height:z.height,maxOverride:g?100:void 0,tightMax:f,seriesColors:b?.map(ee=>ee.color),seriesLabels:b?.map(ee=>ee.label),rateLabels:g?{total:U("trainingStatus.today.tooltipTotal","\uC804\uCCB4"),done:U("trainingStatus.today.tooltipDone","\uC644\uB8CC")}:void 0,grouped:D})})}const Gl=120,ey={left:38,right:16,top:26,bottom:24};function ty({points:e=[],range:t,ticks:a=[],axisTitle:r,color:s,height:i=156,fallbackWidth:l=320,insets:c,overlay:d,ariaLabel:u,className:p}){const[m,h]=o.useState(null),[g,y]=o.useState(null);o.useEffect(()=>{if(!g)return;const F=Q=>h(Math.round(Q)||null);if(F(g.getBoundingClientRect().width),typeof ResizeObserver>"u")return;const U=new ResizeObserver(([Q])=>F(Q.contentRect.width));return U.observe(g),()=>{U.disconnect()}},[g]);const{payload:f,anchorRect:w,openAfterDelay:C,close:b}=sb(Gl),_=o.useCallback((F,U)=>{F&&C(F,U.getBoundingClientRect())},[C]),x=m??l,k=i,{left:v,right:B,top:A,bottom:N}={...ey,...c},[E,T]=t,I=F=>T===E?v:v+(x-v-B)*(F-E)/(T-E),R=F=>A+(k-A-N)*(100-F)/100,V={x:I,y:R,plot:{left:v,right:x-B,top:A,bottom:k-N,width:Math.max(0,x-v-B),height:Math.max(0,k-A-N)}},j=e.filter(F=>!F.hollow),M=s??"var(--color-main)";return n.jsxs(n.Fragment,{children:[n.jsxs("svg",{ref:y,className:De("line-chart",p),viewBox:`0 0 ${x} ${k}`,role:"img","aria-label":u??e.map(F=>F.description).filter(Boolean).join(", "),children:[r&&n.jsx("text",{className:"line-chart__axis-title",x:0,y:12,children:r}),[0,100].map(F=>n.jsxs("g",{children:[n.jsx("line",{className:"line-chart__grid",x1:v,x2:x-B,y1:R(F),y2:R(F)}),n.jsxs("text",{className:"line-chart__tick",x:v-6,y:R(F)+4,textAnchor:"end",children:[F,"%"]})]},F)),d?.(V),a.map(F=>n.jsx("text",{className:"line-chart__tick",x:I(F.x),y:k-5,textAnchor:"middle",children:F.label},F.x)),j.length>1&&n.jsx("polyline",{className:"line-chart__line",fill:"none",stroke:M,points:j.map(F=>`${I(F.x)},${R(F.pct)}`).join(" ")}),e.map(F=>n.jsxs("g",{className:"line-chart__dot",onPointerEnter:U=>_(F.description,U.currentTarget),onPointerLeave:b,children:[n.jsx("circle",{className:"line-chart__dot-hit",cx:I(F.x),cy:R(F.pct),r:12}),n.jsx("circle",{className:De("line-chart__dot-main",F.hollow&&"is-hollow"),cx:I(F.x),cy:R(F.pct),r:4,stroke:M,fill:F.hollow?void 0:M})]},F.x))]}),f!=null&&n.jsx(Qt,{anchorRect:w,offset:10,closeOnOutsideClick:!1,className:"line-chart__tip",role:"tooltip",ariaLabel:f,children:f})]})}function ny({icon:e,iconSize:t=56,title:a,titleClass:r="h2",description:s,tipGroups:i,start:l,className:c}){return n.jsxs("div",{className:De("game-intro",c),children:[e!=null&&n.jsx("span",{className:"game-intro__icon","aria-hidden":"true",style:{"--game-intro-icon":`${t}px`},children:e}),n.jsx("h2",{className:De("game-intro__title",r),children:a}),s!=null&&n.jsx("p",{className:"game-intro__description body-3",children:s}),i?.map((d,u)=>n.jsxs("div",{className:"game-intro__tips",children:[d.title!=null&&n.jsx("span",{className:"game-intro__tips-title body-3",children:d.title}),d.tips.map((p,m)=>n.jsxs("span",{className:"game-intro__tip body-3",children:[p.icon!=null&&n.jsx("span",{"aria-hidden":"true",children:p.icon}),n.jsx("span",{children:p.text})]},m))]},u)),l&&n.jsx(pe,{htmlType:"button",className:l.className,variant:"main",color:l.color,size:48,width:"100%",disabled:l.disabled,onClick:l.onClick,children:l.label})]})}const Kl=(e,t,a)=>{const r=new Date(Date.UTC(e,t,a));return`${r.getUTCFullYear()}-${String(r.getUTCMonth()+1).padStart(2,"0")}-${String(r.getUTCDate()).padStart(2,"0")}`},Yl=(e,t,a,r)=>({from:ii(e,t,a),to:new Date(ii(e,t,a+r).getTime()-1),fromYmd:Kl(e,t,a),toYmd:Kl(e,t,a+r-1)});function ay(e,t=0){if(e.period==="month"){const s=e.monthRange.match(/^(\d+)년 (\d+)월$/),i=Kn(),l=s?Number(s[1]):i.getFullYear(),c=(s?Number(s[2]):i.getMonth()+1)-1+t,d=new Date(Date.UTC(l,c+1,0)).getUTCDate();return Yl(l,c,1,d)}const a=e.weekRanges.find(s=>s.value===e.weekRange);if(!a){const s=new Date,i=Ca();return{from:s,to:s,fromYmd:i,toYmd:i}}const r=cn(a.year,a.month-1);return Yl(a.year,a.month-1,r+(a.week+t)*7,7)}const uo={small:{diameter:96,strokeWidth:16},medium:{diameter:120,strokeWidth:18},large:{diameter:160,strokeWidth:22}};function Zl(e){return!Number.isFinite(e)||e<=0?0:e>=1?100:Math.min(99,Math.max(1,Math.round(e*100)))}function Xl({done:e,total:t,segments:a,color:r="var(--color-main)",size:s="medium",strokeWidth:i,label:l="%",hideCenter:c=!1,hideLabel:d=!1}){const u=typeof s=="number"?s:uo[s].diameter,p=i??(typeof s=="number"?12:uo[s].strokeWidth),m=u/2,h=(u-p)/2,g=2*Math.PI*h;if(a&&a.length>0){const C=a.reduce((b,_)=>{const x=b.length>0?b[b.length-1].acc:0,k=Number.isFinite(_.ratio)?_.ratio:0,v=Math.max(0,Math.min(k,1-x));return b.push({color:_.color,rotate:-90+x*360,dash:g*v,acc:x+v}),b},[]);return n.jsx("div",{className:"ring-chart",style:{width:u,height:u},children:n.jsxs("svg",{width:u,height:u,viewBox:`0 0 ${u} ${u}`,"aria-hidden":"true",children:[n.jsx("circle",{cx:m,cy:m,r:h,fill:"none",stroke:"var(--color-whiteLine)",strokeWidth:p}),C.map((b,_)=>b.dash>0&&n.jsx("circle",{cx:m,cy:m,r:h,fill:"none",stroke:b.color,strokeWidth:p,strokeDasharray:`${b.dash} ${g}`,strokeLinecap:"round",transform:`rotate(${b.rotate} ${m} ${m})`},_))]})})}const y=(t??0)>0?Math.min((e??0)/t,1):0,f=g*y,w=g-f;return n.jsxs("div",{className:"ring-chart",style:{width:u,height:u},children:[n.jsxs("svg",{width:u,height:u,viewBox:`0 0 ${u} ${u}`,"aria-hidden":"true",children:[n.jsx("circle",{cx:m,cy:m,r:h,fill:"none",stroke:"var(--color-whiteLine)",strokeWidth:p}),y>0&&n.jsx("circle",{cx:m,cy:m,r:h,fill:"none",stroke:r,strokeWidth:p,strokeDasharray:`${f} ${w}`,strokeLinecap:y<.02||y>.98?"butt":"round",transform:`rotate(-90 ${m} ${m})`})]}),!c&&n.jsxs("div",{className:`ring-chart__center${d?"":` ${u<=96?"ring-chart__center--small":s==="medium"?"ring-chart__center--medium":"ring-chart__center--large"}`}`,children:[n.jsx("span",{className:`ring-chart__pct ${u<=96?"h2":"h1"}`,children:Zl(y)}),!d&&n.jsx("span",{className:`ring-chart__label ${u<=96?"caption-2":"caption-1"}${u<=96||s==="medium"?" ring-chart__label--tight":""}`,children:l})]})]})}function ry({titleKey:e,headRight:t,icon:a,showTotal:r,totalLabelKey:s,legend:i,loading:l,className:c,inGrid:d=!1,onClick:u,ariaLabel:p,tooltip:m,...h}){const{t:g}=be.useTranslation();if(!e)return n.jsx(Xl,{...h});const y=(h.total??0)>0?Zl(Math.min((h.done??0)/h.total,1)):0,f=h.size==="small",w=typeof h.size=="number"?h.size:uo[h.size??"medium"].diameter,C=h.size==="large",b=[c,f?"manager-section--compact":C?"manager-section--full":""].filter(Boolean).join(" ")||void 0,_=a&&n.jsx("span",{className:"chart-section-icon",children:n.jsx(Ue,{icon:a,className:"chart-section-icon-inner"})});return n.jsx(lo,{className:b,inGrid:d,onClick:u,ariaLabel:p,tooltip:m,title:g(e),titleClassName:f?"h5 chart-section-title--small":void 0,headRight:_||(f?void 0:t),subRow:(r||i)&&n.jsxs(n.Fragment,{children:[r?n.jsxs(Da,{label:!f&&s?g(s):void 0,children:[n.jsx("span",{className:"barchart-total__num h0",children:y}),n.jsx("span",{className:"barchart-total__unit h5",children:"%"})]}):n.jsx("span",{}),i&&n.jsx(io,{items:i})]}),children:l?n.jsx("div",{className:"ring-chart-section-body ring-chart-section-body--offset",children:n.jsx("div",{className:"ring-chart ring-chart--loading",style:{width:w,height:w},"aria-busy":"true",children:n.jsx(Ea,{size:32})})}):n.jsx("div",{className:"ring-chart-section-body ring-chart-section-body--offset",children:n.jsx(Xl,{...h,hideCenter:h.hideCenter??f})})})}function oy({label:e,value:t,change:a,changeType:r,icon:s,tooltip:i,onClick:l,children:c}){const d=o.useRef(null),{anchorRect:u,openAt:p,close:m}=ya(),h=o.useCallback(()=>{i&&d.current&&p(d.current)},[i,p]),g=r??(a===void 0?void 0:a>0?"up":a<0?"down":"neutral"),y=a===void 0?void 0:a>0?`+${a}`:`${a}`,f=o.useCallback(w=>{l&&(w.key==="Enter"||w.key===" ")&&(w.preventDefault(),l())},[l]);return n.jsxs("div",{ref:d,className:`manager-stat-card${l?" manager-stat-card--clickable":""}`,onClick:l,onKeyDown:l?f:void 0,onPointerEnter:h,onPointerLeave:m,onFocus:h,onBlur:m,role:l?"button":void 0,tabIndex:l?0:void 0,"aria-label":l?[e,t,y].filter(w=>w!==void 0&&w!=="").join(" "):void 0,children:[i&&u&&n.jsx(gn,{anchorRect:{left:u.left,top:u.top+21,right:u.right,bottom:u.bottom,width:u.width,height:u.height},text:i}),n.jsxs("div",{className:"manager-stat-card__label-row",children:[n.jsx("span",{className:"manager-stat-card__label h5",children:e}),s&&n.jsx("span",{className:"manager-stat-card__icon",children:n.jsx(Ue,{icon:s,className:"manager-stat-card__icon-inner"})})]}),n.jsxs("div",{className:"manager-stat-card__content",children:[n.jsxs("div",{className:"manager-stat-card__left",children:[n.jsx("div",{className:"manager-stat-card__value h2",children:t}),y&&n.jsx("div",{className:`manager-stat-card__change manager-stat-card__change--${g??"neutral"} caption-1`,children:y})]}),c&&n.jsx("div",{className:"manager-stat-card__body",children:c})]})]})}function Jl({value:e,onChange:t,min:a=0,max:r=100,step:s=1,orientation:i="horizontal",size:l=24,disabled:c=!1,ariaLabel:d,length:u,className:p,label:m,formatValue:h,labelPos:g,labelAlign:y="right",showMinMax:f=!1,minLabel:w,maxLabel:C,showBgTick:b=!1,showFillTick:_=!1,tickStep:x,tickShape:k="dot"}){t&&!d&&fn("Slider:unnamed","[ihab/Slider] \uC774\uB984\uC774 \uC5C6\uC2B5\uB2C8\uB2E4 \u2014 ariaLabel \uC744 \uC8FC\uC138\uC694. label prop \uC740 \uAC12 \uD45C\uAE30 \uBC29\uC2DD\uC774\uC9C0 \uC774\uB984\uC774 \uC544\uB2D9\uB2C8\uB2E4.");const v=Math.min(r,Math.max(a,e)),B=r>a?(v-a)/(r-a):0,A=i==="vertical",N=!t,E=D=>t?.(Number(D.target.value)),T=typeof u=="number"?`${u}px`:u,I={"--slider-ratio":String(B),"--slider-thumb":`${l}px`,...T?A?{height:T}:{width:T}:{}},R=x??s,V=(b||_)&&R>0&&r>a?Math.floor((r-a)/R+1e-6):0;if(V>0&&V<=100){const D=k!=="dash",O=ee=>D?`radial-gradient(circle, ${ee} 0.5px, transparent 1px)`:A?`linear-gradient(to bottom, transparent calc(50% - 2px), ${ee} calc(50% - 2px), ${ee} calc(50% + 2px), transparent calc(50% + 2px))`:`linear-gradient(to right, transparent calc(50% - 2px), ${ee} calc(50% - 2px), ${ee} calc(50% + 2px), transparent calc(50% + 2px))`,P=D?"2px":"4px",H=[],$=[],Y=[];for(let ee=0;ee<=V;ee++){const Z=ee*R/(r-a);if(Z>1+1e-6)break;const ae=`${((A?1-Z:Z)*100).toFixed(4)}%`,_e=Z<=B+1e-6;if(_e?!_:!b)continue;const re=_e?"var(--slider-tick-color-on-fill, var(--color-deepWhite))":"var(--slider-tick-color, var(--color-lightGray))";H.push(O(re)),$.push(A?`${P} var(--slider-thumb)`:`var(--slider-thumb) ${P}`),Y.push(A?`center ${ae}`:`${ae} center`)}H.push(A?"linear-gradient(to top, var(--slider-fill-color) var(--slider-fill), var(--color-darkWhite) var(--slider-fill))":"linear-gradient(to right, var(--slider-fill-color) var(--slider-fill), var(--color-darkWhite) var(--slider-fill))"),$.push("100% 100%"),Y.push("0 0"),I.backgroundImage=H.join(", "),I.backgroundSize=$.join(", "),I.backgroundPosition=Y.join(", "),I.backgroundRepeat="no-repeat"}const j=h?h(v):m==="percent"?`${Math.round(r>a?(v-a)/(r-a)*100:0)}%`:m==="count"?`${v} / ${r}`:v===a&&w?w:v===r&&C?C:void 0,M=n.jsx("input",{type:"range",className:De("slider",`slider--${i}`,N&&"slider--static",!m&&!f&&p),min:a,max:r,step:s,value:v,disabled:c,readOnly:N,tabIndex:N?-1:void 0,"aria-label":d,"aria-valuetext":j,"aria-orientation":i,onChange:E,style:I});if(!m&&!f)return M;const F=n.jsx("span",{className:"slider-wrap__minmax caption-1",children:w??a}),U=n.jsx("span",{className:"slider-wrap__minmax caption-1",children:C??r}),Q=f?n.jsxs("div",{className:De("slider-track-group",`slider-track-group--${i}`,!m&&p),children:[A?U:F,M,A?F:U]}):M;if(!m)return Q;const z=g??(A?"bottom":"right"),G=`${Math.round(r>a?(v-a)/(r-a)*100:0)}%`,W=h?h(v):m==="percent"?G:m==="count"?`${v} / ${r}`:String(v),L=n.jsx("span",{className:"slider-wrap__value body-3b",children:W});return n.jsxs("div",{className:De("slider-wrap",`slider-wrap--${i}`,`slider-wrap--label-${z}`,`slider-wrap--align-${y}`,p),children:[Q,L]})}const sy=.86,iy=250,po=(e,t,a,r)=>Math.round(Math.min(r,Math.max(a,e-t))),mo=(e,t,a,r)=>{const s=po(e,t,a,r);return`${s<0?"-":"+"}${Math.abs(s)} dB`};function ho({analyser:e,audioElement:t,orientation:a="horizontal",length:r,label:s,labelPos:i,labelAlign:l="right",floorDb:c=-60,refDb:d=-35,displayMin:u=-5,displayMax:p=25,className:m,ariaLabel:h}){const g=o.useRef(null),y=o.useRef(null),f=o.useRef(null),w=o.useRef(null),[C,b]=o.useState(null);o.useEffect(()=>{const v=M=>{const F=mo(M,d,u,p);f.current&&(f.current.textContent=F);const U=g.current;U&&(U.setAttribute("aria-valuenow",String(po(M,d,u,p))),U.setAttribute("aria-valuetext",F))},B=e??a2(t)??(C&&C.el===t?C.node:null),A=y.current;if(!B||!A){A?.style.setProperty("--meter-level","0"),v(c);let M=!1;return!e&&t&&Pa(t).then(F=>{!M&&F&&b({el:t,node:F})}),()=>{M=!0}}Dr();const N=new Float32Array(B.fftSize);let E=0,T=0,I=0,R=0,V=null;const j=M=>{const F=r2(B,N);E=F>E?F:E*sy;const U=E>1e-5?20*Math.log10(E):-1/0,Q=Math.max(c,U),z=Q-d,G=Math.min(1,Math.max(0,(z-u)/(p-u)));if(A.style.setProperty("--meter-level",G.toFixed(3)),T+=Q,I+=1,M-R>=iy){const W=T/I;V=V==null?W:V*.6+W*.4,v(V),T=0,I=0,R=M}w.current=requestAnimationFrame(j)};return w.current=requestAnimationFrame(j),()=>{w.current!=null&&cancelAnimationFrame(w.current),w.current=null}},[e,t,C,c,d,u,p]);const _=typeof r=="number"?`${r}px`:r,x=n.jsx("div",{className:"audio-meter__track",style:_?a==="vertical"?{height:_}:{width:_}:{},children:n.jsx("div",{ref:y,className:"audio-meter__fill"})}),k=i??(a==="vertical"?"bottom":"right");return n.jsxs("div",{ref:g,className:De("audio-meter",`audio-meter--${a}`,s&&`audio-meter--label-${k}`,s&&`audio-meter--align-${l}`,m),role:"meter","aria-label":h,"aria-valuemin":u,"aria-valuemax":p,"aria-valuenow":po(c,d,u,p),"aria-valuetext":mo(c,d,u,p),children:[x,s&&n.jsx("span",{ref:f,className:"audio-meter__value caption-2",children:mo(c,d,u,p)})]})}const Ql=260;function ec({message:e,position:t,duration:a,onClose:r}){const[s,i]=o.useState(!1),[l,c]=o.useState(!1),d=o.useRef(l),u=o.useRef(s);o.useEffect(()=>{d.current=l},[l]),o.useEffect(()=>{u.current=s},[s]);const p=o.useRef(null),m=o.useRef(""),h=o.useRef(r);o.useEffect(()=>{h.current=r});const g=a,y=o.useRef(null),f=o.useRef(0),w=o.useRef(0),C=o.useRef(!1),b=o.useRef(null),_=o.useRef(null),x=o.useRef(null),k=o.useRef(null),v=o.useRef(()=>{});v.current=N=>{N<0||(f.current=Date.now(),w.current=N,y.current=setTimeout(()=>{y.current=null,i(!1),b.current=setTimeout(()=>{c(!1);try{h.current()}catch{}},Ql)},N))};const B=o.useCallback(()=>{C.current||!y.current||(C.current=!0,clearTimeout(y.current),y.current=null,w.current=Math.max(0,w.current-(Date.now()-f.current)))},[]),A=o.useCallback(()=>{C.current&&(C.current=!1,v.current(w.current))},[]);return o.useEffect(()=>{if(e!==m.current&&(y.current&&(clearTimeout(y.current),y.current=null),b.current&&(clearTimeout(b.current),b.current=null)),e){if(u.current)return g>0&&!y.current&&(C.current?w.current=g:v.current(g)),m.current=e,()=>{y.current&&(clearTimeout(y.current),y.current=null),b.current&&(clearTimeout(b.current),b.current=null)};const N=()=>{const E=p.current;if(E)try{E.classList.remove("is-visible"),E.style.transition="none",t==="top"?E.style.transform="translateX(-50%) translateY(-16px)":E.style.transform="translateX(-50%) translateY(16px)",E.style.opacity="0",E.offsetWidth,E.style.transition="",E.classList.add("is-visible"),k.current&&clearTimeout(k.current),k.current=setTimeout(()=>{k.current=null;try{E.style.opacity="",E.style.transform="",E.style.transition=""}catch{}},60)}catch{}};d.current?(N(),i(!0)):(c(!0),_.current=requestAnimationFrame(()=>{x.current=requestAnimationFrame(()=>{N(),i(!0)})})),g>0&&(C.current=!1,v.current(g))}else i(!1),b.current=setTimeout(()=>c(!1),Ql);return m.current=e,()=>{y.current&&clearTimeout(y.current),b.current&&clearTimeout(b.current),_.current&&cancelAnimationFrame(_.current),x.current&&cancelAnimationFrame(x.current),k.current&&clearTimeout(k.current),y.current=null,b.current=null,_.current=null,x.current=null,k.current=null}},[e,g,t]),{mounted:l,showing:s,popupRef:p,pause:B,resume:A}}function ea({message:e="",position:t="top",type:a="normal",onClose:r=()=>{},duration:s=2e3}){const{mounted:i,showing:l,popupRef:c,pause:d,resume:u}=ec({message:e,position:t,duration:s,onClose:r}),p=o.useRef(null),[m,h]=o.useState(!1);if(o.useEffect(()=>{l?h(!0):i||h(!1)},[l,i]),!i)return null;const g=a==="notice"||a==="warning"?a:"normal",y=n.jsx("div",{ref:c,className:`toast toast--${t} ${l?"is-visible":""}`,role:"status","aria-live":"polite",onPointerEnter:f=>{p.current=f.pointerType},onMouseEnter:()=>{p.current!=="touch"&&d()},onMouseLeave:u,onFocusCapture:d,onBlurCapture:u,children:n.jsx("div",{className:`toast__inner toast__inner--${g} body-2`,"aria-hidden":m||l?void 0:!0,children:e})});return typeof document<"u"?Ut.createPortal(y,document.body):y}const ly=24;function cy({value:e,max:t=100,size:a=8,color:r,trackColor:s,label:i,formatValue:l,labelPos:c,labelAlign:d="right",ariaLabel:u,className:p}){const m=Number.isFinite(t)&&t>0?t:1,h=Math.max(0,Math.min(Number.isFinite(e)?e:0,m)),g=h/m*100,y=Number.isFinite(t)&&t>0?t:0,f=c??(a>=ly?"inside":"bottom"),w=f==="center"?"inside":f,C=w==="inside"&&(d==="left"?g>=15:d==="center"?g>=50:g>=85),b={};return r&&(b["--progress-bar-fill"]=r),s&&(b["--progress-bar-track"]=s),n.jsxs("div",{className:De("progress-bar",`progress-bar--${a}`,`progress-bar--label-${w}`,i&&`progress-bar--align-${d}`,i&&C&&"progress-bar--label-on-fill",p),style:b,children:[n.jsx("div",{className:"progress-bar__track",role:"progressbar","aria-valuenow":h,"aria-valuemin":0,"aria-valuemax":y,"aria-valuetext":i?l?l(h):i==="percent"?void 0:i==="raw"?String(h):`${h} / ${y}`:void 0,"aria-label":u,children:n.jsx("div",{className:"progress-bar__fill",style:{width:`${g}%`}})}),i&&n.jsx("span",{className:"progress-bar__label caption-1b",children:l?l(h):i==="percent"?`${Math.round(g)}%`:i==="raw"?String(h):`${h} / ${y}`})]})}const tc={position:"absolute",width:1,height:1,margin:-1,padding:0,overflow:"hidden",clipPath:"inset(50%)",whiteSpace:"nowrap",border:0},uy="rgba(255, 255, 255, 0.16)";function nc({max:e,index:t,inactiveBg:a,inactiveColor:r,transparent:s,variant:i="numbered",announce:l=!1,ariaLabel:c}){const{t:d}=be.useTranslation(),u=Zt("(max-width: 767px)");if(!Number.isInteger(e)||e<=0)return null;const p=Number.isInteger(t)?Math.max(0,Math.min(t,e-1)):0,m=c??d("progress.steps",{current:p+1,total:e,defaultValue:"\uC9C4\uD589 \uB2E8\uACC4 {{current}} / {{total}}"}),h={};if(a&&(h["--pi-inactive-bg"]=a),r&&(h["--pi-inactive-color"]=r),s&&(a||(h["--pi-inactive-bg"]=uy),r||(h["--pi-inactive-color"]="var(--color-white)")),i==="dot")return n.jsxs("div",{className:"progress-indicator progress-indicator--dot",style:h,role:l?"status":"img","aria-label":l?void 0:m,children:[l&&n.jsx("span",{style:tc,children:m}),Array.from({length:e}).map((y,f)=>n.jsx("span",{"aria-hidden":"true",className:`progress-indicator-dot--dot${f<p?" done":f===p?" active":""}`},f))]});const g=l?n.jsx("span",{role:"status",style:tc,children:m}):null;return u?n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"progress-indicator progress-indicator--mobile",style:h,role:"list","aria-label":m,children:n.jsxs("span",{role:"listitem",className:"progress-indicator-dot active body-3",children:[p+1," / ",e]})}),g]}):n.jsxs(n.Fragment,{children:[g,n.jsx("div",{className:"progress-indicator",style:h,role:"list","aria-label":m,children:Array.from({length:e}).map((y,f)=>n.jsx("span",{role:"listitem","aria-current":f===p?"step":void 0,className:`progress-indicator-dot ${f<p?" done":f===p?" active":""} body-3`,children:f+1},f))})]})}function dy(e){if(!e)return[];const t=[];let a=0,r="";for(const s of e.trim()){if(s==="("?a++:s===")"&&a--,/\s/.test(s)&&a===0){r&&(t.push(r),r="");continue}r+=s}return r&&t.push(r),t}function py({children:e,className:t,style:a}){return n.jsx("div",{className:t?`table-cell ${t}`:"table-cell",style:a,children:e})}function fo({variant:e="default",children:t,className:a,draggable:r,onClick:s,onMouseEnter:i,onMouseLeave:l,onDragStart:c,onDragEnd:d,expandedContent:u}){const p=o.useCallback(m=>{s&&m.target===m.currentTarget&&(m.key==="Enter"||m.key===" ")&&(m.preventDefault(),s())},[s]);return e==="loading"?n.jsx("div",{className:"table-row-wrap",children:n.jsx("div",{className:"table-row table-row--loading",children:n.jsx(Ea,{size:28})})}):e==="empty"?n.jsx("div",{className:"table-row-wrap",children:n.jsx("div",{className:"table-row table-row--empty body-3",children:t})}):n.jsxs("div",{className:"table-row-wrap",children:[n.jsx("div",{className:a?`table-row ${a}`:"table-row",draggable:r,onClick:s,onKeyDown:s?p:void 0,onMouseEnter:i,onMouseLeave:l,onDragStart:c,onDragEnd:d,role:s?"button":void 0,tabIndex:s?0:void 0,children:t}),u&&n.jsx("div",{className:"table-row-expand",children:u})]})}function my({dir:e}){return n.jsx(e==="asc"?gs:Cs,{className:"table-field__sort-arrow",size:16,strokeWidth:2})}function hy({children:e,onClick:t,className:a,sortDir:r,ariaSort:s,onResizeStart:i}){const l=n.jsxs(n.Fragment,{children:[e,r&&n.jsx(my,{dir:r})]});return n.jsxs("div",{onClick:t,role:"columnheader","aria-sort":s,className:De("table-field body-3",a,r?"table-field--sorted":"",i?"table-field--resizable":""),children:[t?n.jsx("button",{type:"button",className:"table-field__button",children:l}):l,i&&n.jsx("span",{className:"table-field__resizer",onPointerDown:i,onClick:c=>c.stopPropagation(),"aria-hidden":"true"})]})}function Co({fields:e=[],headerGroups:t,items:a=[],renderRow:r,onRowClick:s,isRowClickable:i,onRowMouseEnter:l,onRowMouseLeave:c,onRowDragStart:d,onRowDragEnd:u,draggingId:p,gridTemplateColumns:m,mobileGridTemplateColumns:h,resizable:g=!1,resizeMode:y="grow",resizeStorageKey:f,size:w="small",title:C,icon:b,count:_,collapsed:x=!1,onToggleCollapse:k,headerActions:v,empty:B,loading:A,dragOver:N=!1,onDragOver:E,onDragLeave:T,onDrop:I,renderExpandedRow:R,expandedId:V}){const{t:j}=be.useTranslation(),M=Zt("(max-width: 767px)"),F=h&&M?h:null,U=g&&!M,Q=48,z=o.useRef(()=>Q),G=f?`table-cols:${f}`:null,W=o.useRef(null),L=o.useRef(()=>!1),D=o.useRef([]),O=o.useRef(null),P=me=>{if(!me||typeof window>"u")return null;try{const ke=JSON.parse(window.localStorage.getItem(me)??"null");return Array.isArray(ke)&&ke.length>0&&ke.every(Me=>typeof Me=="number"&&Number.isFinite(Me)&&Me>0)?ke:null}catch{return null}},[H,$]=o.useState(()=>P(G)),[Y,ee]=o.useState(G);Y!==G&&(ee(G),$(P(G)));const Z=o.useRef(H);o.useEffect(()=>{Z.current=H},[H]);const ae=o.useCallback(me=>{const ke=O.current;if(!ke)return;const Me=Z.current;if(Me){const Te=[...Me];if(ke.next!=null&&ke.startWNext!=null){const Ae=me.clientX-ke.startX,ie=Math.max(z.current(ke.index)-ke.startW,Math.min(ke.startWNext-z.current(ke.next),Ae));Te[ke.index]=ke.startW+ie,Te[ke.next]=ke.startWNext-ie}else Te[ke.index]=Math.max(z.current(ke.index),ke.startW+(me.clientX-ke.startX));Z.current=Te,$(Te)}},[]),_e=o.useCallback(()=>{if(O.current=null,window.removeEventListener("pointermove",ae),window.removeEventListener("pointerup",_e),window.removeEventListener("pointercancel",_e),document.body.style.cursor="",document.body.style.userSelect="",G&&Z.current)try{window.localStorage.setItem(G,JSON.stringify(Z.current))}catch{}},[ae,G]),re=o.useCallback((me,ke)=>{ke.preventDefault(),ke.stopPropagation();const Me=W.current;if(!Me)return;const Te=Array.from(Me.children).map(ie=>ie.getBoundingClientRect().width),Ae=y==="fit"?e.findIndex((ie,ye)=>ye>me&&ie.resizable!==!1):-1;O.current=Ae>=0?{index:me,startX:ke.clientX,startW:Te[me],next:Ae,startWNext:Te[Ae]}:{index:me,startX:ke.clientX,startW:Te[me]},Z.current=Te,$(Te),window.addEventListener("pointermove",ae),window.addEventListener("pointerup",_e),window.addEventListener("pointercancel",_e),document.body.style.cursor="col-resize",document.body.style.userSelect="none"},[ae,_e,y,e]),ue=o.useCallback(()=>{const me=W.current,ke=me?.closest(".table-wrap");if(!me||!ke)return;const Me=ke.style.getPropertyValue("--table-grid-cols");ke.style.setProperty("--table-grid-cols",e.map((Ze,Ye)=>L.current(Ye)?D.current[Ye]:"max-content").join(" "));const Te=Array.from(ke.querySelectorAll(".table-row")).filter(Ze=>!Ze.classList.contains("table-row--loading")&&!Ze.classList.contains("table-row--empty")),Ae=e.map((Ze,Ye)=>{let Ke=me.children[Ye]?.getBoundingClientRect().width??0;for(const Pe of Te){const lt=Pe.children[Ye];lt&&(Ke=Math.max(Ke,lt.getBoundingClientRect().width))}const Oe=L.current(Ye)?parseFloat(D.current[Ye]):NaN;return Number.isFinite(Oe)?Oe:Math.max(z.current(Ye),Math.ceil(Ke))}),ie=window.getComputedStyle(me),ye=me.clientWidth-(parseFloat(ie.paddingLeft)||0)-(parseFloat(ie.paddingRight)||0);Me?ke.style.setProperty("--table-grid-cols",Me):ke.style.removeProperty("--table-grid-cols");let se=Ae;const Ie=Ae.reduce((Ze,Ye,Ke)=>Ze+(L.current(Ke)?Ye:0),0),ze=Ae.reduce((Ze,Ye,Ke)=>Ze+(L.current(Ke)?0:Ye),0),Ge=ye-Ie;if(ye>0&&ze>0&&Ge>0){const Ze=Ge/ze;se=Ae.map((Ke,Oe)=>L.current(Oe)?Ke:Math.max(z.current(Oe),Math.round(Ke*Ze)));const Ye=Math.round(Ge-se.reduce((Ke,Oe,Pe)=>Ke+(L.current(Pe)?0:Oe),0));if(Ye!==0){let Ke=-1;se.forEach((Oe,Pe)=>{!L.current(Pe)&&(Ke<0||Oe>se[Ke])&&(Ke=Pe)}),Ke>=0&&(se[Ke]=Math.max(z.current(Ke),se[Ke]+Ye))}}if($(se),G)try{window.localStorage.setItem(G,JSON.stringify(se))}catch{}},[e,y,G]);o.useEffect(()=>()=>{O.current&&(window.removeEventListener("pointermove",ae),window.removeEventListener("pointerup",_e),window.removeEventListener("pointercancel",_e),document.body.style.cursor="",document.body.style.userSelect="")},[ae,_e]);const q=dy(m),oe=q.filter(me=>/\b(auto|min-content|max-content)\b|fit-content\(/.test(me));oe.length>0&&fn(`table-content-track:${m}`,`[ihabdevteam-core] Table \uC758 gridTemplateColumns \uC5D0 \uB0B4\uC6A9\uC73C\uB85C \uD06C\uAE30\uAC00 \uC815\uD574\uC9C0\uB294 \uD2B8\uB799(${oe.join(", ")})\uC774 \uC788\uC2B5\uB2C8\uB2E4. \uBA38\uB9AC\uC640 \uBAB8\uD1B5\uC740 \uC11C\uB85C \uB2E4\uB978 \uACA9\uC790\uB77C \uADF8 \uD2B8\uB799\uC774 \uAC01\uC790 \uB2E4\uB974\uAC8C \uD480\uB824 \uC5F4\uC774 \uC5B4\uAE0B\uB0A9\uB2C8\uB2E4. px \uC774\uB098 fr \uC744 \uC4F0\uC138\uC694. (\uBC1B\uC740 \uAC12: ${m})`);const de=e.findIndex(me=>!!me.sortDir);e.filter(me=>!!me.sortDir).length>1&&fn("table-multi-sort","[ihabdevteam-core] Table \uC758 fields \uC5D0 sortDir \uC774 \uB458 \uC774\uC0C1 \uC788\uC2B5\uB2C8\uB2E4. aria-sort \uB294 \uD45C \uD558\uB098\uC5D0 \uD55C \uCE78\uB9CC \uAC00\uC9C8 \uC218 \uC788\uC5B4 \uCCAB \uCE78\uB9CC \uBC29\uD5A5\uC73C\uB85C \uC54C\uB9AC\uACE0 \uB098\uBA38\uC9C0\uB294 none \uC73C\uB85C \uB461\uB2C8\uB2E4.");const ve=me=>me===de?e[me].sortDir==="asc"?"ascending":"descending":e[me].onClick?"none":void 0,ge=me=>/^\d+(\.\d+)?px$/.test(q[me]??""),Se=me=>{const ke=q[me]??"",Me=/^minmax\(\s*(\d+(?:\.\d+)?)px\s*,/.exec(ke)??/^(\d+(?:\.\d+)?)px$/.exec(ke);return Me?parseFloat(Me[1]):Q};L.current=ge,z.current=Se,D.current=q;const Ce=me=>y==="fit"&&!ge(me)?"fr":"px",Ee=H&&H.length===e.length&&!M&&(y==="fit"||a.length>0),Be=F??(Ee?e.map((me,ke)=>me.resizable===!1&&q[ke]?q[ke]:`${H[ke]}${Ce(ke)}`).join(" "):m),Re=Be?{"--table-grid-cols":Be}:void 0,Le=C!==void 0;return n.jsx("div",{className:`table-wrap table-wrap--${w}${U?" table-wrap--resizable":""}${N?" table-wrap--dragover":""}${x?" table-wrap--collapsed":""}`,style:Re,onDragOver:E,onDragLeave:T,onDrop:I,children:n.jsxs("div",{className:"table body-2",children:[Le&&n.jsxs("div",{className:"table-header",onClick:k,role:k?"button":void 0,tabIndex:k?0:void 0,"aria-expanded":k?!x:void 0,onKeyDown:k?me=>{me.target===me.currentTarget&&(me.key==="Enter"||me.key===" ")&&(me.preventDefault(),k())}:void 0,children:[k&&n.jsx(pe,{htmlType:"button",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:x?"chevron-right":"chevron-down",ariaLabel:x?j("common.expand","\uD3BC\uCE58\uAE30"):j("common.collapse","\uC811\uAE30"),className:"table-header__chevron"}),b&&n.jsx(Ue,{icon:b,label:typeof C=="string"?C:void 0,className:"table-header__icon"}),n.jsx("span",{className:"table-header__title h5b",children:C}),_!==void 0&&n.jsx("span",{className:"table-header__count body-3b",children:_}),v&&n.jsx("span",{className:"table-header__actions",onClick:me=>me.stopPropagation(),children:v})]}),!x&&n.jsxs(n.Fragment,{children:[t&&t.length>0&&n.jsx("div",{className:"table-fields table-fields--groups",children:t.map((me,ke)=>n.jsx("div",{className:De("table-field body-3",me.className),style:{gridColumn:`span ${me.span}`},children:me.label},ke))}),n.jsxs("div",{className:De("table-fields-strip",U&&"table-fields-strip--resizable"),children:[n.jsx("div",{className:"table-fields",ref:W,children:e.map((me,ke)=>n.jsx(hy,{onClick:me.onClick,className:me.className,sortDir:me.sortDir,ariaSort:ve(ke),onResizeStart:U&&ke<e.length-1&&me.resizable!==!1&&(y!=="fit"||e.some((Me,Te)=>Te>ke&&Me.resizable!==!1))?Me=>re(ke,Me):void 0,children:me.label},ke))}),U&&n.jsx(pe,{htmlType:"button",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:"chevrons-left-right-ellipsis",ariaLabel:j("table.resetColumns","\uCE78 \uB108\uBE44 \uCD08\uAE30\uD654"),showTooltipInfo:j("table.resetColumns","\uCE78 \uB108\uBE44 \uCD08\uAE30\uD654"),className:"table-fields__reset",onClick:ue})]}),n.jsx("div",{className:"table-body",children:A?n.jsx(fo,{variant:"loading"}):a.length===0&&B?n.jsx(fo,{variant:"empty",children:B}):a.map((me,ke)=>{const Me=p!=null&&me.id===p,Te=!!s&&(i?i(me):!0),Ae=V!=null&&me.id!=null&&(V instanceof Set?V.has(me.id)||[...V].some(ie=>String(ie)===String(me.id)):String(me.id)===String(V));return n.jsx(fo,{className:`${Te?" table-row--clickable":""}${d?" table-row--draggable":""}${Me?" table-row--dragging":""}`.trim(),draggable:!!d,onClick:Te?()=>s(me):void 0,onMouseEnter:l?ie=>l(me,ie):void 0,onMouseLeave:c?ie=>c(me,ie):void 0,onDragStart:d?ie=>d(me,ie):void 0,onDragEnd:u?ie=>u(me,ie):void 0,expandedContent:Ae&&R?R(me):void 0,children:r(me).map((ie,ye)=>n.jsx(py,{className:ie.className,style:ie.style,children:ie.content},ye))},me.id!=null?`${typeof me.id}:${me.id}`:`__idx:${ke}`)})})]})]})})}function ac(e){switch(e){case"\uBCF4\uCCAD\uAE30":return"main";case"\uC778\uACF5\uC640\uC6B0":return"sub";default:return"default"}}const ta=e=>e==null?"":String(e).trim();function go(e,t,a){const r=[ta(e),ta(t),ta(a)];for(;r.length>0&&r[r.length-1]==="";)r.pop();return r.join(".")}function fy(e,t,a){const r=ta(e);return r?`${r}-${ta(t).padStart(2,"0")}-${ta(a).padStart(2,"0")}`:""}const Cy={\uBCF4\uCCAD\uAE30:"hearingAid",\uC778\uACF5\uC640\uC6B0:"cochlearImplant"};function gy(e,t){const a=Cy[e];return a?t(`device.type.${a}`,{defaultValue:e}):e}function rc(e,t){return t!=="wornAt"?String(e[t]??""):fy(e.wornYear,e.wornMonth,e.wornDay)}function by({rows:e,loading:t,onSelect:a,onDelete:r,onWear:s,onRelease:i,onAdd:l}){const{t:c}=be.useTranslation(),d=f=>f==="\uC88C"?c("device.direction.left","\uC88C"):c("device.direction.right","\uC6B0"),{\uC815\uB82C:u,\uCE78:p}=Zg(),m=o.useMemo(()=>{if(!u)return e;const{key:f,asc:w}=u;return[...e].sort((C,b)=>{if(f==="worn"){const _=Number(b.worn)-Number(C.worn);return w?_:-_}return Kr(rc(C,f),rc(b,f),w)})},[e,u]),{pageRows:h,pageSizeProps:g,paginationProps:y}=Yg(m,u);return n.jsxs("div",{className:"dlp-side-table",children:[n.jsx(so,{count:{value:e.length,unit:c("customers.device.unit","\uAC1C")},pageSize:g,pagination:y,actions:l&&n.jsx(pe,{htmlType:"button",size:40,type:"bar",variant:"main",icon:"plus",label:c("customers.device.addButton","\uAE30\uAE30 \uCD94\uAC00"),onClick:l})}),n.jsx(Co,{loading:t,resizable:!0,resizeMode:"fit",resizeStorageKey:"customer-device-history-v2",fields:[{...p(c("customers.device.wearingNow","\uCC29\uC6A9"),"worn"),resizable:!1},p(c("device.direction.label","\uBC29\uD5A5"),"side"),p(c("device.deviceType","\uC885\uB958"),"device"),p(c("device.brand","\uBE0C\uB79C\uB4DC"),"brand"),p(c("device.fitType","\uCC29\uC6A9\uD615\uD0DC"),"fitType"),p(c("device.productName","\uC81C\uD488\uBA85"),"productName"),p(c("device.wornDate","\uCC29\uC6A9\uC77C"),"wornAt"),...r?[{label:"",resizable:!1}]:[]],items:h.map((f,w)=>({id:f.id??`${f.side}-${w}`,row:f})),gridTemplateColumns:`56px 110px 110px minmax(120px, 1fr) 100px minmax(120px, 1fr) 110px${r?" 80px":""}`,renderRow:({row:f})=>[{content:n.jsx("span",{className:"dlp-worn-check",onClick:w=>w.stopPropagation(),children:n.jsx(Ol,{checked:f.worn,disabled:f.worn?!i:!s,ariaLabel:f.worn?c("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C"):c("customers.device.wear","\uCC29\uC6A9"),onChange:w=>{w?s?.(f):i?.(f)}})})},{content:n.jsx("span",{children:d(f.side)})},{content:f.device?n.jsx(ft,{size:"small",variant:ac(f.device),fill:"soft",label:gy(f.device,c)}):n.jsx("span",{})},{content:n.jsx("span",{children:f.brand})},{content:n.jsx("span",{children:f.fitType||"-"})},{content:n.jsx("span",{children:f.productName||"-"})},{content:n.jsx("span",{className:"dlp-date",children:go(f.wornYear,f.wornMonth,f.wornDay)||"-"})},...r?[{content:n.jsx("span",{className:"dlp-row-actions",children:n.jsx(pe,{htmlType:"button",size:28,type:"bar",variant:"transparent-gray",label:c("common.delete","\uC0AD\uC81C"),onClick:w=>{w?.stopPropagation(),r(f)}})})}]:[]],onRowClick:({row:f})=>a(f),empty:c("customers.device.historyEmpty","\uB4F1\uB85D\uB41C \uAE30\uAE30 \uC774\uB825\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.")})]})}function oc(e,t){return e?{role:t?.role??"button",tabIndex:0,...t?.selected===void 0?{}:{"aria-selected":t.selected},onKeyDown:a=>{a.target===a.currentTarget&&(a.key!=="Enter"&&a.key!==" "||(a.preventDefault(),e(a)))}}:{}}function yy(e,t){return new Date(e,t+1,0).getDate()}function vy(e,t){return new Date(e,t,1).getDay()}function xy({visits:e=[],onVisitClick:t,onVisitMove:a,onDayClick:r,today:s}){const{t:i}=be.useTranslation(),l=o.useMemo(()=>i("calendar.dow",{returnObjects:!0}),[i]),c=Lr(s),[d,u]=o.useState(()=>Number(c.slice(0,4))),[p,m]=o.useState(()=>Number(c.slice(5,7))-1),[h,g]=o.useState(null),y=o.useRef(null),f=o.useMemo(()=>{const k={};return e.forEach(v=>{k[v.date]||(k[v.date]=[]),k[v.date].push(v)}),k},[e]),w=o.useMemo(()=>{const k=yy(d,p),v=vy(d,p),B=[];for(let A=0;A<v;A++)B.push(null);for(let A=1;A<=k;A++)B.push(A);for(;B.length<35;)B.push(null);return B},[d,p]),C=o.useCallback(()=>{p===0?(u(k=>k-1),m(11)):m(k=>k-1)},[p]),b=o.useCallback(()=>{p===11?(u(k=>k+1),m(0)):m(k=>k+1)},[p]),_=k=>`${d}-${String(p+1).padStart(2,"0")}-${String(k).padStart(2,"0")}`,x=k=>_(k)===c;return n.jsxs("div",{children:[n.jsxs("div",{className:"calendar-nav",children:[n.jsx("button",{type:"button",className:"calendar-nav__button",onClick:C,"aria-label":i("calendar.prevMonth","\uC774\uC804 \uB2EC"),children:n.jsx(Ue,{icon:"chevron-left",label:"",className:"",svgClassName:"calendar-nav__button-icon",size:18})}),n.jsx("span",{className:"calendar-nav__title h5","aria-live":"polite",children:i("calendar.yearMonth",{year:d,month:p+1})}),n.jsx("button",{type:"button",className:"calendar-nav__button",onClick:b,"aria-label":i("calendar.nextMonth","\uB2E4\uC74C \uB2EC"),children:n.jsx(Ue,{icon:"chevron-right",label:"",className:"",svgClassName:"calendar-nav__button-icon",size:18})}),n.jsxs("div",{className:"calendar-nav__legend",children:[n.jsx("span",{className:"calendar-nav__legend-dot calendar-nav__legend-dot--main"}),n.jsx("span",{className:"caption-1",children:i("calendar.legend.visited","\uBC29\uBB38")}),n.jsx("span",{className:"calendar-nav__legend-dot calendar-nav__legend-dot--sub"}),n.jsx("span",{className:"caption-1",children:i("calendar.legend.scheduled","\uC608\uC57D")}),n.jsx("span",{className:"calendar-nav__legend-dot calendar-nav__legend-dot--disabled"}),n.jsx("span",{className:"caption-1",children:i("calendar.legend.noVisit","\uBBF8\uBC29\uBB38")})]})]}),n.jsxs("div",{className:"calendar-grid",children:[l.map(k=>n.jsx("div",{className:"calendar-day-header body-3",children:k},k)),w.map((k,v)=>{if(k===null)return n.jsx("div",{className:"calendar-cell empty"},`empty-${v}`);const B=k,A=_(B),N=f[A]??[],E=h===A;return n.jsxs("div",{className:`calendar-cell${x(B)?" today":""}${E?" drag-over":""}${r?" calendar-cell--clickable":""}`,role:r?"button":void 0,tabIndex:r?0:void 0,"aria-label":r?i("calendar.addOnDate",{date:A}):void 0,"aria-current":x(B)?"date":void 0,onClick:r?()=>r(A):void 0,onKeyDown:r?T=>{T.target===T.currentTarget&&(T.key!=="Enter"&&T.key!==" "||(T.preventDefault(),r(A)))}:void 0,onDragOver:a?T=>{T.preventDefault(),g(A)}:void 0,onDragLeave:a?T=>{T.currentTarget.contains(T.relatedTarget)||g(null)}:void 0,onDrop:a?T=>{T.preventDefault(),y.current!=null&&(a(y.current,A),y.current=null),g(null)}:void 0,children:[n.jsx("div",{className:"calendar-cell__number body-3",children:B}),N.length>0&&n.jsxs("span",{className:"calendar-cell__visit-count caption-1","aria-label":i("calendar.visitCount",{count:N.length,defaultValue:"\uBC29\uBB38 {{count}}\uAC74"}),children:[n.jsx("span",{className:"calendar-cell__visit-dot","aria-hidden":"true"}),N.length]}),n.jsx("div",{className:"calendar-cell__badges",children:N.map((T,I)=>n.jsxs("div",{draggable:!!a,className:`calendar-visit-badge${T.status==="noVisit"?" calendar-visit-badge--no-visit":T.status==="scheduled"?" calendar-visit-badge--scheduled":""}${t?" calendar-visit-badge--clickable":""}${a?" calendar-visit-badge--draggable":""}`,onDragStart:a?R=>{y.current=T.id,R.dataTransfer.effectAllowed="move"}:void 0,onDragEnd:a?()=>{y.current=null,g(null)}:void 0,onClick:t?R=>{R.stopPropagation(),t(T)}:void 0,...oc(t?()=>t(T):void 0),"aria-label":[T.time?ui(T.time,i):null,T.customer,i(T.status==="noVisit"?"calendar.legend.noVisit":T.status==="scheduled"?"calendar.legend.scheduled":"calendar.legend.visited")].filter(Boolean).join(" "),children:[T.time&&n.jsx("span",{className:"calendar-visit-badge__time body-3",children:ui(T.time,i)}),n.jsx("span",{className:"calendar-visit-badge__name body-3",children:T.customer}),T.status==="noVisit"&&n.jsx("span",{className:"calendar-visit-badge__no-visit caption-1",children:i("calendar.legend.noVisit","\uBBF8\uBC29\uBB38")})]},T.id??I))})]},B)})]})]})}const _y={page:"h3",pagePopup:"h4",popup:"h5"};function na({type:e="page",title:t,headingLevel:a,icon:r,action:s,disc:i,children:l,inGrid:c=!1,className:d,style:u}){const p=_y[e],m=t||i||s||r,h=a?`h${a}`:"div";return n.jsxs("div",{className:De("section",`section--${e}`,c&&"section--in-grid",d),style:u,children:[m&&n.jsxs("div",{className:"section__header",children:[n.jsxs("div",{className:"section__title-row",children:[r&&n.jsx(Ue,{icon:r,label:typeof t=="string"?t:void 0,className:"section__icon"}),n.jsxs("div",{className:"section__title-group",children:[t&&n.jsx(h,{className:`section__title ${p}`,children:t}),i&&n.jsx("div",{className:"section__disc body-3",children:i})]})]}),s&&n.jsx("div",{className:"section__action",children:s})]}),l]})}let bo=null,sc=!1;function ic(){if(sc||typeof document>"u")return;sc=!0,document.addEventListener("keydown",t=>{t.metaKey||t.ctrlKey||t.altKey||(bo="keyboard")},!0);const e=()=>{bo="pointer"};document.addEventListener("pointerdown",e,!0),document.addEventListener("mousedown",e,!0),document.addEventListener("touchstart",e,{capture:!0,passive:!0})}ic();function Ja(){return ic(),bo==="keyboard"}const Qa=20;function wy(e){const{t}=be.useTranslation(),{type:a,trainingDatas:r,depth:s,renderPopup:i,completedIds:l,selectedIds:c,onItemComplete:d,size:u,useDescriptionTooltip:p,onRemove:m,onMore:h,sectionType:g="page"}=e||{},[,y]=o.useState(0),f=typeof r<"u"?Array.isArray(r)?r:[]:[],w=f.length,[C,b]=o.useState(Math.min(w,Qa)),_=o.useMemo(()=>Array.isArray(s)?[...s,a?.label].filter(Boolean).join(" \xB7 "):[s||"",a?.label].filter(Boolean).join(" \xB7 "),[s,a?.label]);o.useEffect(()=>{b(Math.min(w,Qa))},[w]),el("speechear.data.updated",()=>y(B=>B+1));const x=o.useRef(null),k=o.useRef(null);function v(){const B=document.activeElement;k.current=Ja()&&B&&B.closest?.(".training-block__more")?C:null,b(A=>Math.min(w,A+Qa))}return o.useEffect(()=>{const B=k.current;if(B==null)return;k.current=null;const A=document.activeElement;A&&A!==document.body||x.current?.querySelectorAll(".training-block-button")[B]?.focus()},[C]),n.jsxs(na,{type:g,title:a?.label,icon:a?.icon,disc:a?.desc,className:"training-block",children:[n.jsx("div",{className:"training-list",ref:x,children:(f||[]).slice(0,C).map((B,A)=>{const N=B;return n.jsx(ao,{index:A,type:a,trainingData:N,depth:_,renderPopup:i,completedIds:l,selectedIds:c,size:u,useDescriptionTooltip:p,onRemove:typeof m=="function"&&c!=null&&N?.id!=null&&c.has(String(N.id))?()=>m(N):void 0,onComplete:typeof d=="function"&&N?.id!=null?()=>d(String(N.id)):void 0,onMore:typeof h=="function"?E=>h(N,E):void 0},N?.id!=null?`${a?.key||"t"}-${String(N.id)}`:`${a?.key||"t"}-${A}`)})}),w>Qa&&C<w&&n.jsx("div",{className:"training-block__more",children:n.jsx(pe,{htmlType:"button",size:48,type:"bar",icon:"plus",onClick:v,ariaLabel:t("common.loadMore","\uB354\uBCF4\uAE30"),label:t("common.loadMore","\uB354\uBCF4\uAE30"),variant:"main"})})]})}function yo(e){const t=o.useRef(null),[a,r]=o.useState(!!e),[s,i]=o.useState(!1);o.useEffect(()=>{i(!1);const d=t.current;r(!!e&&!(d?.complete&&d.naturalWidth>0))},[e]);const l=o.useCallback(()=>r(!1),[]),c=o.useCallback(()=>{r(!1),i(!0)},[]);return{imgRef:t,loading:a,failed:s,hasImage:!!e&&!s,onLoad:l,onError:c}}var ky='data:image/svg+xml,<svg width="100" height="100" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2256_7437)">%0A<g opacity="0.1">%0A<path d="M35.7143 25C29.7964 25 25 29.7964 25 35.7143V64.2857C25 67.3786 25.7893 70.2893 27.1714 72.8286C29.7071 74.2143 32.6179 75 35.7143 75H64.2857C70.2036 75 75 70.2036 75 64.2857V35.7143C75 32.6214 74.2107 29.7107 72.8286 27.1714C70.2929 25.7857 67.3821 25 64.2857 25H35.7143Z" fill="%23111111"/>%0A</g>%0A<path d="M57.1426 17.8571H35.7141C25.8533 17.8571 17.8569 25.8536 17.8569 35.7143V44.0643L10.9926 51.6179C10.5819 52.0679 10.6283 52.775 11.0998 53.1643C13.1783 54.8929 15.4641 56.2214 17.8569 57.1679C17.8676 63.925 21.6283 69.8 27.1712 72.825C25.7855 70.2893 24.9998 67.3786 24.9998 64.2821V35.7107C24.9998 29.7929 29.7962 24.9964 35.7141 24.9964H64.2855C67.3783 24.9964 70.2891 25.7857 72.8283 27.1679C69.7998 21.6179 63.9105 17.8536 57.1426 17.8536V17.8571Z" fill="%23111111"/>%0A<path d="M72.8285 27.1714C74.2142 29.7072 75 32.6179 75 35.7143V64.2857C75 70.2036 70.2035 75 64.2857 75H35.7142C32.6214 75 29.7107 74.2107 27.1714 72.8286C30.2 78.3786 36.0892 82.1429 42.8571 82.1429H58.9678C59.9321 82.1429 60.7142 82.925 60.7142 83.8893C60.7142 84.9107 61.5892 85.7215 62.6071 85.6322C73.5535 84.675 82.1428 75.4822 82.1428 64.2857V42.8572C82.1428 36.0893 78.3785 30.2 72.8285 27.1714Z" fill="%23111111"/>%0A<path d="M36.0714 40.7143C36.0714 39.5308 35.112 38.5714 33.9285 38.5714C32.745 38.5714 31.7856 39.5308 31.7856 40.7143V45C31.7856 46.1834 32.745 47.1428 33.9285 47.1428C35.112 47.1428 36.0714 46.1834 36.0714 45V40.7143Z" fill="%23111111"/>%0A<path d="M46.7859 57.1429C45.743 57.1429 44.6966 56.875 43.7502 56.3286C42.8966 55.8357 42.6037 54.7429 43.1002 53.8893C43.593 53.0357 44.6859 52.7429 45.5395 53.2393C46.518 53.8036 47.7573 53.6429 48.5537 52.8464C48.9395 52.4607 49.1823 51.9714 49.2573 51.4357C49.5787 49.1607 50.5823 47 52.1645 45.1857C53.1073 44.1071 53.6037 42.7214 53.568 41.2857C53.493 38.3536 51.1466 35.9107 48.2216 35.7286C47.2323 35.6679 46.2859 35.8464 45.4073 36.2679C44.518 36.6929 43.4502 36.3107 43.0287 35.4214C42.6037 34.5321 42.9859 33.4643 43.8752 33.0429C45.2895 32.3714 46.868 32.0679 48.4466 32.1643C53.2037 32.4607 57.0216 36.4286 57.1395 41.1964C57.1966 43.5286 56.3859 45.7786 54.8573 47.5357C53.7323 48.825 53.018 50.3464 52.7966 51.9357C52.6109 53.2464 52.018 54.4357 51.0823 55.375C49.9145 56.5429 48.3609 57.15 46.7895 57.15L46.7859 57.1429Z" fill="%23111111"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2256_7437">%0A<rect width="100" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A';const Ay=ky,vo=o.forwardRef(function({item:e,disabled:t=!1,onPlayDone:a,selectable:r=!1,selected:s=!1,onSelect:i,flipDelay:l=0,hideLabel:c=!1,hideAudio:d=!1,orderRank:u=null},p){const{t:m}=be.useTranslation(),h=e.word||e.title||"",g=t||!h,y=e.audio??e.sound??e.audioKey,f=e.subLabel||e.pronunciation||"",w=e.colloquialLabel||"",[C,b]=o.useState({label:h,subLabel:f,colloquialLabel:w,homonum:e.homonum});h&&(C.label!==h||C.subLabel!==f||C.colloquialLabel!==w||!Object.is(C.homonum,e.homonum))&&b({label:h,subLabel:f,colloquialLabel:w,homonum:e.homonum});const _=o.useRef(null),x=Zt("(max-width: 767px)"),[k,v]=o.useState(!1),B=`${typeof y=="string"?y:y?.src??""}\0${h}`,[A,N]=o.useState({for:"",url:""}),E=A.for===B?A.url:"",T=ni(),I=e.textOnly??(!e.image&&!!C.label&&!!T&&T.entries.length>0&&!T.byWord.has(C.label)),R=I?"":Gn()?.(C.label,C.homonum)??e.image??"",{imgRef:V,loading:j,hasImage:M,onLoad:F,onError:U}=yo(R);o.useEffect(()=>{let H=!1;return(async()=>{if(y){if(typeof y=="string"){if(y.startsWith("http")||y.includes("/")){N({for:B,url:y});return}}else if(typeof y=="object"&&!Array.isArray(y)){const Y=y.src;if(Y){N({for:B,url:Y});return}}}const $=Br();if($&&h)try{const Y=await Promise.resolve($(h));!H&&Y&&N({for:B,url:Y})}catch{}})(),()=>{H=!0}},[y,h,B]);const Q=o.useRef(!0),z=o.useRef(null);o.useEffect(()=>(Q.current=!0,()=>{Q.current=!1,z.current&&Ka(z.current),z.current=null;try{_.current?.pause()}catch{}_.current=null}),[]);const G=o.useCallback(()=>new Promise(H=>{if(typeof window<"u"&&window.speechSynthesis&&h){v(!0),window.speechSynthesis.cancel();const $=new SpeechSynthesisUtterance(h);$.lang="ko-KR",$.onend=()=>{v(!1);try{a?.()}catch{}H()},$.onerror=()=>{v(!1),H()},window.speechSynthesis.speak($)}else H()}),[h,a]),W=o.useCallback(H=>new Promise($=>{let Y=!1;const ee=()=>{Y||(Y=!0,v(!1),$(!1))};try{const Z=new Audio(H);_.current=Z,Z.onended=()=>{if(!Y){Y=!0,v(!1);try{a?.()}catch{}$(!0)}},Z.onerror=ee,Z.play().catch(ee)}catch{ee()}}),[a]),L=o.useCallback(async()=>{if(t||!Q.current)return;const H=()=>{z.current===H&&(z.current=null);try{_.current?.pause()}catch{}try{window.speechSynthesis?.cancel()}catch{}v(!1)},$=Ga(H);z.current=H;try{window.speechSynthesis?.cancel()}catch{}try{if(E&&(v(!0),await W(E)))return;const Y=Q0();if(Y&&h)try{const ee=await Promise.resolve(Y(h));if(!Q.current||z.current!==H||ee&&(v(!0),await W(ee)))return}catch{}if(!Q.current||z.current!==H)return;await G()}finally{$(),z.current===H&&(z.current=null)}},[t,E,h,W,G]);o.useImperativeHandle(p,()=>({play:()=>L()}),[L]);const D=H=>H.stopPropagation(),O=o.useCallback(H=>{if(H.stopPropagation(),!t){if(k){try{_.current?.pause()}catch{}try{window.speechSynthesis?.cancel()}catch{}v(!1);return}L()}},[t,k,L]),P=De("training-word-card",t?"training-word-card--disabled":"",g?"training-word-card--flipped":"",r?"training-word-card--selectable":"",s?"training-word-card--selected":"");return n.jsx("div",{className:P,onClick:r&&!t?i:void 0,role:r?"button":void 0,"aria-pressed":r?s:void 0,tabIndex:r&&!t?0:void 0,"aria-disabled":r&&t?!0:void 0,onKeyDown:r&&!t?H=>{H.target===H.currentTarget&&(H.key==="Enter"||H.key===" "||H.key==="Spacebar")&&(H.preventDefault(),i?.())}:void 0,children:n.jsxs("div",{className:"training-word-card__flipper",style:{transitionDelay:g?"0ms":`${l}ms`},children:[n.jsxs("div",{className:"training-word-card__front",children:[s&&n.jsx("div",{className:"training-word-card__selected-badge",onClick:D,children:n.jsx(ft,{type:"dot",size:40,position:"inline",animate:!0,icon:u!=null?void 0:"check",number:u??void 0,"aria-label":u!=null?m("training.nthSelected",{n:u}):m("training.selected","\uC120\uD0DD\uB428")})}),n.jsx("div",{className:"training-word-card__image-wrap",children:I?n.jsx("div",{className:"training-word-card__text-face",children:C.label}):M?n.jsxs(n.Fragment,{children:[j&&n.jsx("div",{className:"training-word-card__spinner"}),n.jsx("img",{ref:V,className:"training-word-card__image",src:R,alt:C.label||m("common.image","\uC774\uBBF8\uC9C0"),style:{opacity:j?0:1},onLoad:F,onError:U})]}):n.jsx("div",{className:"training-word-card__placeholder"})}),!c&&n.jsxs("div",{className:"training-word-card__body",children:[!I&&n.jsx("div",{className:"training-word-card__word",children:C.label}),C.subLabel&&n.jsxs("div",{className:"training-word-card__pronunciation",children:["[",C.subLabel,"]"]}),C.colloquialLabel&&n.jsxs("div",{className:"training-word-card__colloquial caption-1",children:["[",C.colloquialLabel,"]"]})]}),!d&&n.jsx("div",{className:"training-word-card__bottom",onClick:r?D:void 0,children:n.jsx(pe,{htmlType:"button",size:x?40:48,type:x?"dot":"bar",icon:k?"pause":"play",label:x?void 0:m("training.playSound","\uC18C\uB9AC \uB4E3\uAE30"),selected:k,onClick:O,disabled:t,ariaLabel:m("training.playSound","\uC18C\uB9AC \uB4E3\uAE30")})})]}),n.jsx("div",{className:"training-word-card__back","aria-hidden":"true",children:n.jsx("img",{src:Ay,className:"training-word-card__disabled-symbol",alt:"",draggable:!1})})]})})}),By=260;function Dn(e){const{t}=be.useTranslation(),{title:a,subtitle:r,headerActions:s,headerSegment:i,children:l,buttons:c,footer:d,footerStart:u,footerEnd:p,footerClassName:m="",footerLayout:h="center",onClose:g,closeDisabled:y=!1,beforeClose:f,closeOnBackdrop:w=!0,className:C="",ariaLabel:b,useTitle:_=!0,inline:x=!1,size:k,layer:v="modal",height:B,fillBody:A=!1,resetScrollKey:N}=e||{},[E,T]=o.useState(!1),I=o.useRef(!1),R=o.useRef(null),V=o.useId(),j=o.useRef(null);o.useEffect(()=>{},[x,a,b,C]),o.useEffect(()=>{N!==void 0&&j.current&&(j.current.scrollTop=0)},[N]);const[M,F]=o.useState(!1);o.useEffect(()=>{const Z=j.current;if(!Z)return;const ae=()=>F(Z.scrollHeight>Z.clientHeight+1);if(ae(),typeof ResizeObserver>"u")return;const _e=new ResizeObserver(ae);_e.observe(Z);const re=Z.firstElementChild;return re&&_e.observe(re),()=>_e.disconnect()},[l,N]),o.useEffect(()=>{if(!x)return $l()},[x]),o.useEffect(()=>{if(x)return;const Z=document.activeElement,ae=R.current;return Fr(ae,Z),ae&&!ae.contains(document.activeElement)&&(ae.querySelector(Cn)??ae).focus(),()=>{const _e=document.activeElement;(!_e||_e===document.body||ae&&ae.contains(_e))&&Or(Z)?.focus?.()}},[x]),Pr(R,!x);const U=o.useRef(!0),Q=Hr(),z=o.useRef(null);o.useEffect(()=>(U.current=!0,()=>{U.current=!1,z.current&&(clearTimeout(z.current),z.current=null)}),[]);const G=o.useCallback(()=>{!U.current||!I.current||(I.current=!1,T(!1))},[]),W=o.useCallback((Z,ae=!1)=>{if(ae&&!U.current||I.current)return;I.current=!0,T(!0);const _e=setTimeout(()=>{z.current===_e&&(z.current=null);let re;try{re=Z?Z():void 0}catch{G();return}re&&typeof re.then=="function"&&re.then(()=>{setTimeout(G,120)},G)},Q?0:By);ae&&(z.current=_e)},[G,Q]),L=o.useCallback(()=>{y||f&&f()===!1||W(g,!0)},[W,g,y,f]),D=o.useRef(L);o.useEffect(()=>{D.current=L});const O=!x&&!!g;o.useEffect(()=>{if(O)return In(()=>D.current())},[O]);const P=O&&w,H=o.useRef(!1),$=Z=>{H.current=Z.target===Z.currentTarget},Y=Z=>{const ae=H.current;H.current=!1,ae&&Z.target===Z.currentTarget&&L()},ee=n.jsx("div",{className:`popup ${x?"popup--inline":""} ${v==="belowPagePopup"?"popup--below-page-popup":""} ${E?"popup--closing":""} ${C}`,onPointerDown:P?$:void 0,onClick:P?Y:void 0,onMouseDown:x?void 0:Z=>{Z.target===Z.currentTarget&&Z.preventDefault()},children:n.jsxs("div",{ref:R,className:`popup-panel${k?` popup-panel--${k}`:""}${B!=null?" popup-panel--has-height":""}${A?" popup-panel--fill-body":""}`,style:B!=null?{"--popup-height":typeof B=="number"?`${B}px`:B}:void 0,tabIndex:-1,role:x?void 0:"dialog","aria-modal":x?void 0:!0,"aria-labelledby":!x&&_&&a?V:void 0,"aria-label":!x&&!(_&&a)?b??(typeof a=="string"?a:void 0):void 0,children:[!_&&(s||g)?n.jsxs("div",{className:"popup-close-float",children:[s,g&&n.jsx(pe,{htmlType:"button",size:40,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,onClick:L,disabled:y,ariaLabel:t("common.close","\uB2EB\uAE30")})]}):a||s||g?n.jsxs("div",{className:`popup-header${r?" popup-header--with-subtitle":""}`,children:[n.jsxs("div",{className:"popup-header-main",children:[n.jsx("span",{id:V,className:"popup-title popup-title--left h2",children:a}),r&&n.jsx("span",{className:"popup-subtitle body-3",children:r})]}),i&&n.jsx("div",{className:"popup-header-segment",children:n.jsx(xn,{size:40,ariaLabel:i.ariaLabel,options:i.options.map(Z=>({key:Z.key,label:Z.label,disabled:Z.disabled})),value:i.value,onChange:i.onChange})}),n.jsxs("div",{className:"popup-header-actions",children:[s,g&&n.jsx(pe,{htmlType:"button",size:40,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,onClick:L,disabled:y,ariaLabel:t("common.close","\uB2EB\uAE30")})]})]}):null,n.jsx("div",{className:"popup-content",ref:j,tabIndex:M?0:void 0,children:n.jsx("div",{className:"popup-content__inner",children:typeof l=="function"?l({animateThen:W,closeWithAnimation:L}):l})}),u||p?n.jsxs("div",{className:`popup-footer popup-footer--bar${m?` ${m}`:""}`,children:[n.jsx("div",{className:"popup-footer__start",children:typeof u=="function"?u({animateThen:W,closeWithAnimation:L}):u}),n.jsx("div",{className:"popup-footer__end",children:typeof p=="function"?p({animateThen:W,closeWithAnimation:L}):p})]}):c?.length?n.jsx("div",{className:`popup-footer popup-footer--buttons${h!=="center"?` popup-footer--${h}`:""}`,children:c.map((Z,ae)=>n.jsx(pe,{htmlType:"button",size:48,variant:Z.variant??"default",label:Z.label,disabled:Z.disabled,onClick:()=>Z.onClick?.({animateThen:W,closeWithAnimation:L})},ae))}):d?n.jsx("div",{className:`popup-footer${h!=="center"?` popup-footer--${h}`:""}${m?` ${m}`:""}`,children:typeof d=="function"?d({animateThen:W,closeWithAnimation:L}):d}):null]})});return x||typeof document>"u"?ee:Ut.createPortal(ee,document.body)}function er(e){return String(e)}const tr=["o","triangle","x"];function lc(e,t){return e===t?null:t}const cc={o:"circle",triangle:"triangle",x:"x"},uc={o:"main",triangle:"warn",x:"danger"};function Ny(e){let t=0,a=0,r=0;for(const i of Object.values(e))i==="o"?t++:i==="triangle"?a++:i==="x"&&r++;const s=t+a+r;return{marked:s,o:t,triangle:a,x:r,rate:s===0?null:(t+a*.5)/s}}function xo(e){const t={};for(const[a,r]of Object.entries(e))(r==="o"||r==="triangle"||r==="x")&&(t[a]=r);return t}function dc(e){const t=[];let a=0;for(const r of e)t.push(a),a+=r;return t}function Ey(e,t){return!t&&e>0}const aa={landscape:{width:1123,height:794,printSize:"A4 landscape",printW:"297mm",printH:"210mm"},portrait:{width:794,height:1123,printSize:"A4 portrait",printW:"210mm",printH:"297mm"}};function Dy(e="landscape"){fn("print-word-table-deprecated","[printWordTable] @deprecated \u2014 WordTablePopup renderButtons \uC758 print(\uB610\uB294 useWordTablePrint().print)\uB97C \uC4F0\uC138\uC694. \uC804\uC5ED \uC778\uC1C4\uB294 \uD654\uBA74\uC758 \uBAA8\uB4E0 \uB2E8\uC5B4\uD45C\uB97C \uD568\uAED8 \uCC0D\uC2B5\uB2C8\uB2E4.");const{printSize:t,printW:a,printH:r}=aa[e],s=document.createElement("style");s.textContent=`@page { size: ${t}; margin: 0; } .word-table { width: ${a} !important; height: ${r} !important; }`,document.head.appendChild(s);const i=()=>{document.head.removeChild(s),window.removeEventListener("afterprint",i)};window.addEventListener("afterprint",i),window.print()}function pc(e,t){if(e.length===0)return[[]];const a=Math.max(1,Math.floor(t)),r=[];for(let s=0;s<e.length;s+=a)r.push(e.slice(s,s+a));return r}const Sy={landscape:{1:{cols:1,rows:1},2:{cols:2,rows:1},3:{cols:3,rows:1},4:{cols:2,rows:2},5:{cols:3,rows:2},6:{cols:3,rows:2},7:{cols:4,rows:2},8:{cols:4,rows:2},9:{cols:5,rows:2},10:{cols:5,rows:2},11:{cols:4,rows:3},12:{cols:4,rows:3}},portrait:{1:{cols:1,rows:1},2:{cols:1,rows:2},3:{cols:1,rows:3},4:{cols:1,rows:4},5:{cols:1,rows:5},6:{cols:2,rows:3},7:{cols:2,rows:4},8:{cols:2,rows:4},9:{cols:2,rows:5},10:{cols:2,rows:5},11:{cols:3,rows:4},12:{cols:3,rows:4}}};function jy(e,t){const a=Sy[e][t];if(a)return a;const r=Math.max(1,Math.ceil(t)),s=Math.max(1,Math.ceil(Math.sqrt(r*.707)));let i,l;return e==="landscape"?(l=s,i=Math.ceil(r/l)):(i=s,l=Math.ceil(r/i)),(e==="landscape"?i<l:l<i)&&([i,l]=[l,i]),{cols:i,rows:l}}const Ty={\uD45C\uC2DC:"word-table-block__content--cut-show",\uC810\uC120:"",\uCF54\uB108:"word-table-block__content--cut-corner",\uBBF8\uD45C\uC2DC:""},mc={\uBA85:"\uBA85\uC0AC",\uB3D9:"\uB3D9\uC0AC",\uD615:"\uD615\uC6A9\uC0AC",\uBD80:"\uBD80\uC0AC",\uC218:"\uC218\uC0AC",\uAD00:"\uAD00\uD615\uC0AC",\uAC10:"\uAC10\uD0C4\uC0AC",\uC870:"\uC870\uC0AC",\uC811:"\uC811\uC0AC",\uC758:"\uC758\uC874\uBA85\uC0AC",\uB300:"\uB300\uBA85\uC0AC",\uBCF4\uB3D9:"\uBCF4\uC870\uB3D9\uC0AC",\uBCF4\uD615:"\uBCF4\uC870\uD615\uC6A9\uC0AC"},hc={\uACE0\uC720:"\uACE0\uC720\uC5B4",\uD55C\uC790:"\uD55C\uC790\uC5B4",\uC678\uB798:"\uC678\uB798\uC5B4",\uD63C\uC885:"\uD63C\uC885\uC5B4"};function _o(e,t){return e?e.split("/").map(a=>t[a]??a).join("/"):""}function fc(e,t,a,r){if(r!=="\uC810\uC120")return{};const s=e%t,i=Math.floor(e/t),l=s<t-1,c=i<a-1;if(!l&&!c)return{};const d="#ddd",u=g=>`repeating-linear-gradient(to ${g}, ${d} 0, ${d} 5px, transparent 5px, transparent 10px)`,p=[],m=[],h=[];return l&&(p.push(u("bottom")),m.push("1px 100%"),h.push("right center")),c&&(p.push(u("right")),m.push("100% 1px"),h.push("center bottom")),{backgroundImage:p.join(", "),backgroundSize:m.join(", "),backgroundPosition:h.join(", "),backgroundRepeat:"no-repeat",printColorAdjust:"exact",WebkitPrintColorAdjust:"exact"}}const My=280,Ly=240,$y=280,Ry=400,Py=120,Iy=280;function Cc(e,t){const a=o.useRef(null),[r,s]=o.useState(1),[i,l]=o.useState(0),c=o.useCallback((d,u)=>{if(!(d>0))return;const p=d/e,m=t&&u>0?u/t:1/0,h=Math.min(1,p,m);s(h),l(Math.max(0,(d-e*h)/2))},[e,t]);return o.useEffect(()=>{const d=a.current;if(!d)return;const u=t?d.parentElement??d:d;if(c(u.clientWidth,u.clientHeight),typeof ResizeObserver>"u")return;const p=new ResizeObserver(([m])=>c(m.contentRect.width,m.contentRect.height));return p.observe(u),()=>p.disconnect()},[c,t]),{scalerRef:a,scale:r,offset:i}}const Fy={position:"absolute",width:1,height:1,margin:-1,padding:0,overflow:"hidden",clipPath:"inset(50%)",whiteSpace:"nowrap",border:0},Oy=400,gc=8;function bc({label:e,subLabel:t,colloquialLabel:a,homonum:r,showWord:s=!0,showImage:i=!0,showPronunciation:l=!0,showColloquial:c=!0,buttonSize:d=40,wordInfo:u}){const{t:p}=be.useTranslation(),m=o.useRef(null),h=o.useRef(null),g=o.useRef(null),[y,f]=o.useState(1),[w,C]=o.useState(!1),[b,_]=o.useState({for:"",url:""}),[x,k]=o.useState(null),v=t&&t.length>0?t:t2()?.(e,r)??"",B=Gn()?.(e,r)??"",{imgRef:A,loading:N,failed:E,onLoad:T,onError:I}=yo(B),R=o.useCallback(()=>k(h.current?.getBoundingClientRect()??null),[]),V=o.useCallback(()=>k(null),[]),j=Vr(!!x,O=>{O?R():V()},h),M=o.useMemo(()=>{if(!u)return null;const O=[];return u.grade&&O.push(p("wordTable.info.grade",{n:u.grade,defaultValue:"\uB09C\uC774\uB3C4: {{n}}\uB4F1\uAE09"})),u.syllables&&O.push(p("wordTable.info.syllables",{n:u.syllables,defaultValue:"\uC74C\uC808 \uC218: {{n}}\uC74C\uC808"})),u.pos&&O.push(p("wordTable.info.pos",{v:_o(u.pos,Hy(p)),defaultValue:"\uD488\uC0AC: {{v}}"})),u.wordType&&O.push(p("wordTable.info.wordType",{v:_o(u.wordType,zy(p)),defaultValue:"\uC720\uD615: {{v}}"})),O.length?O:null},[u,p]),F=v||e,U=b.for===F?b.url:"";o.useEffect(()=>{const O=Br(),P=v||e;if(!O||!P)return;let H=!1;return Promise.resolve(O(P)).then($=>{!H&&$&&_({for:P,url:$})}),()=>{H=!0}},[v,e]);const Q=o.useRef(null),z=o.useRef(null);o.useEffect(()=>()=>{g.current?.pause(),z.current?.()},[]);const G=o.useCallback(async O=>{if(O.stopPropagation(),w){Q.current?.();return}if(U){C(!0);try{const P=new Audio(U);g.current=P;const H=()=>{C(!1),z.current?.()},$=()=>{P.pause(),H()};Q.current=$;const Y=Ga($);z.current=Y,P.onended=H,P.onerror=H,await P.play()}catch{C(!1),z.current?.()}}},[w,U]),W=i&&!!B&&!E,L=W&&s?My:W?$y:Ly,D=W&&s?Ry:W?Iy:Py;return o.useEffect(()=>{const O=m.current;if(!O||typeof ResizeObserver>"u")return;const P=new ResizeObserver(([H])=>{const{width:$,height:Y}=H.contentRect;f(Math.min($/L,Y/D))});return P.observe(O),()=>P.disconnect()},[L,D]),n.jsxs("div",{ref:m,className:De("word-table-cell",W?"word-table-cell--with-image":""),children:[n.jsxs("div",{className:"word-table-cell__inner",style:{transform:`scale(${y})`},children:[W&&n.jsxs("div",{className:"word-table-cell__image-wrap",children:[N&&n.jsx("div",{className:"word-table-cell__spinner"}),n.jsx("img",{ref:A,className:"word-table-cell__image",src:B,alt:e,draggable:!1,style:{opacity:N?0:1},onLoad:T,onError:I})]}),s&&n.jsx("span",{className:"word-table-cell__word h0",children:e}),l&&v&&n.jsxs("span",{className:"word-table-cell__sub h3",children:["[",v,"]"]}),c&&a&&n.jsxs("span",{className:"word-table-cell__colloquial h5",children:["[",a,"]"]})]}),n.jsxs("div",{className:"word-table-cell__play-button","data-audio-src":U,children:[n.jsx("span",{"data-play-state":"play",style:{display:w?"none":void 0},children:n.jsx(pe,{htmlType:"button",size:d,type:"dot",icon:"play",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:p("common.play","\uC7AC\uC0DD"),onClick:G})}),n.jsx("span",{"data-play-state":"pause",style:{display:w?void 0:"none"},children:n.jsx(pe,{htmlType:"button",size:d,type:"dot",icon:"pause",useBorder:!1,selected:!0,showTooltipInfo:p("common.pause","\uBA48\uCDA4"),onClick:G})})]}),u&&n.jsxs("div",{ref:h,className:"word-table-cell__info-button",onPointerEnter:O=>{Xn(O)||R()},onPointerLeave:O=>{Xn(O)||V()},onFocus:()=>{Jn()||R()},onBlur:V,children:[n.jsx(pe,{htmlType:"button",size:d,type:"dot",icon:"info",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:!1,ariaLabel:p("wordTable.wordInfo","{{word}} \uB0B1\uB9D0 \uC815\uBCF4",{word:e}),onClick:O=>{O.stopPropagation(),j.touchPress()}}),x&&M&&n.jsx(Fn,{anchorRect:x,items:M,showIndex:!1})]})]})}const yc={\uBA85:"noun",\uB3D9:"verb",\uD615:"adjective",\uBD80:"adverb",\uC218:"numeral",\uAD00:"determiner",\uAC10:"interjection",\uC870:"particle",\uC811:"affix",\uC758:"dependentNoun",\uB300:"pronoun",\uBCF4\uB3D9:"auxVerb",\uBCF4\uD615:"auxAdjective"},vc={\uACE0\uC720:"native",\uD55C\uC790:"sino",\uC678\uB798:"foreign",\uD63C\uC885:"mixed"};function Hy(e){return Object.fromEntries(Object.entries(mc).map(([t,a])=>[t,yc[t]?e(`wordTable.pos.${yc[t]}`,{defaultValue:a}):a]))}function zy(e){return Object.fromEntries(Object.entries(hc).map(([t,a])=>[t,vc[t]?e(`wordSearch.filter.type.${vc[t]}`,{defaultValue:a}):a]))}function ra({title:e,titleIcon:t,disc:a,className:r,orientation:s="landscape",contentTypes:i=["\uC774\uBBF8\uC9C0","\uB2E8\uC5B4","\uD45C\uC900 \uBC1C\uC74C"],cutLine:l="\uD45C\uC2DC",showOutline:c=!0,showDivLine:d=!0,items:u,editCells:p,count:m,activeCell:h=null,onActivateCell:g,onRemoveCell:y,onRemoveItem:f,onReorder:w,renderCellAction:C,showFillerAdd:b=!1,contentRef:_,buttonSize:x=40,pageNumber:k,pageNumberPosition:v="right",fitHeight:B=!1,scoring:A=!1,marks:N,onMarkClick:E,scoreIndexOffset:T=0}){const I=o.useCallback((ie,ye)=>{E?.(T+ie,ye)},[E,T]),R=(ie,ye)=>{const se=N?.[er(T+ie)]??null;return n.jsx("div",{className:De("word-table-cell__score",se?"word-table-cell__score--marked":""),style:Me>1?{transform:`translateX(-50%) scale(${Me})`,transformOrigin:"bottom center"}:void 0,children:tr.map(Ie=>n.jsx("span",{className:De("word-table-cell__score-slot",se===Ie?"word-table-cell__score-slot--on":""),children:n.jsx(pe,{htmlType:"button",size:x,type:"dot",icon:cc[Ie],variant:se===Ie?uc[Ie]:"default",selected:se===Ie,useBorder:!1,showTooltipInfo:!1,ariaLabel:V(`wordTable.scoring.${Ie}`,{word:ye,defaultValue:`${ye} ${Ie}`}),onClick:ze=>{ze.stopPropagation(),I(ie,Ie)}})},Ie))})},{t:V}=be.useTranslation(),j=p!==void 0,M=e!=null||!!t||!!a,F=Zt("(max-width: 767px)"),U=o.useRef(null),[Q,z]=o.useState(null),G=u?.length??0,[W,L]=o.useState(null),[D,O]=o.useState(""),P=o.useRef(null),H=o.useRef(null),$=o.useRef(null),Y=o.useRef(null),ee=o.useCallback(ie=>{H.current=ie,typeof _=="function"?_(ie):_&&(_.current=ie)},[_]),Z=o.useCallback((ie,ye)=>{P.current=ye,w?.(ie,ye),O(V("wordTable.reorder.moved",{n:ye+1,total:G,defaultValue:"{{total}}\uCE78 \uAC00\uC6B4\uB370 {{n}}\uBC88\uC9F8\uB85C \uC62E\uAE40"}))},[w,V,G]);o.useEffect(()=>{const ie=P.current;ie!=null&&(P.current=null,H.current?.querySelectorAll(".word-table-block__card:not(.word-table-block__card--filler)")?.[ie]?.querySelector(".word-table-block__card-handle button")?.focus())}),o.useEffect(()=>()=>{Y.current?.()},[]);const ae=o.useCallback((ie,ye)=>{if(!w||!ie.altKey||ie.ctrlKey||ie.metaKey)return;const se=ie.key==="ArrowRight";if(!se&&ie.key!=="ArrowLeft")return;ie.preventDefault();const Ie=ye+(se?1:-1);Ie<0||Ie>=G||Z(ye,Ie)},[w,G,Z]),_e=o.useCallback((ie,ye)=>{if(!w||ie.pointerType==="mouse")return;const se=ie.target.closest?.("button");if(se&&!se.closest(".word-table-block__card-handle"))return;Y.current?.();const Ie={x:ie.clientX,y:ie.clientY};let ze=!1;const Ge=Pe=>{ze&&Pe.cancelable&&Pe.preventDefault()},Ze=Pe=>{if(!ze){(Math.abs(Pe.clientX-Ie.x)>gc||Math.abs(Pe.clientY-Ie.y)>gc)&&Oe();return}const lt=document.elementFromPoint?.(Pe.clientX,Pe.clientY)?.closest?.("[data-wordtable-cell]"),wt=lt?Number(lt.dataset.wordtableCell):NaN,Dt=Number.isInteger(wt)?wt:null;$.current=Dt,z(Dt)},Ye=()=>{const Pe=$.current,lt=ze;Oe(),lt&&Pe!=null&&Pe!==ye&&Z(ye,Pe)},Ke=setTimeout(()=>{ze=!0,L(ye),$.current=ye,z(ye),window.addEventListener("touchmove",Ge,{passive:!1})},Oy);function Oe(){clearTimeout(Ke),window.removeEventListener("pointermove",Ze),window.removeEventListener("pointerup",Ye),window.removeEventListener("pointercancel",Ye),window.removeEventListener("touchmove",Ge),ze=!1,$.current=null,Y.current=null,L(null),z(null)}Y.current=Oe,window.addEventListener("pointermove",Ze),window.addEventListener("pointerup",Ye),window.addEventListener("pointercancel",Ye)},[w,Z]),{width:re,height:ue}=aa[s],q=typeof B=="number"?B:B&&typeof B=="object"?F?B.narrow:B.wide:null,{scalerRef:oe,scale:de,offset:ve}=Cc(re,B?ue:void 0),ge=j?p?.length??0:u?.length??0,Se=Math.max(m??ge,1),{cols:Ce,rows:Ee}=jy(s,Se),Be={word:i.length===0||i.includes("\uB2E8\uC5B4"),image:i.length===0||i.includes("\uC774\uBBF8\uC9C0"),pron:i.length===0||i.includes("\uD45C\uC900 \uBC1C\uC74C"),colloq:i.length===0||i.includes("\uAD6C\uC5B4\uCCB4 \uBC1C\uC74C")},Re=j?(p??[]).some(ie=>ie!==null&&ie.length>1):(u??[]).some(ie=>(ie.words??[]).length>1),Le=De("word-table-block__content",Ty[l],c&&"word-table-block__content--outline",d&&Re&&"word-table-block__content--div-line",k&&v!=="none"&&"word-table-block__content--page-number"),me={transform:`scale(${1/de})`,transformOrigin:"center center"},ke=x*tr.length+4*(tr.length-1),Me=Math.max(1,Math.min(1/de,re/Ce/ke)),Te=n.jsxs("div",{ref:oe,className:"word-table__scaler",style:{height:ue*de},children:[n.jsx("div",{className:De("word-table",!M&&r),style:{width:re,height:ue,transform:`scale(${de})`,transformOrigin:"top left",marginLeft:ve},children:n.jsxs("div",{ref:ee,className:Le,style:{gridTemplateColumns:`repeat(${Ce}, 1fr)`,gridTemplateRows:`repeat(${Ee}, 1fr)`},children:[j?n.jsx(n.Fragment,{children:(p??[]).map((ie,ye)=>n.jsx("div",{className:De("word-table-block__edit-cell",ie?"word-table-block__edit-cell--filled":"word-table-block__edit-cell--empty",h===ye?"word-table-block__edit-cell--active":""),style:fc(ye,Ce,Ee,l),children:ie?n.jsxs(n.Fragment,{children:[ie.map((se,Ie)=>n.jsxs(o.Fragment,{children:[Ie>0&&n.jsx("div",{className:"word-table-block__pair-divider"}),n.jsx(bc,{label:se.word,subLabel:se.pronunciation,colloquialLabel:se.colloquialPronunciation,homonum:se.homonum,showWord:Be.word,showImage:Be.image,showPronunciation:Be.pron,showColloquial:Be.colloq,buttonSize:x})]},Ie)),A&&R(ye,ie.map(se=>se.word).join(" / ")),y&&n.jsx("div",{className:"word-table-block__card-close",children:n.jsx(pe,{htmlType:"button",size:x,type:"dot",icon:"x",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:ie.length>1?V("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):V("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),ariaLabel:ie.length>1?V("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):V("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),onClick:()=>y(ye)})})]}):g&&n.jsx("div",{style:me,children:n.jsx(pe,{htmlType:"button",size:"48",type:"bar",icon:"plus",label:V("wordTable.addWord","\uCD94\uAC00\uD558\uAE30"),onClick:()=>g(ye)})})},ye))}):n.jsxs(n.Fragment,{children:[(u??[]).map((ie,ye)=>n.jsxs("div",{"data-wordtable-cell":w?ye:void 0,className:`word-table-block__card${w?" word-table-block__card--draggable":""}${Q===ye?" word-table-block__card--drag-over":""}${W===ye?" word-table-block__card--dragging":""}`,style:fc(ye,Ce,Ee,l),draggable:!!w,onPointerDown:w?se=>_e(se,ye):void 0,onKeyDown:w?se=>ae(se,ye):void 0,onDragStart:w?()=>{U.current=ye}:void 0,onDragOver:w?se=>{se.preventDefault(),z(ye)}:void 0,onDragLeave:w?()=>z(null):void 0,onDrop:w?se=>{se.preventDefault(),U.current!==null&&U.current!==ye&&w(U.current,ye),U.current=null,z(null)}:void 0,onDragEnd:w?()=>{U.current=null,z(null)}:void 0,children:[(ie.words??[]).map((se,Ie)=>n.jsxs(o.Fragment,{children:[Ie>0&&n.jsx("div",{className:"word-table-block__pair-divider"}),n.jsx(bc,{label:se.label,subLabel:se.subLabel,colloquialLabel:se.colloquialLabel,homonum:se.homonum,showWord:Be.word,showImage:Be.image,showPronunciation:Be.pron,showColloquial:Be.colloq,buttonSize:x,wordInfo:se.grade||se.syllables!=null||se.pos||se.wordType?{grade:se.grade,syllables:se.syllables,pos:se.pos,wordType:se.wordType}:void 0})]},Ie)),A&&R(ye,(ie.words??[]).map(se=>se.label).join(" / ")),w&&n.jsx("div",{className:"word-table-block__card-handle",children:n.jsx(pe,{htmlType:"button",size:x,type:"dot",icon:"grip-vertical",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:V("wordTable.reorder.hint","Alt + \u2190 \u2192 \uB85C \uC21C\uC11C \uBC14\uAFB8\uAE30"),ariaLabel:V("wordTable.reorder.handle",{word:(ie.words??[]).map(se=>se.label).join(" / "),defaultValue:"{{word}} \uC21C\uC11C \uBC14\uAFB8\uAE30 (Alt + \uD654\uC0B4\uD45C)"})})}),(C||f)&&n.jsxs("div",{className:"word-table-block__card-actions",children:[C?.(ye,ie),f&&n.jsx("div",{className:"word-table-block__card-close",children:n.jsx(pe,{htmlType:"button",size:x,type:"dot",icon:"x",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:(ie.words??[]).length>1?V("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):V("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),ariaLabel:(ie.words??[]).length>1?V("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):V("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),onClick:()=>f(ie.id)})})]})]},ie.id)),Array.from({length:Math.max(0,Ce*Ee-(u?.length??0))}).map((ie,ye)=>{const se=(u?.length??0)+ye<Se;return n.jsx("div",{className:"word-table-block__card word-table-block__card--filler",children:b&&g&&se&&n.jsx("div",{style:me,children:n.jsx(pe,{htmlType:"button",size:x,type:"bar",icon:"plus",label:V("wordTable.addWord","\uCD94\uAC00\uD558\uAE30"),onClick:()=>g((u?.length??0)+ye)})})},`filler-${ye}`)})]}),k&&v!=="none"&&n.jsx("span",{className:`word-table__page-number body-3 word-table__page-number--${v}`,children:V("wordTable.filter.pageIndicator",{current:k.current,total:k.total})})]})}),w&&n.jsx("span",{role:"status",style:Fy,children:D})]}),Ae=q==null?Te:n.jsx("div",{className:"word-table__frame",style:{height:q},children:Te});return M?n.jsx(na,{type:"page",icon:t,title:e,disc:a,className:De("word-table-block",r),children:Ae}):Ae}function wn({title:e,headerAction:t,headerSummary:a,collapsible:r=!1,defaultCollapsed:s=!1,collapsed:i,onCollapsedChange:l,footer:c,sections:d,selected:u={},onSelect:p,align:m,sectionAlign:h,className:g}){const y=(m??(h==="vertical"?"newline":"inline"))==="inline",{t:f}=be.useTranslation(),[w,C]=o.useState(s),b=i??w,_=()=>{const v=!b;C(v),l?.(v)},x=v=>{if(!r)return;const B=v.target;!B||typeof B.closest!="function"||B.closest(".filter-panel__collapse-toggle")||B.closest('button, a, input, select, textarea, label, [role="radiogroup"], [role="button"], [role="menu"]')||_()},k=e||t||a||r;return n.jsxs("div",{className:De("filter-panel",r?"filter-panel--collapsible":"",b?"filter-panel--collapsed":"",g),children:[k&&n.jsxs("div",{className:"filter-panel__header",onClick:r?x:void 0,children:[n.jsxs("div",{className:"filter-panel__title-row",children:[r&&n.jsx(pe,{htmlType:"button",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:b?"chevron-down":"chevron-up",className:"filter-panel__collapse-toggle",ariaLabel:b?f("common.expand","\uD3BC\uCE58\uAE30"):f("common.collapse","\uC811\uAE30"),"aria-expanded":!b,onClick:_}),e&&n.jsx("span",{className:"filter-panel__title h4",children:e})]}),n.jsx("div",{className:"filter-panel__header-actions",children:b?a:t})]}),!b&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:De("filter-panel__sections",y?"filter-panel__sections--row":""),children:d.map(v=>{const B=u[v.label],A=B===void 0||(Array.isArray(B)?B.length===0:!1),N=(v.items??[]).filter(T=>T!=null);v.allOption&&N.some(T=>(typeof T=="string"?T:T.value)===ln)&&fn(`filter-panel-all-value:${v.label}`,`[FilterPanel] '${v.label}' \uC808\uC5D0 allOption \uACFC \uAC12 '${ln}' \uC778 \uBCF4\uAE30\uAC00 \uD568\uAED8 \uC788\uB2E4 \u2014 \uB450 \uC120\uD0DD\uC774 \uAD6C\uBCC4\uB418\uC9C0 \uC54A\uB294\uB2E4. \uBCF4\uAE30 \uAC12\uC744 \uBC14\uAFD4\uB77C.`);const E=T=>{const I=typeof T=="string"?T:T.value,R=typeof T!="string"&&!!T.disabled,V=typeof T!="string"?T.labels:void 0,j=typeof T!="string"?T.displayLabel:void 0,M=typeof T!="string"?T.tooltip:void 0,F=typeof T!="string"?T.descriptionTooltip:void 0,U=typeof T!="string"?T.shape:void 0,Q=Array.isArray(B)?B.includes(I):B===I;return n.jsx(pe,{htmlType:"button",size:"keyboard",label:V??j??I,type:v.itemType??(V?"bar":I.length===1?"dot":void 0),selected:Q,disabled:R,shape:U,showTooltipInfo:!!M,tooltipInfoText:M,tooltipDescription:F,onClick:()=>p?.(I,v.label)},I)};return n.jsxs(o.Fragment,{children:[v.groupLabel&&n.jsxs("div",{className:"filter-panel__group-label-row",children:[n.jsx("div",{className:"filter-panel__group-label body-2",children:v.groupLabel}),v.groupAction]}),n.jsxs("div",{className:De("filter-panel__section",v.layout==="row"?"filter-panel__section--row":"",v.block?"filter-panel__section--block":""),children:[n.jsxs("div",{className:"filter-panel__section-label-row",children:[n.jsx("span",{className:"filter-panel__section-label body-3",children:v.displayLabel??v.label}),v.labelAction??(v.labelInfo?n.jsx(Aa,{...v.labelInfo}):null)]}),v.type==="note"?n.jsx("div",{className:"filter-panel__note body-3",children:v.content}):v.type==="input"?n.jsx(zn,{className:"filter-panel__textfield",placeholder:v.placeholder,ariaLabel:v.displayLabel??v.label,value:u[v.label]??"",onChange:T=>p?.(T,v.label),error:v.error}):!v.multiple&&v.display==="segmented"?n.jsx(xn,{ariaLabel:v.displayLabel??v.label,options:[...v.allOption?[{key:ln,label:v.allLabel??f("common.all","\uC804\uCCB4"),disabled:v.allOptionDisabled}]:[],...N.map(T=>{const I=typeof T=="string"?T:T.value,R=typeof T!="string"?T.displayLabel:void 0,V=typeof T!="string"?T.disabled:void 0;return{key:I,label:R??I,disabled:V}})],value:A&&v.allOption?ln:u[v.label]??"",onChange:T=>p?.(T,v.label),size:32}):!v.multiple&&v.display==="dropdown"?n.jsx(en,{className:"filter-panel__dropdown",size:40,options:[...v.allOption?[{value:ln,label:v.allLabel??f("common.all","\uC804\uCCB4"),disabled:v.allOptionDisabled}]:[],...N.map(T=>{const I=typeof T=="string"?T:T.value,R=typeof T!="string"?T.displayLabel:void 0,V=typeof T!="string"?T.disabled:void 0;return{value:I,label:R??I,disabled:V}})],value:A&&v.allOption?ln:u[v.label],onChange:T=>p?.(T,v.label)}):n.jsxs("div",{className:v.groups?"filter-panel__item-groups":"filter-panel__items",children:[v.allOption&&!v.groups&&n.jsx(pe,{htmlType:"button",size:"keyboard",label:v.allLabel??f("common.all","\uC804\uCCB4"),selected:A,disabled:v.allOptionDisabled,onClick:()=>p?.(ln,v.label)}),v.groups?v.groups.map((T,I)=>n.jsxs("div",{className:"filter-panel__item-group",children:[I===0&&v.allOption&&n.jsx(pe,{htmlType:"button",size:"keyboard",label:v.allLabel??f("common.all","\uC804\uCCB4"),selected:A,disabled:v.allOptionDisabled,onClick:()=>p?.(ln,v.label)}),T.filter(R=>R!=null).map(E)]},I)):N.map(E)]})]})]},v.label)})}),c!=null&&c!==!1&&n.jsx("div",{className:"filter-panel__footer body-3",children:c})]})]})}const Vy=[1,2,3,4,5,6,7,8,9,10,11,12],xc=[8,4,2,1];function _c(e,t){return{label:e("wordTable.filter.composition","\uAD6C\uC131"),items:[{value:"\uC774\uBBF8\uC9C0",disabled:!t.hasImage,displayLabel:e("wordTable.filter.image","\uC774\uBBF8\uC9C0")},{value:"\uB2E8\uC5B4",displayLabel:e("wordTable.filter.word","\uB2E8\uC5B4")},{value:"\uD45C\uC900 \uBC1C\uC74C",displayLabel:e("wordTable.filter.standardPron","\uD45C\uC900 \uBC1C\uC74C")},{value:"\uAD6C\uC5B4\uCCB4 \uBC1C\uC74C",disabled:!t.hasColloquial,displayLabel:e("wordTable.filter.colloquialPron","\uAD6C\uC5B4\uCCB4 \uBC1C\uC74C")}],multiple:!0,allOption:!0}}function wc(e){return{label:e("wordTable.filter.paperOrientation","\uC6A9\uC9C0 \uBC29\uD5A5"),items:[{value:"\uAC00\uB85C",displayLabel:e("wordTable.filter.landscape","\uAC00\uB85C")},{value:"\uC138\uB85C",displayLabel:e("wordTable.filter.portrait","\uC138\uB85C")}],display:"segmented"}}function kc(e){return{label:e("wordTable.filter.border","\uC678\uACFD\uC120"),items:[{value:"\uD45C\uC2DC",displayLabel:e("wordTable.filter.show","\uD45C\uC2DC")},{value:"\uBBF8\uD45C\uC2DC",displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}function Ac(e){return{label:e("wordTable.filter.cutLine","\uC808\uCDE8\uC120"),items:[{value:"\uD45C\uC2DC",displayLabel:e("wordTable.filter.show","\uD45C\uC2DC")},{value:"\uC810\uC120",displayLabel:e("wordTable.filter.dotted","\uC810\uC120")},{value:"\uCF54\uB108",displayLabel:e("wordTable.filter.corner","\uCF54\uB108")},{value:"\uBBF8\uD45C\uC2DC",displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}function Bc(e){return{label:e("wordPrint.divLine","\uB300\uB9BD\uC120"),items:[{value:"\uD45C\uC2DC",displayLabel:e("wordTable.filter.show","\uD45C\uC2DC")},{value:"\uBBF8\uD45C\uC2DC",displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}function Nc(e,t){return{label:e(t.hasPairs?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord"),items:[t.itemCount,...xc.filter(a=>a<t.itemCount)].map(a=>({value:`${a}\uAC1C`,displayLabel:e("wordTable.filter.itemsPerPageOption",{count:a})})),display:"segmented"}}function Ec(e,t){return e===t||!xc.includes(e)?Number.POSITIVE_INFINITY:e}function Dc(e){return{label:e("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638"),items:[{value:"\uC67C\uCABD",displayLabel:e("wordTable.filter.pageNumberLeft","\uC67C\uCABD")},{value:"\uC911\uC559",displayLabel:e("wordTable.filter.pageNumberCenter","\uC911\uC559")},{value:"\uC624\uB978\uCABD",displayLabel:e("wordTable.filter.pageNumberRight","\uC624\uB978\uCABD")},{value:"\uBBF8\uD45C\uC2DC",displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}const Sc={left:"\uC67C\uCABD",center:"\uC911\uC559",right:"\uC624\uB978\uCABD",none:"\uBBF8\uD45C\uC2DC"};function jc(e){return e==="\uC67C\uCABD"?"left":e==="\uC911\uC559"?"center":e==="\uC624\uB978\uCABD"?"right":"none"}function Tc(e,t){return{[e("wordTable.filter.composition","\uAD6C\uC131")]:t.contentTypes,[e("wordTable.filter.paperOrientation","\uC6A9\uC9C0 \uBC29\uD5A5")]:t.orientation==="landscape"?"\uAC00\uB85C":"\uC138\uB85C",[e("wordTable.filter.border","\uC678\uACFD\uC120")]:t.showOutline?"\uD45C\uC2DC":"\uBBF8\uD45C\uC2DC",[e("wordTable.filter.cutLine","\uC808\uCDE8\uC120")]:t.cutLine,[e("wordPrint.divLine","\uB300\uB9BD\uC120")]:t.showDivLine?"\uD45C\uC2DC":"\uBBF8\uD45C\uC2DC"}}function Mc(e,t,a,r){return a===e("wordTable.filter.composition","\uAD6C\uC131")?t===ln?(r.setContentTypes(()=>[]),!0):(r.setContentTypes(s=>s.includes(t)?s.filter(i=>i!==t):[...s,t]),!0):a===e("wordTable.filter.paperOrientation","\uC6A9\uC9C0 \uBC29\uD5A5")?(r.setOrientation(t==="\uAC00\uB85C"?"landscape":"portrait"),!0):a===e("wordTable.filter.border","\uC678\uACFD\uC120")?(r.setShowOutline(t==="\uD45C\uC2DC"),!0):a===e("wordTable.filter.cutLine","\uC808\uCDE8\uC120")?(r.setCutLine(t),!0):a===e("wordPrint.divLine","\uB300\uB9BD\uC120")?(r.setShowDivLine(t==="\uD45C\uC2DC"),!0):!1}function Wy(e){return"sections"in e}function wo(e){const{t}=be.useTranslation(),{title:a,className:r,collapsible:s,defaultCollapsed:i,collapsed:l,onCollapsedChange:c,headerSummary:d}=e,u={collapsible:s,defaultCollapsed:i,collapsed:l,onCollapsedChange:c,headerSummary:d};if(Wy(e))return n.jsx(wn,{className:r,title:a??t("wordTable.filterTitle","\uD45C \uC124\uC815"),sections:e.sections,selected:e.selected,onSelect:e.onSelect,...u,align:"inline"});const{hasImage:p,hasColloquial:m,contentTypes:h,orientation:g,showOutline:y,cutLine:f,showDivLine:w,setters:C,showCutLine:b=!1,showDivLine2:_=!1,middleSections:x=[],extraSelected:k={},onExtraSelect:v}=e,B=[_c(t,{hasImage:p,hasColloquial:m}),wc(t),...x,kc(t),...b?[Ac(t)]:[],..._?[Bc(t)]:[]],A={...Tc(t,{contentTypes:h,orientation:g,showOutline:y,cutLine:f,showDivLine:w}),...k},N=(E,T)=>{Mc(t,E,T,C)||v?.(E,T)};return n.jsx(wn,{className:r,title:a??t("wordTable.filterTitle","\uD45C \uC124\uC815"),sections:B,selected:A,onSelect:N,...u,sectionAlign:"horizontal"})}function Lc(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}function ko(e){return e.replace(/[\\/:*?"<>|]/g,"_").trim()}let nr=null,oa=null;function qy(e,t,a,r="",s=""){if(e.length===0||oa&&oa.iframe.isConnected&&Date.now()-oa.at<1e4)return;const i=r?ko(r):"";nr?.();let l=null;if(i){const u=document.title;document.title=i,l=()=>{document.title=u,window.removeEventListener("afterprint",l),nr===l&&(nr=null)},nr=l,window.addEventListener("afterprint",l)}const c=document.createElement("iframe");c.style.cssText="position:fixed;left:-10000px;top:0;width:1200px;height:900px;border:0;",document.body.appendChild(c);const d=c.contentDocument;if(!d){c.remove();return}oa={iframe:c,at:Date.now()},d.open(),d.write(Ao(e,t,a,!0,i,s)),d.close(),c.contentWindow?.addEventListener("afterprint",()=>{l?.(),setTimeout(()=>{c.remove(),oa?.iframe===c&&(oa=null)},0)})}function Ao(e,t,a,r=!1,s="",i=""){s=s?ko(s):"";const l=Array.from(document.styleSheets).flatMap(p=>{try{return Array.from(p.cssRules).map(m=>m.cssText)}catch{return[]}}).join(`
|
|
860
|
-
`),c="light",d=i?`<div class="paper-head">${Lc(i)}</div>`:"",u=e.map(p=>{const m=p.cloneNode(!0);return m.querySelectorAll('[data-play-state="play"]').forEach(
|
|
858
|
+
`),h=y===-1?a:a.slice(0,y);i("comment",h),a=a.slice(h.length);continue}if(s&&a.startsWith("#")){const y=a.indexOf(`
|
|
859
|
+
`),h=y===-1?a:a.slice(0,y);i("comment",h),a=a.slice(h.length);continue}const c=a.match(/^\/\*[\s\S]*?\*\//);if(c){i("comment",c[0]),a=a.slice(c[0].length);continue}const d=a.match(/^(`(?:\\.|[^`])*`|"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*')/);if(d){i("string",d[0]),a=a.slice(d[0].length);continue}const u=a.match(/^\d+(?:\.\d+)?/);if(u){i("number",u[0]),a=a.slice(u[0].length);continue}const p=a.match(R4);if(p){i("keyword",p[0]),a=a.slice(p[0].length);continue}const m=a.match(/^[A-Za-z_$][A-Za-z0-9_$-]*/);if(m){const y=m[0];i(s&&$4.has(y)?"command":"identifier",y),a=a.slice(y.length);continue}const f=a.match(/^[=+\-*/%<>!&|^~?:]+/);if(f){i("operator",f[0]),a=a.slice(f[0].length);continue}const g=a.match(/^[()[\]{};.,]/);if(g){i("punctuation",g[0]),a=a.slice(1);continue}i("other",a[0]),a=a.slice(1)}return r}function I4({children:e,language:t="bash",title:a="",showCopy:r=!0,size:s="default",className:i=""}){const{t:l}=be.useTranslation(),[c,d]=o.useState(!1),u=L4(Il(e)),p=o.useRef(null);o.useEffect(()=>()=>{p.current&&clearTimeout(p.current)},[]);const m=async()=>{try{if(!await j2(u))return;d(!0),p.current&&clearTimeout(p.current),p.current=setTimeout(()=>d(!1),2e3)}catch{}},f=P4(u,t),g=s==="small"?"caption-1":"body-3";return n.jsxs("div",{className:De("code-box",s==="small"?"code-box--small":"",i),children:[(a||r)&&n.jsxs("div",{className:"code-box__header",role:"toolbar","aria-label":l("common.codeBlock","\uCF54\uB4DC \uBE14\uB85D"),children:[n.jsx("div",{className:"code-box__title caption-1",children:a}),r&&n.jsx(pe,{htmlType:"button",className:"code-box__copy",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:c?"check":"copy",onClick:m,ariaLabel:c?l("common.copied","\uBCF5\uC0AC\uB428"):l("common.copyCode","\uCF54\uB4DC \uBCF5\uC0AC")})]}),n.jsx("pre",{className:"code-box__inner","data-lang":t,children:n.jsx("code",{children:f.map((y,h)=>n.jsx("span",{className:`code-token ${y.type} ${g}`,children:y.content},h))})})]})}const F4={position:"absolute",width:1,height:1,margin:-1,padding:0,overflow:"hidden",clipPath:"inset(50%)",whiteSpace:"nowrap",border:0};function Ea(e){const{t}=be.useTranslation(),{variant:a="spinner",size:r=24,progress:s=null,label:i}=e||{},l=i||t("loader.loading","Loading");if(a==="bar"){const d=s==null||!Number.isFinite(Number(s)),u=d?0:Math.max(0,Math.min(100,Number(s)));return n.jsx("div",{className:`loader-bar${d?" loader-bar--indeterminate":""}`,role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":d?void 0:u,"aria-label":l,children:n.jsx("div",{className:"loader-bar__inner",style:d?void 0:{width:`${u}%`}})})}const c=typeof r=="number"?`${r}px`:r;return n.jsxs("div",{className:"loader-spinner",style:{width:c,height:c},role:"status","aria-label":l,children:[n.jsx("span",{style:F4,children:l}),n.jsxs("svg",{className:"loader-spinner__svg",viewBox:"0 0 50 50",width:r,height:r,children:[n.jsx("circle",{className:"loader-spinner__bg",cx:"25",cy:"25",r:"20",fill:"none",strokeWidth:"4"}),n.jsx("circle",{className:"loader-spinner__fg",cx:"25",cy:"25",r:"20",fill:"none",strokeWidth:"4",strokeLinecap:"round"})]})]})}function Fl({checked:e,onChange:t,disabled:a=!1,label:r,ariaLabel:s,labelPosition:i="right",className:l="",id:c}){const d=r&&n.jsx("span",{className:"toggle__label body-3",children:r});return n.jsxs("label",{className:`toggle${a?" toggle--disabled":""} ${l}`.trim(),children:[i==="left"&&d,n.jsx("input",{id:c,type:"checkbox",role:"switch",checked:e,disabled:a,onChange:u=>t?.(u.target.checked),"aria-label":!r&&s?s:void 0}),n.jsx("span",{className:"toggle__slider"}),i==="right"&&d]})}function Ol({checked:e=!1,onChange:t,disabled:a,indeterminate:r,label:s,size:i="medium",className:l,title:c,ariaLabel:d}){const u=o.useRef(null),p=o.useId(),m=o.useRef(!!r);return m.current=!!r,o.useEffect(()=>{u.current&&(u.current.indeterminate=!!r)}),n.jsxs("label",{className:De("checkbox",i==="small"&&"checkbox--small",i==="large"&&"checkbox--large",a&&"checkbox--disabled",l),htmlFor:p,title:c,children:[n.jsx("input",{ref:u,id:p,type:"checkbox",className:"checkbox__input",checked:e,onChange:f=>{t?.(f.target.checked),u.current&&(u.current.indeterminate=m.current)},disabled:a,"aria-label":!s&&d?d:void 0}),n.jsx("span",{className:"checkbox__box"}),s&&n.jsx("span",{className:"checkbox__label body-3",children:s})]})}function O4({count:e,actions:t,onClear:a,clearLabel:r,visible:s,content:i,max:l}){const{t:c}=be.useTranslation(),d=s!==void 0?s:e>0,u=r??c("bulkBar.clearSelection","\uC120\uD0DD \uD574\uC81C"),p=o.useRef(null),m=o.useRef(null),f=o.useRef(null),g=o.useRef(d);o.useLayoutEffect(()=>{const b=m.current,x=g.current;if(g.current=d,d&&!x){const v=typeof document<"u"?document.activeElement:null;f.current=v&&v!==document.body&&!b?.contains(v)?v:null}else!d&&x&&b&&b.contains(document.activeElement)&&Va(b,f.current)},[d]);const[y,h]=o.useState(!1),w=o.useRef(!1),C=o.useRef(null);return o.useEffect(()=>{const b=p.current;if(!b)return;const x=B=>{w.current=B,h(B)},v=()=>{const B=b.firstElementChild??b,E=Array.from(B.children);if(E.length<2){x(!1);return}const P=E[0].offsetTop,H=E.some(I=>I.offsetTop!==P);if(!w.current){C.current=b.clientWidth,H&&x(!0);return}if(H)return;const S=E[0],V=E[E.length-1],j=V.offsetLeft+V.offsetWidth-S.offsetLeft,M=C.current;(M==null||j<=M)&&x(!1)};if(v(),typeof ResizeObserver>"u")return;const A=new ResizeObserver(v);A.observe(b);const k=b.parentElement;let N=k?.clientWidth??0;const _=new ResizeObserver(()=>{const B=k?.clientWidth??0;B!==N&&(N=B,C.current=null,v())});return k&&_.observe(k),()=>{A.disconnect(),_.disconnect()}},[i,e]),n.jsxs("div",{ref:m,className:`bulk-bar ${d?"bulk-bar--visible":""}`,inert:!d||void 0,"aria-hidden":d?void 0:!0,children:[n.jsx("span",{ref:p,className:"bulk-bar__count body-2",role:"status",children:i??n.jsx("b",{children:c("common.selectedCount",{count:e})})}),l!==void 0&&n.jsx(ft,{size:"small",fill:"soft",variant:"main",label:`${e} / ${l}`}),n.jsxs("div",{className:`bulk-bar__actions${y?" bulk-bar__actions--stacked":""}`,children:[n.jsx(pe,{htmlType:"button",size:40,label:u,onClick:a}),t.map((b,x)=>n.jsx(pe,{htmlType:"button",size:40,variant:b.variant??"default",icon:b.icon,label:b.label,onClick:b.onClick},x))]})]})}const H4=[{\uC5F4\uC1E0:"edit",icon:"edit-2",\uB2EB\uACE0\uD560\uAE4C:!0},{\uC5F4\uC1E0:"duplicate",icon:"copy",\uB2EB\uACE0\uD560\uAE4C:!1},{\uC5F4\uC1E0:"publish",icon:"book-marked",\uB2EB\uACE0\uD560\uAE4C:!1},{\uC5F4\uC1E0:"copyLink",icon:"link",\uB2EB\uACE0\uD560\uAE4C:!1},{\uC5F4\uC1E0:"remove",icon:"trash-2",\uB2EB\uACE0\uD560\uAE4C:!0}];function z4(e){const{onClose:t,className:a}=e;return n.jsx("div",{className:De("item-actions",a),children:H4.map(({\uC5F4\uC1E0:r,icon:s,\uB2EB\uACE0\uD560\uAE4C:i})=>{const l=e[r];if(!l)return null;const c=r==="publish"?l.published?l.unpublish:l.publish:l;return n.jsx(pe,{htmlType:"button",size:40,type:"dot",icon:s,ariaLabel:c.label,showTooltipInfo:c.label,onClick:()=>{i&&t(),c.onClick()}},r)})})}function Hl(e,t){const a=()=>{if(e){const[h,w]=e.split("-");return{y:+h,m:+w-1}}const[g,y]=Lr(t).split("-");return{y:+g,m:+y-1}},[r,s]=o.useState(()=>a().y),[i,l]=o.useState(()=>a().m),c=o.useRef(e);o.useEffect(()=>{if(e===c.current)return;c.current=e;const g=a();s(g.y),l(g.m)},[e]);const d=o.useRef({y:r,m:i});o.useEffect(()=>{d.current={y:r,m:i}},[r,i]);const u=o.useCallback(g=>{const y=d.current.y*12+d.current.m+g,h=Math.floor(y/12),w=y-h*12;d.current={y:h,m:w},s(h),l(w)},[]),p=o.useCallback(()=>u(-1),[u]),m=o.useCallback(()=>u(1),[u]),f=o.useCallback((g,y)=>{d.current={y:g,m:y},s(g),l(y)},[]);return{viewY:r,viewM:i,prevMonth:p,nextMonth:m,setViewYM:f}}function Za(e,t){return new Date(e,t+1,0).getDate()}function V4(e,t){return new Date(e,t,1).getDay()}function Xa(e,t,a){return`${e}-${String(t+1).padStart(2,"0")}-${String(a).padStart(2,"0")}`}function W4(e){if(!e)return"";const[t,a,r]=e.split("-");return`${t}. ${a}. ${r}.`}function q4(e,t,a,r){const s=a?+a.split("-")[0]:e-10,i=r?+r.split("-")[0]:e+10,l=[];for(let c=s;c<=i;c++)for(let d=0;d<12;d++){const u=`${c}-${String(d+1).padStart(2,"0")}`;a&&u<a.slice(0,7)||r&&u>r.slice(0,7)||l.push({value:u,label:t(c,d+1)})}return l}function U4({value:e,onChange:t,size:a=48,min:r,max:s,disabled:i,placeholder:l,className:c,today:d}){const{t:u}=be.useTranslation(),p=l??u("datePicker.chooseDate","\uB0A0\uC9DC \uC120\uD0DD"),m=o.useMemo(()=>u("calendar.dow",{returnObjects:!0}),[u]),f=Lr(d),{viewY:g,viewM:y,prevMonth:h,nextMonth:w,setViewYM:C}=Hl(e,d),b=o.useId(),x=o.useCallback((D,F)=>{const R=window.innerHeight,O=window.innerWidth,$=typeof document<"u"?document.getElementById(b):null,Y=$?.offsetHeight||300,ee=Math.max(D.width,$?.offsetWidth||0,260),Z=R-D.bottom<Y&&D.top>Y,ae=8,_e=(re,ue)=>Math.min(Math.max(ae,re),Math.max(ae,ue));return{position:"fixed",left:_e(D.left,O-ee-ae),width:D.width,minWidth:260,...Z?{bottom:_e(R-D.top+6,R-Y-ae)}:{top:_e(D.bottom+6,R-Y-ae)},zIndex:va(F)}},[b]),{open:v,setOpen:A,toggle:k,style:N,triggerRef:_,menuRef:B}=xa({computeStyle:x,onScroll:"reposition",onResize:"reposition",ignoreOutsideClickSelector:".dropdown__menu"});o.useEffect(()=>{if(!v)return;const D=B.current;return(D?.querySelector(".date-picker__day--selected:not(:disabled)")??D?.querySelector(".date-picker__day--today:not(:disabled)")??D?.querySelector(".date-picker__day:not(:disabled)")??D?.querySelector(Cn)??D)?.focus?.(),()=>{const F=document.activeElement;(!F||F===document.body)&&_.current?.focus?.()}},[v,B,_]);const[E,P]=o.useState(1),H=o.useRef(null),S=o.useRef(null);o.useEffect(()=>{if(!v)return;const D=e&&e.slice(0,7)===`${g}-${String(y+1).padStart(2,"0")}`?+e.slice(8):f.slice(0,7)===`${g}-${String(y+1).padStart(2,"0")}`?+f.slice(8):1;P(D)},[v]),o.useEffect(()=>{if(S.current==null)return;const D=S.current;S.current=null,H.current?.querySelector(`[data-day="${D}"]`)?.focus()}),o.useEffect(()=>{P(D=>Math.min(D,Za(g,y)))},[g,y]);const V=o.useCallback(D=>{let F=Xa(D.getFullYear(),D.getMonth(),D.getDate());r&&F<r&&(F=r),s&&F>s&&(F=s);const[R,O,$]=F.split("-").map(Number);(R!==g||O-1!==y)&&C(R,O-1),P($),S.current=$},[r,s,g,y,C]),j=o.useCallback(D=>{const F=new Date(g,y,E),R=$=>{F.setDate(F.getDate()+$),V(F)},O=$=>{const Y=F.getFullYear()*12+F.getMonth()+$,ee=Math.floor(Y/12),Z=Y-ee*12;V(new Date(ee,Z,Math.min(F.getDate(),Za(ee,Z))))};switch(D.key){case"ArrowLeft":R(-1);break;case"ArrowRight":R(1);break;case"ArrowUp":R(-7);break;case"ArrowDown":R(7);break;case"Home":R(-F.getDay());break;case"End":R(6-F.getDay());break;case"PageUp":D.shiftKey?O(-12):O(-1);break;case"PageDown":D.shiftKey?O(12):O(1);break;default:return}D.preventDefault()},[g,y,E,V]),M=o.useCallback(D=>{i||(t(Xa(g,y,D)),A(!1))},[g,y,t,A,i]);o.useEffect(()=>{i&&A(!1)},[i,A]);const I=D=>{const F=Xa(g,y,D);return!!(r&&F<r||s&&F>s)},G=(()=>{const D=Za(g,y);if(E>=1&&E<=D&&!I(E))return E;for(let F=1;F<=D;F++)if(!I(F))return F;return-1})(),Q=[];for(let D=0;D<V4(g,y);D++)Q.push(null);for(let D=1;D<=Za(g,y);D++)Q.push(D);const z=a===64?20:a===40?16:18,q=q4(g,(D,F)=>u("calendar.yearMonth",{year:D,month:F,defaultValue:"{{year}}\uB144 {{month}}\uC6D4"}),r,s),W=`${g}-${String(y+1).padStart(2,"0")}`,L=v?Ut.createPortal(n.jsxs("div",{ref:B,id:b,className:"date-picker__dropdown",style:N,"data-tooltip-ignore":!0,role:"dialog","aria-label":u("datePicker.chooseDate","\uB0A0\uC9DC \uC120\uD0DD"),tabIndex:-1,children:[n.jsxs("div",{className:"date-picker__nav",children:[n.jsx("button",{type:"button",className:"date-picker__nav-btn",onClick:h,"aria-label":u("calendar.prevMonth","\uC774\uC804 \uB2EC"),children:n.jsx(os,{size:16,strokeWidth:2})}),n.jsx(tn,{className:"date-picker__nav-dropdown",ariaLabel:u("datePicker.selectYearMonth","\uC5F0\uC6D4 \uC120\uD0DD"),options:q,value:W,onChange:D=>{const[F,R]=D.split("-");C(+F,+R-1)},block:!0,size:40}),n.jsx("button",{type:"button",className:"date-picker__nav-btn",onClick:w,"aria-label":u("calendar.nextMonth","\uB2E4\uC74C \uB2EC"),children:n.jsx(ss,{size:16,strokeWidth:2})})]}),n.jsxs("div",{className:"date-picker__grid",ref:H,onKeyDown:j,children:[m.map(D=>n.jsx("div",{className:"date-picker__dow caption-1",children:D},D)),Q.map((D,F)=>{if(D===null)return n.jsx("div",{},`e${F}`);const R=Xa(g,y,D),O=R===e,$=R===f,Y=I(D),ee=F%7;return n.jsx("button",{type:"button",disabled:Y,"data-day":D,tabIndex:D===G?0:-1,"aria-current":$?"date":void 0,onClick:()=>!Y&&M(D),className:De("date-picker__day caption-1",O&&"date-picker__day--selected",$&&!O&&"date-picker__day--today",Y&&"date-picker__day--disabled",ee===0&&"date-picker__day--sun",ee===6&&"date-picker__day--sat"),children:D},D)})]})]}),document.body):null;return n.jsxs("div",{className:De("date-picker",`date-picker--s${a}`,v&&"date-picker--open",c),children:[n.jsxs("button",{ref:_,type:"button",className:"date-picker__trigger body-2",onClick:()=>!i&&k(),disabled:i,"aria-haspopup":"true","aria-expanded":v,children:[n.jsx("span",{className:e?"date-picker__value":"date-picker__placeholder",children:e?W4(e):p}),n.jsx(fs,{size:z,className:"date-picker__icon",strokeWidth:1.5})]}),L]})}function zl({children:e,className:t}){const a=o.useRef(null),[r,s]=o.useState(null);return o.useEffect(()=>{s(a.current?.parentElement??null)},[]),o.useEffect(()=>{const i=a.current;if(!i||!r)return;const l=()=>{const d=typeof window<"u"&&window.getComputedStyle(i).position==="absolute"?Math.ceil(i.getBoundingClientRect().width):0;d>0?r.style.setProperty("--section-head-float-w",`${d}px`):r.style.removeProperty("--section-head-float-w")};if(l(),typeof ResizeObserver>"u")return()=>{r.style.removeProperty("--section-head-float-w")};const c=new ResizeObserver(()=>l());return c.observe(i),c.observe(r),()=>{c.disconnect(),r.style.removeProperty("--section-head-float-w")}},[r,e]),n.jsx("div",{ref:a,className:De("section-head-float",t),children:e})}function io({items:e,className:t}){return n.jsx("div",{className:t?`manager-bar-chart-legend ${t}`:"manager-bar-chart-legend",children:e.map((a,r)=>n.jsxs("span",{className:"manager-bar-chart-legend-item",children:[n.jsx("span",{className:"manager-bar-chart-legend-dot",style:{background:a.color}}),a.label]},r))})}function Da({label:e,children:t}){return e?n.jsxs("div",{className:"barchart-total barchart-total--stacked",children:[n.jsx("span",{className:"barchart-total__label body-3",children:e}),n.jsx("span",{className:"barchart-total__value",children:t})]}):n.jsx("div",{className:"barchart-total",children:t})}function lo({title:e,titleClassName:t="h3",icon:a,disc:r,headRight:s,headFloat:i,headSegment:l,headMenuItems:c,collapseBelow:d=420,onClick:u,ariaLabel:p,tooltip:m,totalNum:f,totalUnit:g,totalLabel:y,subRow:h,subRowAlign:w="start",className:C,inGrid:b=!1,children:x}){const{t:v}=be.useTranslation(),A=o.useRef(null),{anchorRect:k,openAt:N,close:_}=ya(),B=o.useCallback(()=>{m&&A.current&&N(A.current)},[m,N]),[E,P]=o.useState(!1);oo(()=>{const L=A.current;if(!L||!l)return;const D=R=>P(R>0&&R<d);if(D(L.clientWidth),typeof ResizeObserver>"u")return;const F=new ResizeObserver(R=>D(R[0].contentRect.width));return F.observe(L),()=>F.disconnect()},[l,d]);const[H,S]=o.useState(null),V=o.useCallback(()=>S(null),[]),j=o.useCallback(L=>{const D=L.currentTarget.getBoundingClientRect();S(F=>F?null:{left:D.left,right:D.right,top:D.top,bottom:D.bottom,width:D.width,height:D.height,x:D.x,y:D.y})},[]),M=!!l&&E;o.useEffect(()=>{M||S(null)},[M]);const I=l?[...l.options.map(L=>({label:L.label,icon:L.icon,selected:L.key===l.value,disabled:L.disabled,onClick:()=>l.onChange(L.key),closeOnSelect:!0})),...(c??[]).map((L,D)=>D===0?{...L,separatorBefore:!0}:L)]:[],G=o.useCallback(L=>{if(!u)return;const D=L.target;D&&typeof D.closest=="function"&&D.closest('button, a, input, select, textarea, [role="radiogroup"]')||u()},[u]),Q=o.useCallback(L=>{u&&L.target===L.currentTarget&&(L.key==="Enter"||L.key===" ")&&(L.preventDefault(),u())},[u]),z=typeof s=="function"?s({collapsed:M}):s,q=f!=null||y?n.jsxs(Da,{label:y,children:[f!=null&&n.jsx("span",{className:"barchart-total__num h0",children:f}),g&&n.jsx("span",{className:"barchart-total__unit h5",children:g})]}):null,W=z||l?n.jsxs("div",{className:"manager-section__head-right",children:[l&&(M?n.jsx(pe,{htmlType:"button",size:32,type:"dot",icon:"ellipsis",ariaLabel:l.ariaLabel??v("common.more","\uB354\uBCF4\uAE30"),showTooltipInfo:l.ariaLabel??v("common.more","\uB354\uBCF4\uAE30"),"aria-haspopup":"menu","aria-expanded":!!H,onClick:j}):n.jsx(xn,{size:32,ariaLabel:l.ariaLabel,options:l.options.map(L=>({key:L.key,label:L.label,disabled:L.disabled})),value:l.value,onChange:l.onChange})),z]}):null;return n.jsxs("section",{ref:A,className:["manager-section",b&&"manager-section--grid",u&&"manager-section--clickable",C].filter(Boolean).join(" "),onClick:u?G:void 0,onKeyDown:u?Q:void 0,onPointerEnter:m?B:void 0,onPointerLeave:m?_:void 0,onFocus:m?B:void 0,onBlur:m?_:void 0,role:u?"button":void 0,tabIndex:u?0:void 0,"aria-label":u?p??(typeof e=="string"?e:void 0):void 0,children:[m&&k&&n.jsx(gn,{anchorRect:{left:k.left,top:k.top+21,right:k.right,bottom:k.bottom,width:k.width,height:k.height},text:m}),i&&n.jsx(zl,{children:i}),n.jsxs("div",{className:"manager-section__head",children:[n.jsxs("div",{className:"manager-section__title-row",children:[a&&n.jsx(Ue,{icon:a,label:typeof e=="string"?e:void 0,className:"manager-section__icon"}),n.jsx("div",{className:["manager-section__title",t].filter(Boolean).join(" "),children:e})]}),W,r&&n.jsx("div",{className:"manager-section__disc body-3",children:r})]}),(q||h)&&n.jsxs("div",{className:["barchart-sub-row",w!=="start"&&`barchart-sub-row--${w}`].filter(Boolean).join(" "),children:[q,h]}),x,H&&n.jsx(Qt,{anchorRect:H,onClose:V,ariaLabel:l?.ariaLabel??v("tooltip.menu","\uBA54\uB274"),children:n.jsx(_a,{columns:[{items:I}],onClose:V,size:"small"})})]})}function cn(e,t){const a=new Date(e,t,1).getDay();return 1+(8-(a===0?7:a))%7}function G4(){const e=Kn();let t=e.getFullYear(),a=e.getMonth(),r=e.getDate();if(r<cn(t,a)){const l=new Date(t,a,0);t=l.getFullYear(),a=l.getMonth(),r=l.getDate()}const s=Math.floor((r-cn(t,a))/7),i=`${t}\uB144 ${a+1}\uC6D4`;return{monthKey:i,value:`${i}#${s}`}}function K4(e){const t=Kn(),a=`${t.getFullYear()}\uB144 ${t.getMonth()+1}\uC6D4`,r=(d,u)=>`${d}\uB144 ${u+1}\uC6D4`,s=new Map;s.set(a,[]);for(const d of e){if(isNaN(d.date.getTime()))continue;const u=r(d.date.getFullYear(),d.date.getMonth());s.has(u)||s.set(u,[]),s.get(u).push(d)}for(const[d,u]of[...s.entries()]){const p=d.match(/^(\d+)년 (\d+)월$/);if(!p)continue;const m=Number(p[1]),f=Number(p[2])-1,g=cn(m,f);if(!(d===a&&t.getDate()<g)&&!u.some(w=>w.date.getDate()<g))continue;const y=new Date(m,f,0),h=r(y.getFullYear(),y.getMonth());s.has(h)||s.set(h,[])}const i=new Map;for(const[d,u]of s){const p=d.match(/^(\d+)년 (\d+)월$/);if(!p)continue;const m=Number(p[1]),f=Number(p[2])-1,g=new Date(m,f+1,0).getDate(),y=u.reduce((v,A)=>Math.max(v,A.parts?.length??0,A.partsB?.length??0),0),h=u.some(v=>v.partsB),w=new Array(g+1).fill(0),C=new Array(g+1).fill(0),b=Array.from({length:g+1},()=>new Array(y).fill(0)),x=Array.from({length:g+1},()=>new Array(y).fill(0));for(const v of u){const A=v.date.getDate();if(w[A]+=v.a,C[A]+=v.b,v.parts)for(let k=0;k<y;k++)b[A][k]+=v.parts[k]??0;if(v.partsB)for(let k=0;k<y;k++)x[A][k]+=v.partsB[k]??0}i.set(d,{year:m,month:f,daysInMonth:g,partsLen:y,hasPartsB:h,dayA:w,dayB:C,dayParts:b,dayPartsB:x})}const l=(d,u,p)=>new Date(d,u,p).getTime()>new Date(t.getFullYear(),t.getMonth(),t.getDate()).getTime(),c={};for(const[d,u]of i){const{year:p,month:m,daysInMonth:f,dayA:g,dayB:y,dayParts:h,dayPartsB:w}=u,C=p===t.getFullYear()&&m===t.getMonth(),b=t.getDate(),x=i.get(r(m===11?p+1:p,(m+1)%12)),v=u.partsLen,A=[];for(let N=1;N<=f;N++){const _=C&&N>b;A.push({label:String(N),..._&&g[N]===0&&y[N]===0?{future:!0}:{},a:_&&g[N]===0&&y[N]===0?-1:g[N],b:y[N],...v?{parts:h[N]}:{},...v&&u.hasPartsB?{partsB:w[N]}:{}})}const k=[];for(let N=cn(p,m);N<=f;N+=7){const _=Math.max(0,N+6-f),B=_&&x?Math.max(v,x.partsLen):v,E=u.hasPartsB||!!(_&&x?.hasPartsB);let P=0,H=0;const S=new Array(B).fill(0),V=new Array(B).fill(0);for(let M=N;M<=Math.min(N+6,f);M++){P+=g[M],H+=y[M];for(let I=0;I<v;I++)S[I]+=h[M][I],V[I]+=w[M][I]}if(_&&x)for(let M=1;M<=_&&!l(x.year,x.month,M);M++){P+=x.dayA[M],H+=x.dayB[M];for(let I=0;I<x.partsLen;I++)S[I]+=x.dayParts[M][I],V[I]+=x.dayPartsB[M][I]}const j=_?`${(m+1)%12+1}/${_}`:`${N+6}`;k.push({label:`${k.length+1}\uC8FC`,sublabel:`[${N}\uC77C~${j}\uC77C]`,a:P,b:H,...B?{parts:S}:{},...B&&E?{partsB:V}:{}})}c[d]={weekly:k,daily:A}}return c}function Vl(){const e=Kn(),t=e.getFullYear(),a=e.getMonth()+1,r=[];for(let s=2024;s<=t;s++){const i=s===t?a:12;for(let l=1;l<=i;l++){const c=`${s}\uB144 ${l}\uC6D4`;r.push({value:c,label:c,year:s,month:l})}}return r.reverse()}Vl();function Y4(){return Vl()}const Wl=["\uCCAB\uC9F8","\uB458\uC9F8","\uC14B\uC9F8","\uB137\uC9F8","\uB2E4\uC12F\uC9F8","\uC5EC\uC12F\uC9F8","\uC77C\uACF1\uC9F8"];function ql(e){const{t,i18n:a}=be.useTranslation(),[r,s]=o.useState("week"),i=o.useMemo(()=>Y4().filter(B=>B.value in e),[e]),l=o.useMemo(()=>{const B=[];for(const E of i){const P=new Date(E.year,E.month,0).getDate(),H=cn(E.year,E.month-1),S=Math.ceil((P-H+1)/7);for(let V=S-1;V>=0;V--)B.push({value:`${E.value}#${V}`,monthKey:E.value,year:E.year,month:E.month,week:V})}return B},[i]),c=o.useCallback(B=>{const E=t("calendar.yearMonth",{year:B.year,month:B.month});return a.language?.startsWith("ko")?`${E} ${Wl[B.week]??`${B.week+1}`}\uC8FC`:`${E} Week ${B.week+1}`},[t,a.language]),d=o.useMemo(()=>i.map(B=>({value:B.value,label:t("calendar.yearMonth",{year:B.year,month:B.month})})),[t,i]),u=o.useMemo(()=>l.map(B=>({value:B.value,label:c(B)})),[l,c]),p=o.useMemo(()=>G4(),[e]),m=o.useMemo(()=>i.find(B=>B.value===p.monthKey)?.value??i[0]?.value??"",[i,p]),f=o.useMemo(()=>l.find(B=>B.value===p.value)?.value??l[0]?.value??"",[l,p]),[g,y]=o.useState(""),[h,w]=o.useState("");o.useEffect(()=>{i.find(B=>B.value===g)||y(m)},[i,g,m]),o.useEffect(()=>{l.find(B=>B.value===h)||w(f)},[l,h,f]);const C=r==="month"?d:u,b=r==="month"?g:h,x=r==="month"?y:w,v=o.useMemo(()=>{const B=t("calendar.dow",{returnObjects:!0});return Array.isArray(B)?B:["\uC77C","\uC6D4","\uD654","\uC218","\uBAA9","\uAE08","\uD1A0"]},[t]),A=C.findIndex(B=>B.value===b),k=o.useCallback(()=>{const B=C.findIndex(E=>E.value===b);B<C.length-1&&x(C[B+1].value)},[C,b,x]),N=o.useCallback(()=>{const B=C.findIndex(E=>E.value===b);B>0&&x(C[B-1].value)},[C,b,x]),_=o.useMemo(()=>[{key:"week",label:t("manager.chart.periodWeek","\uC8FC")},{key:"month",label:t("manager.chart.periodMonth","\uC6D4")}],[t]);return{period:r,setPeriod:s,range:b,setRange:x,activeOptions:C,activeIdx:A,handlePrev:k,handleNext:N,periodOptions:_,monthRange:g,weekRange:h,weekRanges:l,DOW:v}}const ct=e=>typeof e=="number"&&Number.isFinite(e)?e:0;function _n(e,t=!0){return e.future===!0||t&&e.a===-1}function Z4({data:e,colorA:t,colorB:a,labelA:r,labelB:s,barWidth:i=10,barGap:l=1,height:c=140,maxOverride:d,tightMax:u,seriesColors:p,seriesLabels:m,rateLabels:f,grouped:g=!1,baseline:y}){const h=!a,w=!!(p&&p.length>0),C=y,b=o.useMemo(()=>w?Math.max(0,...e.filter(M=>!_n(M,C==null)).map(M=>g?Math.max(0,...(M.parts??[]).map(ct)):(M.parts??[]).reduce((I,G)=>I+Math.max(0,ct(G)),0))):Math.max(0,...e.filter(M=>!_n(M,C==null)).flatMap(M=>h?[ct(M.a)]:[ct(M.a),ct(M.b)])),[e,h,w,g]),x=o.useMemo(()=>{if(C==null)return 0;const M=e.filter(I=>!_n(I,C==null)).flatMap(I=>w?(I.parts??[]).map(ct):h?[ct(I.a)]:[ct(I.a),ct(I.b)]);return Math.max(0,...M.map(I=>Math.abs(I-C)))},[e,C,w,h]),v=o.useMemo(()=>{const M=C!=null?x:b;return d??(u?M>0?M:10:Math.ceil(M/10)*10||10)},[b,x,C,d,u]),A=c,k=w?g?Math.max(1,p.length):1:h?1:2,N={"--bar-width":`${o.useMemo(()=>{const M=Math.max(1,e.length);return Math.max(2,Math.min(i,Math.round(120/(M*k)+6)))},[e.length,k,i])}px`},_={"--bar-group-gap":`${Math.max(0,l)}px`},B=o.useMemo(()=>{const M=Math.round(v/2);return C!=null?[C+v,...M!==v?[C+M]:[],C,...M!==v?[C-M]:[],C-v]:M!==v?[v,M,0]:[v,0]},[v,C]),E=M=>C!=null?1-(M-(C-v))/(2*v):1-M/v,[P,H]=o.useState(null),S=o.useCallback(()=>H(null),[]),V=M=>C!=null&&M>C?`+${M}`:`${M}`,j=P!=null;return o.useEffect(()=>{if(!j)return;const M=()=>H(null),I=G=>{const Q=G.target;Q&&typeof Q.closest=="function"&&Q.closest(".manager-bar-chart-col")||H(null)};return window.addEventListener("scroll",M,!0),document.addEventListener("pointerdown",I,!0),()=>{window.removeEventListener("scroll",M,!0),document.removeEventListener("pointerdown",I,!0)}},[j]),n.jsxs("div",{className:"manager-bar-chart-wrap",style:_,children:[n.jsx("div",{className:"manager-bar-chart-inner",children:n.jsx("div",{className:"manager-bar-chart-scroll",children:n.jsxs("div",{className:"manager-bar-chart-area",children:[n.jsxs("div",{className:"manager-bar-chart-plot",style:{height:A},children:[B.slice(0,-1).map((M,I)=>n.jsx("div",{className:`manager-bar-chart-gridline${C!=null&&M===C?" manager-bar-chart-gridline--baseline":""}`,style:{top:E(M)*A},children:n.jsx("span",{className:"manager-bar-chart-gridline__label caption-1",children:M})},I)),e.map((M,I)=>{const G=_n(M,C==null),Q=A/2,z=D=>C!=null?Math.min(Q,Math.abs(ct(D)-C)/v*Q):Math.min(A,Math.max(0,ct(D)/v*A)),q=G?0:z(M.a),W=G?0:z(M.b),L=(M.parts??[]).map(ct);return n.jsx("div",{className:`manager-bar-chart-col${g&&w?" manager-bar-chart-col--group":""}`,style:{cursor:G?"default":"pointer"},onMouseEnter:G?void 0:D=>{const F=D.currentTarget.getBoundingClientRect(),R=[M.label,M.sublabel].filter(Boolean).join(" ");let O;if(w&&g&&M.rawPartsB)O=(m??[]).map(($,Y)=>{const ee=M.rawPartsB[Y]??0;return{text:ee>0?`${$}: ${L[Y]??0}% (${M.rawParts?.[Y]??0}/${ee})`:`${$}: -`,color:(p??[])[Y]}});else if(w&&g)O=(m??[]).map(($,Y)=>({text:`${$}: ${V(L[Y]??0)}`,color:(p??[])[Y]}));else if(w){const $=(m??[]).map((ee,Z)=>({text:`${ee}: ${L[Z]??0}`,color:(p??[])[Z]})),Y=$.filter((ee,Z)=>(L[Z]??0)>0);O=Y.length?Y:$}else f&&!h?O=[{text:`${r} ${ct(M.a)}%`,color:t},{text:`${s} ${ct(M.b)}%`,color:a}]:f&&M.rawB!==void 0?O=[{text:`${f.total} ${M.rawB}`},{text:`${f.done} ${M.rawA??0}`,color:t}]:h?O=[{text:`${r}: ${ct(M.a)}`,color:t}]:O=[{text:`${r}: ${ct(M.a)}`,color:t},{text:`${s}: ${ct(M.b)}`,color:a}];H({rect:{left:F.left,top:F.top,right:F.right,bottom:F.bottom,width:F.width,height:F.height},title:R,items:O})},onMouseLeave:S,children:!G&&(w&&g?(p??[]).map((D,F)=>{const R=L[F]??0;if(C==null)return n.jsx("div",{className:"manager-bar-chart-bar",style:{...N,height:z(R),background:D}},F);const O=ct(R)<C;return n.jsxs("div",{className:"manager-bar-chart-slot",style:N,children:[n.jsx("div",{className:"manager-bar-chart-slot__half manager-bar-chart-slot__half--up",children:!O&&n.jsx("div",{className:"manager-bar-chart-bar manager-bar-chart-bar--full",style:{height:z(R),background:D}})}),n.jsx("div",{className:"manager-bar-chart-slot__half manager-bar-chart-slot__half--down",children:O&&n.jsx("div",{className:"manager-bar-chart-bar manager-bar-chart-bar--full manager-bar-chart-bar--down",style:{height:z(R),background:D}})})]},F)}):w?n.jsx("div",{className:"manager-bar-chart-stack",style:N,children:(()=>{const D=L.reduce((R,O,$)=>O>0?$:R,-1);let F=A;return L.map((R,O)=>{if(R<=0)return null;const $=Math.min(F,R/v*A);return F-=$,n.jsx("div",{className:"manager-bar-chart-stack-segment",style:{height:$,background:(p??[])[O],borderRadius:O===D?"6px 6px 0 0":void 0}},O)})})()}):C!=null?n.jsx(n.Fragment,{children:[{v:ct(M.a),c:t},...h?[]:[{v:ct(M.b),c:a}]].map(({v:D,c:F},R)=>n.jsxs("div",{className:"manager-bar-chart-slot",style:N,children:[n.jsx("div",{className:"manager-bar-chart-slot__half manager-bar-chart-slot__half--up",children:D>=C&&n.jsx("div",{className:"manager-bar-chart-bar manager-bar-chart-bar--full",style:{height:z(D),background:F}})}),n.jsx("div",{className:"manager-bar-chart-slot__half manager-bar-chart-slot__half--down",children:D<C&&n.jsx("div",{className:"manager-bar-chart-bar manager-bar-chart-bar--full manager-bar-chart-bar--down",style:{height:z(D),background:F}})})]},R))}):n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"manager-bar-chart-bar",style:{...N,height:q,background:t}}),!h&&n.jsx("div",{className:"manager-bar-chart-bar",style:{...N,height:W,background:a}})]}))},I)})]}),n.jsx("div",{className:"manager-bar-chart-x-axis",children:e.map((M,I)=>{const G=_n(M,C==null);return n.jsxs("span",{className:`manager-bar-chart-x-axis__label${G?" manager-bar-chart-x-axis__label--future":""}`,children:[n.jsxs("span",{className:"caption-1 manager-bar-chart-x-axis__main",children:[M.isToday&&n.jsx("span",{className:"manager-bar-chart-x-axis__today-dot",style:{background:t}}),M.label]}),M.sublabel&&n.jsx("span",{className:"caption-1",children:M.sublabel})]},I)})})]})})}),P&&n.jsx(Fn,{anchorRect:P.rect,title:P.title,items:P.items,showIndex:!1,closeOnOutsideClick:!1})]})}function Ul({control:e}){const{t}=be.useTranslation(),{activeOptions:a,activeIdx:r,range:s,setRange:i,handlePrev:l,handleNext:c,periodOptions:d,period:u,setPeriod:p}=e,m=u==="week"?t("calendar.prevWeek","\uC774\uC804 \uC8FC"):t("calendar.prevMonth","\uC774\uC804 \uB2EC"),f=u==="week"?t("calendar.nextWeek","\uB2E4\uC74C \uC8FC"):t("calendar.nextMonth","\uB2E4\uC74C \uB2EC");return n.jsxs("div",{className:"manager-section-controls",children:[n.jsx(pe,{htmlType:"button",size:32,type:"dot",icon:"chevron-left",ariaLabel:m,showTooltipInfo:m,disabled:r===a.length-1,onClick:l}),n.jsx(tn,{value:s,onChange:i,options:a,size:40,className:"month-dropdown",ariaLabel:t("calendar.rangeSelect","\uAE30\uAC04 \uC120\uD0DD")}),n.jsx(pe,{htmlType:"button",size:32,type:"dot",icon:"chevron-right",ariaLabel:f,showTooltipInfo:f,disabled:r<=0,onClick:c}),n.jsx(xn,{ariaLabel:t("calendar.periodSelect","\uAE30\uAC04 \uB2E8\uC704"),options:d,value:u,onChange:g=>p(g),size:40})]})}function co(e,t,a,r=!0){const s=new Date(a.getFullYear(),a.getMonth(),a.getDate());return Array.from({length:7},(i,l)=>{const c=new Date(t);c.setDate(t.getDate()+l);const d=(e[`${c.getFullYear()}\uB144 ${c.getMonth()+1}\uC6D4`]?.daily??[])[c.getDate()-1],u=d!=null&&_n(d,r)||c>s;return{dt:c,entry:d,isFuture:u}})}function X4(e,t,a,r,s=!0){const{period:i,monthRange:l,weekRange:c,weekRanges:d,DOW:u}=t,p=r?.startsWith("ko"),m=Kn(),f=m.getFullYear(),g=m.getMonth()+1,y=m.getDate();if(i==="month"){const C=e[l]??{weekly:[],daily:[]},b=l.match(/^(\d+)년 (\d+)월$/),x=b?Number(b[1]):null,v=b?Number(b[2]):null,A=x&&v?cn(x,v-1):1;return C.weekly.map((k,N)=>{const _=N+1;let B=k.label,E=!1,P=!1;if(x&&v){const H=A+N*7,S=new Date(x,v-1,H+6),V=S.getMonth()+1,j=S.getDate(),M=V===v?`${j}`:`${V}/${j}`;B=a("manager.chart.weekRange",{start:H,end:M});const I=new Date(f,g-1,y).getTime();E=I>=new Date(x,v-1,H).getTime()&&I<=S.getTime(),P=x>f||x===f&&(v>g||v===g&&H>y)}return{...k,label:B,sublabel:p?`${Wl[_-1]??_}\uC8FC`:`Week ${_}`,isToday:E,future:k.future===!0||P||void 0,a:P?-1:k.a,b:P?0:k.b}})}const h=d.find(C=>C.value===c);if(!h)return[];const w=new Date(h.year,h.month-1,cn(h.year,h.month-1)+h.week*7);return co(e,w,m,s).map(({dt:C,entry:b,isFuture:x})=>{const v=C.getMonth()+1,A=C.getDate(),k=C.getFullYear();return{label:v===h.month&&k===h.year?`${A}`:`${v}/${A}`,sublabel:u[C.getDay()]??"",future:x||void 0,a:x?-1:b&&b.a>0?b.a:0,b:x?0:b&&b.b>0?b.b:0,isToday:k===f&&v===g&&A===y,...b?.parts?{parts:x?b.parts.map(()=>0):b.parts}:{},...b?.partsB?{partsB:x?b.partsB.map(()=>0):b.partsB}:{}}})}const J4={small:{height:100,barWidth:16},medium:{height:140,barWidth:20},large:{height:180,barWidth:24}};function Q4({size:e="medium",barWidth:t,titleKey:a,data:r,colorA:s,colorB:i,labelAKey:l,labelBKey:c,showTotal:d=!1,totalUnitKey:u,totalLabelKey:p,control:m,hideControls:f=!1,rate:g=!1,rateAgg:y="dayMean",tightMax:h=!1,avgMode:w=!1,totalFormat:C,series:b,seriesMode:x="stack",loading:v=!1,onDetail:A,headExtra:k,headSegment:N,icon:_,disc:B,onClick:E,cardAriaLabel:P,cardTooltip:H,detailSize:S=32,barGap:V,baseline:j,className:M,inGrid:I=!1}){const{t:G,i18n:Q}=be.useTranslation(),z=J4[e],q=ql(r),W=m??q,L=o.useMemo(()=>X4(r,W,G,Q.language,j==null),[r,W,G,Q.language,j]),D=x==="group"&&!!b&&b.length>0;V!=null&&!D&&fn("bar-chart-bargap-without-group","[BarChart] barGap \uC740 seriesMode='group' + series \uC5D0\uC11C\uB9CC \uC4F0\uC778\uB2E4 \u2014 \uADF8 \uBC16\uC5D0\uC11C\uB294 \uC544\uBB34 \uC77C\uB3C4 \uD558\uC9C0 \uC54A\uB294\uB2E4.");const F=o.useMemo(()=>{if(!g)return L;const ee=W.period==="month"?W.monthRange.match(/^(\d+)년 (\d+)월$/):null,Z=Kn(),ae=b?.length??0,_e=re=>{const ue=[],U=[],oe=[];for(let de=0;de<ae;de++){let ve=0,ge=0,Se=0;for(const Ce of re){const Ee=ct(Ce.a[de]),Be=ct(Ce.b[de]);Be<=0||(ve+=Ee,ge+=Be,Se+=Ee/Be*100)}ue.push(y==="weighted"?ge>0?Math.round(ve/ge*100):0:re.length?Math.round(Se/re.length):0),U.push(ve),oe.push(ge)}return{pct:ue,ra:U,rb:oe}};return L.map((re,ue)=>{let U=re.a===-1?-1:re.b>0?Math.round(re.a/re.b*100):0;if(ee&&!_n(re)){const de=Number(ee[1]),ve=Number(ee[2])-1,ge=co(r,new Date(de,ve,cn(de,ve)+ue*7),Z).filter(Se=>!Se.isFuture);if(y==="weighted"){let Se=0,Ce=0;for(const{entry:Ee}of ge)Ee&&Ee.b>0&&(Se+=Ee.a,Ce+=Ee.b);U=Ce>0?Math.round(Se/Ce*100):0}else U=ge.length?Math.round(ge.reduce((Se,{entry:Ce})=>Se+(Ce&&Ce.b>0?Ce.a/Ce.b*100:0),0)/ge.length):0}let oe=null;if(D&&!_n(re)){let de;if(ee){const ge=Number(ee[1]),Se=Number(ee[2])-1;de=co(r,new Date(ge,Se,cn(ge,Se)+ue*7),Z).filter(Ce=>!Ce.isFuture).map(({entry:Ce})=>({a:Ce?.parts??[],b:Ce?.partsB??[]}))}else de=[{a:re.parts??[],b:re.partsB??[]}];const ve=_e(de);oe={parts:ve.pct,rawParts:ve.ra,rawPartsB:ve.rb}}return{...re,a:U,b:re.a===-1?0:c&&re.parts&&re.parts[1]>0?Math.round(re.parts[0]/re.parts[1]*100):0,rawA:re.a===-1?-1:re.a,rawB:re.b,...oe??{}}})},[L,g,y,c,W.period,W.monthRange,r,D,b?.length]),R=o.useMemo(()=>{if(g||w){const Z=(W.period==="week"?L:r[W.monthRange]?.daily??[]).filter(_e=>_e.a!==-1);if(Z.length===0)return 0;if(g&&y==="weighted"){let _e=0,re=0;for(const ue of Z)ue.b>0&&(_e+=ue.a,re+=ue.b);return re>0?Math.round(_e/re*100):0}const ae=g?Z.reduce((_e,re)=>_e+(re.b>0?re.a/re.b*100:0),0):Z.reduce((_e,re)=>_e+(re.a>0?re.a:0),0);return Math.round(ae/Z.length)}const ee=W.period==="month"?r[W.monthRange]?.daily??[]:F;return j!=null?ee.reduce((Z,ae)=>Z+(_n(ae,!1)?0:ct(ae.a)+(c?ct(ae.b):0)),0):ee.reduce((Z,ae)=>Z+(ae.a>0?ae.a:0)+(c&&ae.b>0?ae.b:0),0)},[F,L,g,y,w,j,c,W.period,W.monthRange,r]),O=b&&b.length>0?b.map(ee=>({color:ee.color,label:ee.label})):[{color:s,label:G(l)},...c?[{color:i,label:G(c)}]:[]],$=e==="small",Y=[$?"manager-section--compact":e==="large"?"manager-section--full":void 0,M].filter(Boolean).join(" ")||void 0;return n.jsx(lo,{className:Y,inGrid:I,icon:_,disc:B,onClick:E,ariaLabel:P,tooltip:H,headSegment:N,headMenuItems:A?[{label:G("trainingStatus.detail","\uC0C1\uC138\uBCF4\uAE30"),icon:"list",onClick:A,closeOnSelect:!0}]:void 0,title:G(a),titleClassName:$?"h5 chart-section-title--small":void 0,headRight:$?k??void 0:({collapsed:ee})=>n.jsxs(n.Fragment,{children:[!f&&n.jsx(Ul,{control:W}),k,A&&!ee&&n.jsx("span",{className:"manager-bar-chart-detail-btn",children:n.jsx(pe,{htmlType:"button",size:S,type:"dot",icon:"list",ariaLabel:G("trainingStatus.detail","\uC0C1\uC138\uBCF4\uAE30"),showTooltipInfo:G("trainingStatus.detail","\uC0C1\uC138\uBCF4\uAE30"),onClick:A})})]}),subRow:n.jsxs(n.Fragment,{children:[d?g||w||p&&C?n.jsx(Da,{label:$?void 0:`${G(W.period==="week"?"manager.chart.weeklyPrefix":"manager.chart.monthlyPrefix")} ${G(p??l)}`,children:C?(C(R).match(/([+-]?\d[\d.,]*|[^\d]+)/g)??[]).map((ee,Z)=>/\d/.test(ee)?n.jsx("span",{className:"barchart-total__num h0",children:ee},Z):n.jsx("span",{className:"barchart-total__unit h5",children:ee},Z)):n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"barchart-total__num h0",children:R}),u&&n.jsx("span",{className:"barchart-total__unit h5",children:G(u)})]})}):n.jsxs(Da,{children:[n.jsx("span",{className:"barchart-total__num h0",children:R}),n.jsx("span",{className:"barchart-total__unit h5",children:G(l)}),u&&n.jsx("span",{className:"barchart-total__unit h5",children:G(u)})]}):n.jsx("span",{}),n.jsx(io,{items:O,className:"caption-1"})]}),children:v?n.jsx("div",{className:"manager-bar-chart-wrap manager-bar-chart-loading","aria-busy":"true",children:n.jsx("div",{className:"manager-bar-chart-inner",children:n.jsxs("div",{className:"manager-bar-chart-area manager-bar-chart-area--loading",children:[n.jsx("div",{className:"manager-bar-chart-plot manager-bar-chart-plot--loading",style:{height:z.height},children:n.jsx(Ea,{size:32})}),n.jsx("div",{className:"manager-bar-chart-x-axis","aria-hidden":"true",children:n.jsxs("span",{className:"manager-bar-chart-x-axis__label",children:[n.jsx("span",{className:"caption-1 manager-bar-chart-x-axis__main",children:"\xA0"}),F.some(ee=>!!ee.sublabel)&&n.jsx("span",{className:"caption-1",children:"\xA0"})]})})]})})}):n.jsx(Z4,{data:F,colorA:s,colorB:c?i:void 0,labelA:G(l),labelB:c?G(c):void 0,barWidth:t??z.barWidth,barGap:V,baseline:j,height:z.height,maxOverride:g?100:void 0,tightMax:h,seriesColors:b?.map(ee=>ee.color),seriesLabels:b?.map(ee=>ee.label),rateLabels:g?{total:G("trainingStatus.today.tooltipTotal","\uC804\uCCB4"),done:G("trainingStatus.today.tooltipDone","\uC644\uB8CC")}:void 0,grouped:D})})}const Gl=120,ey={left:38,right:16,top:26,bottom:24};function ty({points:e=[],range:t,ticks:a=[],axisTitle:r,color:s,height:i=156,fallbackWidth:l=320,insets:c,overlay:d,ariaLabel:u,className:p}){const[m,f]=o.useState(null),[g,y]=o.useState(null);o.useEffect(()=>{if(!g)return;const I=Q=>f(Math.round(Q)||null);if(I(g.getBoundingClientRect().width),typeof ResizeObserver>"u")return;const G=new ResizeObserver(([Q])=>I(Q.contentRect.width));return G.observe(g),()=>{G.disconnect()}},[g]);const{payload:h,anchorRect:w,openAfterDelay:C,close:b}=sb(Gl),x=o.useCallback((I,G)=>{I&&C(I,G.getBoundingClientRect())},[C]),v=m??l,A=i,{left:k,right:N,top:_,bottom:B}={...ey,...c},[E,P]=t,H=I=>P===E?k:k+(v-k-N)*(I-E)/(P-E),S=I=>_+(A-_-B)*(100-I)/100,V={x:H,y:S,plot:{left:k,right:v-N,top:_,bottom:A-B,width:Math.max(0,v-k-N),height:Math.max(0,A-_-B)}},j=e.filter(I=>!I.hollow),M=s??"var(--color-main)";return n.jsxs(n.Fragment,{children:[n.jsxs("svg",{ref:y,className:De("line-chart",p),viewBox:`0 0 ${v} ${A}`,role:"img","aria-label":u??e.map(I=>I.description).filter(Boolean).join(", "),children:[r&&n.jsx("text",{className:"line-chart__axis-title",x:0,y:12,children:r}),[0,100].map(I=>n.jsxs("g",{children:[n.jsx("line",{className:"line-chart__grid",x1:k,x2:v-N,y1:S(I),y2:S(I)}),n.jsxs("text",{className:"line-chart__tick",x:k-6,y:S(I)+4,textAnchor:"end",children:[I,"%"]})]},I)),d?.(V),a.map(I=>n.jsx("text",{className:"line-chart__tick",x:H(I.x),y:A-5,textAnchor:"middle",children:I.label},I.x)),j.length>1&&n.jsx("polyline",{className:"line-chart__line",fill:"none",stroke:M,points:j.map(I=>`${H(I.x)},${S(I.pct)}`).join(" ")}),e.map(I=>n.jsxs("g",{className:"line-chart__dot",onPointerEnter:G=>x(I.description,G.currentTarget),onPointerLeave:b,children:[n.jsx("circle",{className:"line-chart__dot-hit",cx:H(I.x),cy:S(I.pct),r:12}),n.jsx("circle",{className:De("line-chart__dot-main",I.hollow&&"is-hollow"),cx:H(I.x),cy:S(I.pct),r:4,stroke:M,fill:I.hollow?void 0:M})]},I.x))]}),h!=null&&n.jsx(Qt,{anchorRect:w,offset:10,closeOnOutsideClick:!1,className:"line-chart__tip",role:"tooltip",ariaLabel:h,children:h})]})}function ny({icon:e,iconSize:t=56,title:a,titleClass:r="h2",description:s,tipGroups:i,start:l,className:c}){return n.jsxs("div",{className:De("game-intro",c),children:[e!=null&&n.jsx("span",{className:"game-intro__icon","aria-hidden":"true",style:{"--game-intro-icon":`${t}px`},children:e}),n.jsx("h2",{className:De("game-intro__title",r),children:a}),s!=null&&n.jsx("p",{className:"game-intro__description body-3",children:s}),i?.map((d,u)=>n.jsxs("div",{className:"game-intro__tips",children:[d.title!=null&&n.jsx("span",{className:"game-intro__tips-title body-3",children:d.title}),d.tips.map((p,m)=>n.jsxs("span",{className:"game-intro__tip body-3",children:[p.icon!=null&&n.jsx("span",{"aria-hidden":"true",children:p.icon}),n.jsx("span",{children:p.text})]},m))]},u)),l&&n.jsx(pe,{htmlType:"button",className:l.className,variant:"main",color:l.color,size:48,width:"100%",disabled:l.disabled,onClick:l.onClick,children:l.label})]})}const Kl=(e,t,a)=>{const r=new Date(Date.UTC(e,t,a));return`${r.getUTCFullYear()}-${String(r.getUTCMonth()+1).padStart(2,"0")}-${String(r.getUTCDate()).padStart(2,"0")}`},Yl=(e,t,a,r)=>({from:ii(e,t,a),to:new Date(ii(e,t,a+r).getTime()-1),fromYmd:Kl(e,t,a),toYmd:Kl(e,t,a+r-1)});function ay(e,t=0){if(e.period==="month"){const s=e.monthRange.match(/^(\d+)년 (\d+)월$/),i=Kn(),l=s?Number(s[1]):i.getFullYear(),c=(s?Number(s[2]):i.getMonth()+1)-1+t,d=new Date(Date.UTC(l,c+1,0)).getUTCDate();return Yl(l,c,1,d)}const a=e.weekRanges.find(s=>s.value===e.weekRange);if(!a){const s=new Date,i=Ca();return{from:s,to:s,fromYmd:i,toYmd:i}}const r=cn(a.year,a.month-1);return Yl(a.year,a.month-1,r+(a.week+t)*7,7)}const uo={small:{diameter:96,strokeWidth:16},medium:{diameter:120,strokeWidth:18},large:{diameter:160,strokeWidth:22}};function Zl(e){return!Number.isFinite(e)||e<=0?0:e>=1?100:Math.min(99,Math.max(1,Math.round(e*100)))}function Xl({done:e,total:t,segments:a,color:r="var(--color-main)",size:s="medium",strokeWidth:i,label:l="%",hideCenter:c=!1,hideLabel:d=!1}){const u=typeof s=="number"?s:uo[s].diameter,p=i??(typeof s=="number"?12:uo[s].strokeWidth),m=u/2,f=(u-p)/2,g=2*Math.PI*f;if(a&&a.length>0){const C=a.reduce((b,x)=>{const v=b.length>0?b[b.length-1].acc:0,A=Number.isFinite(x.ratio)?x.ratio:0,k=Math.max(0,Math.min(A,1-v));return b.push({color:x.color,rotate:-90+v*360,dash:g*k,acc:v+k}),b},[]);return n.jsx("div",{className:"ring-chart",style:{width:u,height:u},children:n.jsxs("svg",{width:u,height:u,viewBox:`0 0 ${u} ${u}`,"aria-hidden":"true",children:[n.jsx("circle",{cx:m,cy:m,r:f,fill:"none",stroke:"var(--color-whiteLine)",strokeWidth:p}),C.map((b,x)=>b.dash>0&&n.jsx("circle",{cx:m,cy:m,r:f,fill:"none",stroke:b.color,strokeWidth:p,strokeDasharray:`${b.dash} ${g}`,strokeLinecap:"round",transform:`rotate(${b.rotate} ${m} ${m})`},x))]})})}const y=(t??0)>0?Math.min((e??0)/t,1):0,h=g*y,w=g-h;return n.jsxs("div",{className:"ring-chart",style:{width:u,height:u},children:[n.jsxs("svg",{width:u,height:u,viewBox:`0 0 ${u} ${u}`,"aria-hidden":"true",children:[n.jsx("circle",{cx:m,cy:m,r:f,fill:"none",stroke:"var(--color-whiteLine)",strokeWidth:p}),y>0&&n.jsx("circle",{cx:m,cy:m,r:f,fill:"none",stroke:r,strokeWidth:p,strokeDasharray:`${h} ${w}`,strokeLinecap:y<.02||y>.98?"butt":"round",transform:`rotate(-90 ${m} ${m})`})]}),!c&&n.jsxs("div",{className:`ring-chart__center${d?"":` ${u<=96?"ring-chart__center--small":s==="medium"?"ring-chart__center--medium":"ring-chart__center--large"}`}`,children:[n.jsx("span",{className:`ring-chart__pct ${u<=96?"h2":"h1"}`,children:Zl(y)}),!d&&n.jsx("span",{className:`ring-chart__label ${u<=96?"caption-2":"caption-1"}${u<=96||s==="medium"?" ring-chart__label--tight":""}`,children:l})]})]})}function ry({titleKey:e,headRight:t,icon:a,showTotal:r,totalLabelKey:s,legend:i,loading:l,className:c,inGrid:d=!1,onClick:u,ariaLabel:p,tooltip:m,...f}){const{t:g}=be.useTranslation();if(!e)return n.jsx(Xl,{...f});const y=(f.total??0)>0?Zl(Math.min((f.done??0)/f.total,1)):0,h=f.size==="small",w=typeof f.size=="number"?f.size:uo[f.size??"medium"].diameter,C=f.size==="large",b=[c,h?"manager-section--compact":C?"manager-section--full":""].filter(Boolean).join(" ")||void 0,x=a&&n.jsx("span",{className:"chart-section-icon",children:n.jsx(Ue,{icon:a,className:"chart-section-icon-inner"})});return n.jsx(lo,{className:b,inGrid:d,onClick:u,ariaLabel:p,tooltip:m,title:g(e),titleClassName:h?"h5 chart-section-title--small":void 0,headRight:x||(h?void 0:t),subRow:(r||i)&&n.jsxs(n.Fragment,{children:[r?n.jsxs(Da,{label:!h&&s?g(s):void 0,children:[n.jsx("span",{className:"barchart-total__num h0",children:y}),n.jsx("span",{className:"barchart-total__unit h5",children:"%"})]}):n.jsx("span",{}),i&&n.jsx(io,{items:i})]}),children:l?n.jsx("div",{className:"ring-chart-section-body ring-chart-section-body--offset",children:n.jsx("div",{className:"ring-chart ring-chart--loading",style:{width:w,height:w},"aria-busy":"true",children:n.jsx(Ea,{size:32})})}):n.jsx("div",{className:"ring-chart-section-body ring-chart-section-body--offset",children:n.jsx(Xl,{...f,hideCenter:f.hideCenter??h})})})}function oy({label:e,value:t,change:a,changeType:r,icon:s,tooltip:i,onClick:l,children:c}){const d=o.useRef(null),{anchorRect:u,openAt:p,close:m}=ya(),f=o.useCallback(()=>{i&&d.current&&p(d.current)},[i,p]),g=r??(a===void 0?void 0:a>0?"up":a<0?"down":"neutral"),y=a===void 0?void 0:a>0?`+${a}`:`${a}`,h=o.useCallback(w=>{l&&(w.key==="Enter"||w.key===" ")&&(w.preventDefault(),l())},[l]);return n.jsxs("div",{ref:d,className:`manager-stat-card${l?" manager-stat-card--clickable":""}`,onClick:l,onKeyDown:l?h:void 0,onPointerEnter:f,onPointerLeave:m,onFocus:f,onBlur:m,role:l?"button":void 0,tabIndex:l?0:void 0,"aria-label":l?[e,t,y].filter(w=>w!==void 0&&w!=="").join(" "):void 0,children:[i&&u&&n.jsx(gn,{anchorRect:{left:u.left,top:u.top+21,right:u.right,bottom:u.bottom,width:u.width,height:u.height},text:i}),n.jsxs("div",{className:"manager-stat-card__label-row",children:[n.jsx("span",{className:"manager-stat-card__label h5",children:e}),s&&n.jsx("span",{className:"manager-stat-card__icon",children:n.jsx(Ue,{icon:s,className:"manager-stat-card__icon-inner"})})]}),n.jsxs("div",{className:"manager-stat-card__content",children:[n.jsxs("div",{className:"manager-stat-card__left",children:[n.jsx("div",{className:"manager-stat-card__value h2",children:t}),y&&n.jsx("div",{className:`manager-stat-card__change manager-stat-card__change--${g??"neutral"} caption-1`,children:y})]}),c&&n.jsx("div",{className:"manager-stat-card__body",children:c})]})]})}function Jl({value:e,onChange:t,min:a=0,max:r=100,step:s=1,orientation:i="horizontal",size:l=24,disabled:c=!1,ariaLabel:d,length:u,className:p,label:m,formatValue:f,labelPos:g,labelAlign:y="right",showMinMax:h=!1,minLabel:w,maxLabel:C,showBgTick:b=!1,showFillTick:x=!1,tickStep:v,tickShape:A="dot"}){t&&!d&&fn("Slider:unnamed","[ihab/Slider] \uC774\uB984\uC774 \uC5C6\uC2B5\uB2C8\uB2E4 \u2014 ariaLabel \uC744 \uC8FC\uC138\uC694. label prop \uC740 \uAC12 \uD45C\uAE30 \uBC29\uC2DD\uC774\uC9C0 \uC774\uB984\uC774 \uC544\uB2D9\uB2C8\uB2E4.");const k=Math.min(r,Math.max(a,e)),N=r>a?(k-a)/(r-a):0,_=i==="vertical",B=!t,E=D=>t?.(Number(D.target.value)),P=typeof u=="number"?`${u}px`:u,H={"--slider-ratio":String(N),"--slider-thumb":`${l}px`,...P?_?{height:P}:{width:P}:{}},S=v??s,V=(b||x)&&S>0&&r>a?Math.floor((r-a)/S+1e-6):0;if(V>0&&V<=100){const D=A!=="dash",F=ee=>D?`radial-gradient(circle, ${ee} 0.5px, transparent 1px)`:_?`linear-gradient(to bottom, transparent calc(50% - 2px), ${ee} calc(50% - 2px), ${ee} calc(50% + 2px), transparent calc(50% + 2px))`:`linear-gradient(to right, transparent calc(50% - 2px), ${ee} calc(50% - 2px), ${ee} calc(50% + 2px), transparent calc(50% + 2px))`,R=D?"2px":"4px",O=[],$=[],Y=[];for(let ee=0;ee<=V;ee++){const Z=ee*S/(r-a);if(Z>1+1e-6)break;const ae=`${((_?1-Z:Z)*100).toFixed(4)}%`,_e=Z<=N+1e-6;if(_e?!x:!b)continue;const re=_e?"var(--slider-tick-color-on-fill, var(--color-deepWhite))":"var(--slider-tick-color, var(--color-lightGray))";O.push(F(re)),$.push(_?`${R} var(--slider-thumb)`:`var(--slider-thumb) ${R}`),Y.push(_?`center ${ae}`:`${ae} center`)}O.push(_?"linear-gradient(to top, var(--slider-fill-color) var(--slider-fill), var(--color-darkWhite) var(--slider-fill))":"linear-gradient(to right, var(--slider-fill-color) var(--slider-fill), var(--color-darkWhite) var(--slider-fill))"),$.push("100% 100%"),Y.push("0 0"),H.backgroundImage=O.join(", "),H.backgroundSize=$.join(", "),H.backgroundPosition=Y.join(", "),H.backgroundRepeat="no-repeat"}const j=f?f(k):m==="percent"?`${Math.round(r>a?(k-a)/(r-a)*100:0)}%`:m==="count"?`${k} / ${r}`:k===a&&w?w:k===r&&C?C:void 0,M=n.jsx("input",{type:"range",className:De("slider",`slider--${i}`,B&&"slider--static",!m&&!h&&p),min:a,max:r,step:s,value:k,disabled:c,readOnly:B,tabIndex:B?-1:void 0,"aria-label":d,"aria-valuetext":j,"aria-orientation":i,onChange:E,style:H});if(!m&&!h)return M;const I=n.jsx("span",{className:"slider-wrap__minmax caption-1",children:w??a}),G=n.jsx("span",{className:"slider-wrap__minmax caption-1",children:C??r}),Q=h?n.jsxs("div",{className:De("slider-track-group",`slider-track-group--${i}`,!m&&p),children:[_?G:I,M,_?I:G]}):M;if(!m)return Q;const z=g??(_?"bottom":"right"),q=`${Math.round(r>a?(k-a)/(r-a)*100:0)}%`,W=f?f(k):m==="percent"?q:m==="count"?`${k} / ${r}`:String(k),L=n.jsx("span",{className:"slider-wrap__value body-3b",children:W});return n.jsxs("div",{className:De("slider-wrap",`slider-wrap--${i}`,`slider-wrap--label-${z}`,`slider-wrap--align-${y}`,p),children:[Q,L]})}const sy=.86,iy=250,po=(e,t,a,r)=>Math.round(Math.min(r,Math.max(a,e-t))),mo=(e,t,a,r)=>{const s=po(e,t,a,r);return`${s<0?"-":"+"}${Math.abs(s)} dB`};function ho({analyser:e,audioElement:t,orientation:a="horizontal",length:r,label:s,labelPos:i,labelAlign:l="right",floorDb:c=-60,refDb:d=-35,displayMin:u=-5,displayMax:p=25,className:m,ariaLabel:f}){const g=o.useRef(null),y=o.useRef(null),h=o.useRef(null),w=o.useRef(null),[C,b]=o.useState(null);o.useEffect(()=>{const k=M=>{const I=mo(M,d,u,p);h.current&&(h.current.textContent=I);const G=g.current;G&&(G.setAttribute("aria-valuenow",String(po(M,d,u,p))),G.setAttribute("aria-valuetext",I))},N=e??a2(t)??(C&&C.el===t?C.node:null),_=y.current;if(!N||!_){_?.style.setProperty("--meter-level","0"),k(c);let M=!1;return!e&&t&&Pa(t).then(I=>{!M&&I&&b({el:t,node:I})}),()=>{M=!0}}Dr();const B=new Float32Array(N.fftSize);let E=0,P=0,H=0,S=0,V=null;const j=M=>{const I=r2(N,B);E=I>E?I:E*sy;const G=E>1e-5?20*Math.log10(E):-1/0,Q=Math.max(c,G),z=Q-d,q=Math.min(1,Math.max(0,(z-u)/(p-u)));if(_.style.setProperty("--meter-level",q.toFixed(3)),P+=Q,H+=1,M-S>=iy){const W=P/H;V=V==null?W:V*.6+W*.4,k(V),P=0,H=0,S=M}w.current=requestAnimationFrame(j)};return w.current=requestAnimationFrame(j),()=>{w.current!=null&&cancelAnimationFrame(w.current),w.current=null}},[e,t,C,c,d,u,p]);const x=typeof r=="number"?`${r}px`:r,v=n.jsx("div",{className:"audio-meter__track",style:x?a==="vertical"?{height:x}:{width:x}:{},children:n.jsx("div",{ref:y,className:"audio-meter__fill"})}),A=i??(a==="vertical"?"bottom":"right");return n.jsxs("div",{ref:g,className:De("audio-meter",`audio-meter--${a}`,s&&`audio-meter--label-${A}`,s&&`audio-meter--align-${l}`,m),role:"meter","aria-label":f,"aria-valuemin":u,"aria-valuemax":p,"aria-valuenow":po(c,d,u,p),"aria-valuetext":mo(c,d,u,p),children:[v,s&&n.jsx("span",{ref:h,className:"audio-meter__value caption-2",children:mo(c,d,u,p)})]})}const Ql=260;function ec({message:e,position:t,duration:a,onClose:r}){const[s,i]=o.useState(!1),[l,c]=o.useState(!1),d=o.useRef(l),u=o.useRef(s);o.useEffect(()=>{d.current=l},[l]),o.useEffect(()=>{u.current=s},[s]);const p=o.useRef(null),m=o.useRef(""),f=o.useRef(r);o.useEffect(()=>{f.current=r});const g=a,y=o.useRef(null),h=o.useRef(0),w=o.useRef(0),C=o.useRef(!1),b=o.useRef(null),x=o.useRef(null),v=o.useRef(null),A=o.useRef(null),k=o.useRef(()=>{});k.current=B=>{B<0||(h.current=Date.now(),w.current=B,y.current=setTimeout(()=>{y.current=null,i(!1),b.current=setTimeout(()=>{c(!1);try{f.current()}catch{}},Ql)},B))};const N=o.useCallback(()=>{C.current||!y.current||(C.current=!0,clearTimeout(y.current),y.current=null,w.current=Math.max(0,w.current-(Date.now()-h.current)))},[]),_=o.useCallback(()=>{C.current&&(C.current=!1,k.current(w.current))},[]);return o.useEffect(()=>{if(e!==m.current&&(y.current&&(clearTimeout(y.current),y.current=null),b.current&&(clearTimeout(b.current),b.current=null)),e){if(u.current)return g>0&&!y.current&&(C.current?w.current=g:k.current(g)),m.current=e,()=>{y.current&&(clearTimeout(y.current),y.current=null),b.current&&(clearTimeout(b.current),b.current=null)};const B=()=>{const E=p.current;if(E)try{E.classList.remove("is-visible"),E.style.transition="none",t==="top"?E.style.transform="translateX(-50%) translateY(-16px)":E.style.transform="translateX(-50%) translateY(16px)",E.style.opacity="0",E.offsetWidth,E.style.transition="",E.classList.add("is-visible"),A.current&&clearTimeout(A.current),A.current=setTimeout(()=>{A.current=null;try{E.style.opacity="",E.style.transform="",E.style.transition=""}catch{}},60)}catch{}};d.current?(B(),i(!0)):(c(!0),x.current=requestAnimationFrame(()=>{v.current=requestAnimationFrame(()=>{B(),i(!0)})})),g>0&&(C.current=!1,k.current(g))}else i(!1),b.current=setTimeout(()=>c(!1),Ql);return m.current=e,()=>{y.current&&clearTimeout(y.current),b.current&&clearTimeout(b.current),x.current&&cancelAnimationFrame(x.current),v.current&&cancelAnimationFrame(v.current),A.current&&clearTimeout(A.current),y.current=null,b.current=null,x.current=null,v.current=null,A.current=null}},[e,g,t]),{mounted:l,showing:s,popupRef:p,pause:N,resume:_}}function ea({message:e="",position:t="top",type:a="normal",onClose:r=()=>{},duration:s=2e3}){const{mounted:i,showing:l,popupRef:c,pause:d,resume:u}=ec({message:e,position:t,duration:s,onClose:r}),p=o.useRef(null),[m,f]=o.useState(!1);if(o.useEffect(()=>{l?f(!0):i||f(!1)},[l,i]),!i)return null;const g=a==="notice"||a==="warning"?a:"normal",y=n.jsx("div",{ref:c,className:`toast toast--${t} ${l?"is-visible":""}`,role:"status","aria-live":"polite",onPointerEnter:h=>{p.current=h.pointerType},onMouseEnter:()=>{p.current!=="touch"&&d()},onMouseLeave:u,onFocusCapture:d,onBlurCapture:u,children:n.jsx("div",{className:`toast__inner toast__inner--${g} body-2`,"aria-hidden":m||l?void 0:!0,children:e})});return typeof document<"u"?Ut.createPortal(y,document.body):y}const ly=24;function cy({value:e,max:t=100,size:a=8,color:r,trackColor:s,label:i,formatValue:l,labelPos:c,labelAlign:d="right",ariaLabel:u,className:p}){const m=Number.isFinite(t)&&t>0?t:1,f=Math.max(0,Math.min(Number.isFinite(e)?e:0,m)),g=f/m*100,y=Number.isFinite(t)&&t>0?t:0,h=c??(a>=ly?"inside":"bottom"),w=h==="center"?"inside":h,C=w==="inside"&&(d==="left"?g>=15:d==="center"?g>=50:g>=85),b={};return r&&(b["--progress-bar-fill"]=r),s&&(b["--progress-bar-track"]=s),n.jsxs("div",{className:De("progress-bar",`progress-bar--${a}`,`progress-bar--label-${w}`,i&&`progress-bar--align-${d}`,i&&C&&"progress-bar--label-on-fill",p),style:b,children:[n.jsx("div",{className:"progress-bar__track",role:"progressbar","aria-valuenow":f,"aria-valuemin":0,"aria-valuemax":y,"aria-valuetext":i?l?l(f):i==="percent"?void 0:i==="raw"?String(f):`${f} / ${y}`:void 0,"aria-label":u,children:n.jsx("div",{className:"progress-bar__fill",style:{width:`${g}%`}})}),i&&n.jsx("span",{className:"progress-bar__label caption-1b",children:l?l(f):i==="percent"?`${Math.round(g)}%`:i==="raw"?String(f):`${f} / ${y}`})]})}const tc={position:"absolute",width:1,height:1,margin:-1,padding:0,overflow:"hidden",clipPath:"inset(50%)",whiteSpace:"nowrap",border:0},uy="rgba(255, 255, 255, 0.16)";function nc({max:e,index:t,inactiveBg:a,inactiveColor:r,transparent:s,variant:i="numbered",announce:l=!1,ariaLabel:c}){const{t:d}=be.useTranslation(),u=Zt("(max-width: 767px)");if(!Number.isInteger(e)||e<=0)return null;const p=Number.isInteger(t)?Math.max(0,Math.min(t,e-1)):0,m=c??d("progress.steps",{current:p+1,total:e,defaultValue:"\uC9C4\uD589 \uB2E8\uACC4 {{current}} / {{total}}"}),f={};if(a&&(f["--pi-inactive-bg"]=a),r&&(f["--pi-inactive-color"]=r),s&&(a||(f["--pi-inactive-bg"]=uy),r||(f["--pi-inactive-color"]="var(--color-white)")),i==="dot")return n.jsxs("div",{className:"progress-indicator progress-indicator--dot",style:f,role:l?"status":"img","aria-label":l?void 0:m,children:[l&&n.jsx("span",{style:tc,children:m}),Array.from({length:e}).map((y,h)=>n.jsx("span",{"aria-hidden":"true",className:`progress-indicator-dot--dot${h<p?" done":h===p?" active":""}`},h))]});const g=l?n.jsx("span",{role:"status",style:tc,children:m}):null;return u?n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"progress-indicator progress-indicator--mobile",style:f,role:"list","aria-label":m,children:n.jsxs("span",{role:"listitem",className:"progress-indicator-dot active body-3",children:[p+1," / ",e]})}),g]}):n.jsxs(n.Fragment,{children:[g,n.jsx("div",{className:"progress-indicator",style:f,role:"list","aria-label":m,children:Array.from({length:e}).map((y,h)=>n.jsx("span",{role:"listitem","aria-current":h===p?"step":void 0,className:`progress-indicator-dot ${h<p?" done":h===p?" active":""} body-3`,children:h+1},h))})]})}function dy(e){if(!e)return[];const t=[];let a=0,r="";for(const s of e.trim()){if(s==="("?a++:s===")"&&a--,/\s/.test(s)&&a===0){r&&(t.push(r),r="");continue}r+=s}return r&&t.push(r),t}function py({children:e,className:t,style:a}){return n.jsx("div",{className:t?`table-cell ${t}`:"table-cell",style:a,children:e})}function fo({variant:e="default",children:t,className:a,draggable:r,onClick:s,onMouseEnter:i,onMouseLeave:l,onDragStart:c,onDragEnd:d,expandedContent:u}){const p=o.useCallback(m=>{s&&m.target===m.currentTarget&&(m.key==="Enter"||m.key===" ")&&(m.preventDefault(),s())},[s]);return e==="loading"?n.jsx("div",{className:"table-row-wrap",children:n.jsx("div",{className:"table-row table-row--loading",children:n.jsx(Ea,{size:28})})}):e==="empty"?n.jsx("div",{className:"table-row-wrap",children:n.jsx("div",{className:"table-row table-row--empty body-3",children:t})}):n.jsxs("div",{className:"table-row-wrap",children:[n.jsx("div",{className:a?`table-row ${a}`:"table-row",draggable:r,onClick:s,onKeyDown:s?p:void 0,onMouseEnter:i,onMouseLeave:l,onDragStart:c,onDragEnd:d,role:s?"button":void 0,tabIndex:s?0:void 0,children:t}),u&&n.jsx("div",{className:"table-row-expand",children:u})]})}function my({dir:e}){return n.jsx(e==="asc"?gs:Cs,{className:"table-field__sort-arrow",size:16,strokeWidth:2})}function hy({children:e,onClick:t,className:a,sortDir:r,ariaSort:s,onResizeStart:i}){const l=n.jsxs(n.Fragment,{children:[e,r&&n.jsx(my,{dir:r})]});return n.jsxs("div",{onClick:t,role:"columnheader","aria-sort":s,className:De("table-field body-3",a,r?"table-field--sorted":"",i?"table-field--resizable":""),children:[t?n.jsx("button",{type:"button",className:"table-field__button",children:l}):l,i&&n.jsx("span",{className:"table-field__resizer",onPointerDown:i,onClick:c=>c.stopPropagation(),"aria-hidden":"true"})]})}function Co({fields:e=[],headerGroups:t,items:a=[],renderRow:r,onRowClick:s,isRowClickable:i,onRowMouseEnter:l,onRowMouseLeave:c,onRowDragStart:d,onRowDragEnd:u,draggingId:p,gridTemplateColumns:m,mobileGridTemplateColumns:f,resizable:g=!1,resizeMode:y="grow",resizeStorageKey:h,size:w="small",title:C,icon:b,count:x,collapsed:v=!1,onToggleCollapse:A,headerActions:k,empty:N,loading:_,dragOver:B=!1,onDragOver:E,onDragLeave:P,onDrop:H,renderExpandedRow:S,expandedId:V}){const{t:j}=be.useTranslation(),M=Zt("(max-width: 767px)"),I=f&&M?f:null,G=g&&!M,Q=48,z=o.useRef(()=>Q),q=h?`table-cols:${h}`:null,W=o.useRef(null),L=o.useRef(()=>!1),D=o.useRef([]),F=o.useRef(null),R=me=>{if(!me||typeof window>"u")return null;try{const ke=JSON.parse(window.localStorage.getItem(me)??"null");return Array.isArray(ke)&&ke.length>0&&ke.every(Me=>typeof Me=="number"&&Number.isFinite(Me)&&Me>0)?ke:null}catch{return null}},[O,$]=o.useState(()=>R(q)),[Y,ee]=o.useState(q);Y!==q&&(ee(q),$(R(q)));const Z=o.useRef(O);o.useEffect(()=>{Z.current=O},[O]);const ae=o.useCallback(me=>{const ke=F.current;if(!ke)return;const Me=Z.current;if(Me){const Te=[...Me];if(ke.next!=null&&ke.startWNext!=null){const Ae=me.clientX-ke.startX,ie=Math.max(z.current(ke.index)-ke.startW,Math.min(ke.startWNext-z.current(ke.next),Ae));Te[ke.index]=ke.startW+ie,Te[ke.next]=ke.startWNext-ie}else Te[ke.index]=Math.max(z.current(ke.index),ke.startW+(me.clientX-ke.startX));Z.current=Te,$(Te)}},[]),_e=o.useCallback(()=>{if(F.current=null,window.removeEventListener("pointermove",ae),window.removeEventListener("pointerup",_e),window.removeEventListener("pointercancel",_e),document.body.style.cursor="",document.body.style.userSelect="",q&&Z.current)try{window.localStorage.setItem(q,JSON.stringify(Z.current))}catch{}},[ae,q]),re=o.useCallback((me,ke)=>{ke.preventDefault(),ke.stopPropagation();const Me=W.current;if(!Me)return;const Te=Array.from(Me.children).map(ie=>ie.getBoundingClientRect().width),Ae=y==="fit"?e.findIndex((ie,ye)=>ye>me&&ie.resizable!==!1):-1;F.current=Ae>=0?{index:me,startX:ke.clientX,startW:Te[me],next:Ae,startWNext:Te[Ae]}:{index:me,startX:ke.clientX,startW:Te[me]},Z.current=Te,$(Te),window.addEventListener("pointermove",ae),window.addEventListener("pointerup",_e),window.addEventListener("pointercancel",_e),document.body.style.cursor="col-resize",document.body.style.userSelect="none"},[ae,_e,y,e]),ue=o.useCallback(()=>{const me=W.current,ke=me?.closest(".table-wrap");if(!me||!ke)return;const Me=ke.style.getPropertyValue("--table-grid-cols");ke.style.setProperty("--table-grid-cols",e.map((Ze,Ye)=>L.current(Ye)?D.current[Ye]:"max-content").join(" "));const Te=Array.from(ke.querySelectorAll(".table-row")).filter(Ze=>!Ze.classList.contains("table-row--loading")&&!Ze.classList.contains("table-row--empty")),Ae=e.map((Ze,Ye)=>{let Ke=me.children[Ye]?.getBoundingClientRect().width??0;for(const Pe of Te){const lt=Pe.children[Ye];lt&&(Ke=Math.max(Ke,lt.getBoundingClientRect().width))}const Oe=L.current(Ye)?parseFloat(D.current[Ye]):NaN;return Number.isFinite(Oe)?Oe:Math.max(z.current(Ye),Math.ceil(Ke))}),ie=window.getComputedStyle(me),ye=me.clientWidth-(parseFloat(ie.paddingLeft)||0)-(parseFloat(ie.paddingRight)||0);Me?ke.style.setProperty("--table-grid-cols",Me):ke.style.removeProperty("--table-grid-cols");let se=Ae;const Ie=Ae.reduce((Ze,Ye,Ke)=>Ze+(L.current(Ke)?Ye:0),0),ze=Ae.reduce((Ze,Ye,Ke)=>Ze+(L.current(Ke)?0:Ye),0),Ge=ye-Ie;if(ye>0&&ze>0&&Ge>0){const Ze=Ge/ze;se=Ae.map((Ke,Oe)=>L.current(Oe)?Ke:Math.max(z.current(Oe),Math.round(Ke*Ze)));const Ye=Math.round(Ge-se.reduce((Ke,Oe,Pe)=>Ke+(L.current(Pe)?0:Oe),0));if(Ye!==0){let Ke=-1;se.forEach((Oe,Pe)=>{!L.current(Pe)&&(Ke<0||Oe>se[Ke])&&(Ke=Pe)}),Ke>=0&&(se[Ke]=Math.max(z.current(Ke),se[Ke]+Ye))}}if($(se),q)try{window.localStorage.setItem(q,JSON.stringify(se))}catch{}},[e,y,q]);o.useEffect(()=>()=>{F.current&&(window.removeEventListener("pointermove",ae),window.removeEventListener("pointerup",_e),window.removeEventListener("pointercancel",_e),document.body.style.cursor="",document.body.style.userSelect="")},[ae,_e]);const U=dy(m),oe=U.filter(me=>/\b(auto|min-content|max-content)\b|fit-content\(/.test(me));oe.length>0&&fn(`table-content-track:${m}`,`[ihabdevteam-core] Table \uC758 gridTemplateColumns \uC5D0 \uB0B4\uC6A9\uC73C\uB85C \uD06C\uAE30\uAC00 \uC815\uD574\uC9C0\uB294 \uD2B8\uB799(${oe.join(", ")})\uC774 \uC788\uC2B5\uB2C8\uB2E4. \uBA38\uB9AC\uC640 \uBAB8\uD1B5\uC740 \uC11C\uB85C \uB2E4\uB978 \uACA9\uC790\uB77C \uADF8 \uD2B8\uB799\uC774 \uAC01\uC790 \uB2E4\uB974\uAC8C \uD480\uB824 \uC5F4\uC774 \uC5B4\uAE0B\uB0A9\uB2C8\uB2E4. px \uC774\uB098 fr \uC744 \uC4F0\uC138\uC694. (\uBC1B\uC740 \uAC12: ${m})`);const de=e.findIndex(me=>!!me.sortDir);e.filter(me=>!!me.sortDir).length>1&&fn("table-multi-sort","[ihabdevteam-core] Table \uC758 fields \uC5D0 sortDir \uC774 \uB458 \uC774\uC0C1 \uC788\uC2B5\uB2C8\uB2E4. aria-sort \uB294 \uD45C \uD558\uB098\uC5D0 \uD55C \uCE78\uB9CC \uAC00\uC9C8 \uC218 \uC788\uC5B4 \uCCAB \uCE78\uB9CC \uBC29\uD5A5\uC73C\uB85C \uC54C\uB9AC\uACE0 \uB098\uBA38\uC9C0\uB294 none \uC73C\uB85C \uB461\uB2C8\uB2E4.");const ve=me=>me===de?e[me].sortDir==="asc"?"ascending":"descending":e[me].onClick?"none":void 0,ge=me=>/^\d+(\.\d+)?px$/.test(U[me]??""),Se=me=>{const ke=U[me]??"",Me=/^minmax\(\s*(\d+(?:\.\d+)?)px\s*,/.exec(ke)??/^(\d+(?:\.\d+)?)px$/.exec(ke);return Me?parseFloat(Me[1]):Q};L.current=ge,z.current=Se,D.current=U;const Ce=me=>y==="fit"&&!ge(me)?"fr":"px",Ee=O&&O.length===e.length&&!M&&(y==="fit"||a.length>0),Be=I??(Ee?e.map((me,ke)=>me.resizable===!1&&U[ke]?U[ke]:`${O[ke]}${Ce(ke)}`).join(" "):m),Re=Be?{"--table-grid-cols":Be}:void 0,Le=C!==void 0;return n.jsx("div",{className:`table-wrap table-wrap--${w}${G?" table-wrap--resizable":""}${B?" table-wrap--dragover":""}${v?" table-wrap--collapsed":""}`,style:Re,onDragOver:E,onDragLeave:P,onDrop:H,children:n.jsxs("div",{className:"table body-2",children:[Le&&n.jsxs("div",{className:"table-header",onClick:A,role:A?"button":void 0,tabIndex:A?0:void 0,"aria-expanded":A?!v:void 0,onKeyDown:A?me=>{me.target===me.currentTarget&&(me.key==="Enter"||me.key===" ")&&(me.preventDefault(),A())}:void 0,children:[A&&n.jsx(pe,{htmlType:"button",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:v?"chevron-right":"chevron-down",ariaLabel:v?j("common.expand","\uD3BC\uCE58\uAE30"):j("common.collapse","\uC811\uAE30"),className:"table-header__chevron"}),b&&n.jsx(Ue,{icon:b,label:typeof C=="string"?C:void 0,className:"table-header__icon"}),n.jsx("span",{className:"table-header__title h5b",children:C}),x!==void 0&&n.jsx("span",{className:"table-header__count body-3b",children:x}),k&&n.jsx("span",{className:"table-header__actions",onClick:me=>me.stopPropagation(),children:k})]}),!v&&n.jsxs(n.Fragment,{children:[t&&t.length>0&&n.jsx("div",{className:"table-fields table-fields--groups",children:t.map((me,ke)=>n.jsx("div",{className:De("table-field body-3",me.className),style:{gridColumn:`span ${me.span}`},children:me.label},ke))}),n.jsxs("div",{className:De("table-fields-strip",G&&"table-fields-strip--resizable"),children:[n.jsx("div",{className:"table-fields",ref:W,children:e.map((me,ke)=>n.jsx(hy,{onClick:me.onClick,className:me.className,sortDir:me.sortDir,ariaSort:ve(ke),onResizeStart:G&&ke<e.length-1&&me.resizable!==!1&&(y!=="fit"||e.some((Me,Te)=>Te>ke&&Me.resizable!==!1))?Me=>re(ke,Me):void 0,children:me.label},ke))}),G&&n.jsx(pe,{htmlType:"button",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:"chevrons-left-right-ellipsis",ariaLabel:j("table.resetColumns","\uCE78 \uB108\uBE44 \uCD08\uAE30\uD654"),showTooltipInfo:j("table.resetColumns","\uCE78 \uB108\uBE44 \uCD08\uAE30\uD654"),className:"table-fields__reset",onClick:ue})]}),n.jsx("div",{className:"table-body",children:_?n.jsx(fo,{variant:"loading"}):a.length===0&&N?n.jsx(fo,{variant:"empty",children:N}):a.map((me,ke)=>{const Me=p!=null&&me.id===p,Te=!!s&&(i?i(me):!0),Ae=V!=null&&me.id!=null&&(V instanceof Set?V.has(me.id)||[...V].some(ie=>String(ie)===String(me.id)):String(me.id)===String(V));return n.jsx(fo,{className:`${Te?" table-row--clickable":""}${d?" table-row--draggable":""}${Me?" table-row--dragging":""}`.trim(),draggable:!!d,onClick:Te?()=>s(me):void 0,onMouseEnter:l?ie=>l(me,ie):void 0,onMouseLeave:c?ie=>c(me,ie):void 0,onDragStart:d?ie=>d(me,ie):void 0,onDragEnd:u?ie=>u(me,ie):void 0,expandedContent:Ae&&S?S(me):void 0,children:r(me).map((ie,ye)=>n.jsx(py,{className:ie.className,style:ie.style,children:ie.content},ye))},me.id!=null?`${typeof me.id}:${me.id}`:`__idx:${ke}`)})})]})]})})}function ac(e){switch(e){case"\uBCF4\uCCAD\uAE30":return"main";case"\uC778\uACF5\uC640\uC6B0":return"sub";default:return"default"}}const ta=e=>e==null?"":String(e).trim();function go(e,t,a){const r=[ta(e),ta(t),ta(a)];for(;r.length>0&&r[r.length-1]==="";)r.pop();return r.join(".")}function fy(e,t,a){const r=ta(e);return r?`${r}-${ta(t).padStart(2,"0")}-${ta(a).padStart(2,"0")}`:""}const Cy={\uBCF4\uCCAD\uAE30:"hearingAid",\uC778\uACF5\uC640\uC6B0:"cochlearImplant"};function gy(e,t){const a=Cy[e];return a?t(`device.type.${a}`,{defaultValue:e}):e}function rc(e,t){return t!=="wornAt"?String(e[t]??""):fy(e.wornYear,e.wornMonth,e.wornDay)}function by({rows:e,loading:t,onSelect:a,onDelete:r,onWear:s,onRelease:i,onAdd:l}){const{t:c}=be.useTranslation(),d=h=>h==="\uC88C"?c("device.direction.left","\uC88C"):c("device.direction.right","\uC6B0"),{\uC815\uB82C:u,\uCE78:p}=Zg(),m=o.useMemo(()=>{if(!u)return e;const{key:h,asc:w}=u;return[...e].sort((C,b)=>{if(h==="worn"){const x=Number(b.worn)-Number(C.worn);return w?x:-x}return Kr(rc(C,h),rc(b,h),w)})},[e,u]),{pageRows:f,pageSizeProps:g,paginationProps:y}=Yg(m,u);return n.jsxs("div",{className:"dlp-side-table",children:[n.jsx(so,{count:{value:e.length,unit:c("customers.device.unit","\uAC1C")},pageSize:g,pagination:y,actions:l&&n.jsx(pe,{htmlType:"button",size:40,type:"bar",variant:"main",icon:"plus",label:c("customers.device.addButton","\uAE30\uAE30 \uCD94\uAC00"),onClick:l})}),n.jsx(Co,{loading:t,resizable:!0,resizeMode:"fit",resizeStorageKey:"customer-device-history-v2",fields:[{...p(c("customers.device.wearingNow","\uCC29\uC6A9"),"worn"),resizable:!1},p(c("device.direction.label","\uBC29\uD5A5"),"side"),p(c("device.deviceType","\uC885\uB958"),"device"),p(c("device.brand","\uBE0C\uB79C\uB4DC"),"brand"),p(c("device.fitType","\uCC29\uC6A9\uD615\uD0DC"),"fitType"),p(c("device.productName","\uC81C\uD488\uBA85"),"productName"),p(c("device.wornDate","\uCC29\uC6A9\uC77C"),"wornAt"),...r?[{label:"",resizable:!1}]:[]],items:f.map((h,w)=>({id:h.id??`${h.side}-${w}`,row:h})),gridTemplateColumns:`56px 110px 110px minmax(120px, 1fr) 100px minmax(120px, 1fr) 110px${r?" 80px":""}`,renderRow:({row:h})=>[{content:n.jsx("span",{className:"dlp-worn-check",onClick:w=>w.stopPropagation(),children:n.jsx(Ol,{checked:h.worn,disabled:h.worn?!i:!s,ariaLabel:h.worn?c("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C"):c("customers.device.wear","\uCC29\uC6A9"),onChange:w=>{w?s?.(h):i?.(h)}})})},{content:n.jsx("span",{children:d(h.side)})},{content:h.device?n.jsx(ft,{size:"small",variant:ac(h.device),fill:"soft",label:gy(h.device,c)}):n.jsx("span",{})},{content:n.jsx("span",{children:h.brand})},{content:n.jsx("span",{children:h.fitType||"-"})},{content:n.jsx("span",{children:h.productName||"-"})},{content:n.jsx("span",{className:"dlp-date",children:go(h.wornYear,h.wornMonth,h.wornDay)||"-"})},...r?[{content:n.jsx("span",{className:"dlp-row-actions",children:n.jsx(pe,{htmlType:"button",size:28,type:"bar",variant:"transparent-gray",label:c("common.delete","\uC0AD\uC81C"),onClick:w=>{w?.stopPropagation(),r(h)}})})}]:[]],onRowClick:({row:h})=>a(h),empty:c("customers.device.historyEmpty","\uB4F1\uB85D\uB41C \uAE30\uAE30 \uC774\uB825\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.")})]})}function oc(e,t){return e?{role:t?.role??"button",tabIndex:0,...t?.selected===void 0?{}:{"aria-selected":t.selected},onKeyDown:a=>{a.target===a.currentTarget&&(a.key!=="Enter"&&a.key!==" "||(a.preventDefault(),e(a)))}}:{}}function yy(e,t){return new Date(e,t+1,0).getDate()}function vy(e,t){return new Date(e,t,1).getDay()}function xy({visits:e=[],onVisitClick:t,onVisitMove:a,onDayClick:r,today:s}){const{t:i}=be.useTranslation(),l=o.useMemo(()=>i("calendar.dow",{returnObjects:!0}),[i]),c=Lr(s),[d,u]=o.useState(()=>Number(c.slice(0,4))),[p,m]=o.useState(()=>Number(c.slice(5,7))-1),[f,g]=o.useState(null),y=o.useRef(null),h=o.useMemo(()=>{const A={};return e.forEach(k=>{A[k.date]||(A[k.date]=[]),A[k.date].push(k)}),A},[e]),w=o.useMemo(()=>{const A=yy(d,p),k=vy(d,p),N=[];for(let _=0;_<k;_++)N.push(null);for(let _=1;_<=A;_++)N.push(_);for(;N.length<35;)N.push(null);return N},[d,p]),C=o.useCallback(()=>{p===0?(u(A=>A-1),m(11)):m(A=>A-1)},[p]),b=o.useCallback(()=>{p===11?(u(A=>A+1),m(0)):m(A=>A+1)},[p]),x=A=>`${d}-${String(p+1).padStart(2,"0")}-${String(A).padStart(2,"0")}`,v=A=>x(A)===c;return n.jsxs("div",{children:[n.jsxs("div",{className:"calendar-nav",children:[n.jsx("button",{type:"button",className:"calendar-nav__button",onClick:C,"aria-label":i("calendar.prevMonth","\uC774\uC804 \uB2EC"),children:n.jsx(Ue,{icon:"chevron-left",label:"",className:"",svgClassName:"calendar-nav__button-icon",size:18})}),n.jsx("span",{className:"calendar-nav__title h5","aria-live":"polite",children:i("calendar.yearMonth",{year:d,month:p+1})}),n.jsx("button",{type:"button",className:"calendar-nav__button",onClick:b,"aria-label":i("calendar.nextMonth","\uB2E4\uC74C \uB2EC"),children:n.jsx(Ue,{icon:"chevron-right",label:"",className:"",svgClassName:"calendar-nav__button-icon",size:18})}),n.jsxs("div",{className:"calendar-nav__legend",children:[n.jsx("span",{className:"calendar-nav__legend-dot calendar-nav__legend-dot--main"}),n.jsx("span",{className:"caption-1",children:i("calendar.legend.visited","\uBC29\uBB38")}),n.jsx("span",{className:"calendar-nav__legend-dot calendar-nav__legend-dot--sub"}),n.jsx("span",{className:"caption-1",children:i("calendar.legend.scheduled","\uC608\uC57D")}),n.jsx("span",{className:"calendar-nav__legend-dot calendar-nav__legend-dot--disabled"}),n.jsx("span",{className:"caption-1",children:i("calendar.legend.noVisit","\uBBF8\uBC29\uBB38")})]})]}),n.jsxs("div",{className:"calendar-grid",children:[l.map(A=>n.jsx("div",{className:"calendar-day-header body-3",children:A},A)),w.map((A,k)=>{if(A===null)return n.jsx("div",{className:"calendar-cell empty"},`empty-${k}`);const N=A,_=x(N),B=h[_]??[],E=f===_;return n.jsxs("div",{className:`calendar-cell${v(N)?" today":""}${E?" drag-over":""}${r?" calendar-cell--clickable":""}`,role:r?"button":void 0,tabIndex:r?0:void 0,"aria-label":r?i("calendar.addOnDate",{date:_}):void 0,"aria-current":v(N)?"date":void 0,onClick:r?()=>r(_):void 0,onKeyDown:r?P=>{P.target===P.currentTarget&&(P.key!=="Enter"&&P.key!==" "||(P.preventDefault(),r(_)))}:void 0,onDragOver:a?P=>{P.preventDefault(),g(_)}:void 0,onDragLeave:a?P=>{P.currentTarget.contains(P.relatedTarget)||g(null)}:void 0,onDrop:a?P=>{P.preventDefault(),y.current!=null&&(a(y.current,_),y.current=null),g(null)}:void 0,children:[n.jsx("div",{className:"calendar-cell__number body-3",children:N}),B.length>0&&n.jsxs("span",{className:"calendar-cell__visit-count caption-1","aria-label":i("calendar.visitCount",{count:B.length,defaultValue:"\uBC29\uBB38 {{count}}\uAC74"}),children:[n.jsx("span",{className:"calendar-cell__visit-dot","aria-hidden":"true"}),B.length]}),n.jsx("div",{className:"calendar-cell__badges",children:B.map((P,H)=>n.jsxs("div",{draggable:!!a,className:`calendar-visit-badge${P.status==="noVisit"?" calendar-visit-badge--no-visit":P.status==="scheduled"?" calendar-visit-badge--scheduled":""}${t?" calendar-visit-badge--clickable":""}${a?" calendar-visit-badge--draggable":""}`,onDragStart:a?S=>{y.current=P.id,S.dataTransfer.effectAllowed="move"}:void 0,onDragEnd:a?()=>{y.current=null,g(null)}:void 0,onClick:t?S=>{S.stopPropagation(),t(P)}:void 0,...oc(t?()=>t(P):void 0),"aria-label":[P.time?ui(P.time,i):null,P.customer,i(P.status==="noVisit"?"calendar.legend.noVisit":P.status==="scheduled"?"calendar.legend.scheduled":"calendar.legend.visited")].filter(Boolean).join(" "),children:[P.time&&n.jsx("span",{className:"calendar-visit-badge__time body-3",children:ui(P.time,i)}),n.jsx("span",{className:"calendar-visit-badge__name body-3",children:P.customer}),P.status==="noVisit"&&n.jsx("span",{className:"calendar-visit-badge__no-visit caption-1",children:i("calendar.legend.noVisit","\uBBF8\uBC29\uBB38")})]},P.id??H))})]},N)})]})]})}const _y={page:"h3",pagePopup:"h4",popup:"h5"};function na({type:e="page",title:t,headingLevel:a,icon:r,action:s,disc:i,children:l,inGrid:c=!1,className:d,style:u}){const p=_y[e],m=t||i||s||r,f=a?`h${a}`:"div";return n.jsxs("div",{className:De("section",`section--${e}`,c&&"section--in-grid",d),style:u,children:[m&&n.jsxs("div",{className:"section__header",children:[n.jsxs("div",{className:"section__title-row",children:[r&&n.jsx(Ue,{icon:r,label:typeof t=="string"?t:void 0,className:"section__icon"}),n.jsxs("div",{className:"section__title-group",children:[t&&n.jsx(f,{className:`section__title ${p}`,children:t}),i&&n.jsx("div",{className:"section__disc body-3",children:i})]})]}),s&&n.jsx("div",{className:"section__action",children:s})]}),l]})}let bo=null,sc=!1;function ic(){if(sc||typeof document>"u")return;sc=!0,document.addEventListener("keydown",t=>{t.metaKey||t.ctrlKey||t.altKey||(bo="keyboard")},!0);const e=()=>{bo="pointer"};document.addEventListener("pointerdown",e,!0),document.addEventListener("mousedown",e,!0),document.addEventListener("touchstart",e,{capture:!0,passive:!0})}ic();function Ja(){return ic(),bo==="keyboard"}const Qa=20;function wy(e){const{t}=be.useTranslation(),{type:a,trainingDatas:r,depth:s,renderPopup:i,completedIds:l,selectedIds:c,onItemComplete:d,size:u,useDescriptionTooltip:p,onRemove:m,onMore:f,sectionType:g="page"}=e||{},[,y]=o.useState(0),h=typeof r<"u"?Array.isArray(r)?r:[]:[],w=h.length,[C,b]=o.useState(Math.min(w,Qa)),x=o.useMemo(()=>Array.isArray(s)?[...s,a?.label].filter(Boolean).join(" \xB7 "):[s||"",a?.label].filter(Boolean).join(" \xB7 "),[s,a?.label]);o.useEffect(()=>{b(Math.min(w,Qa))},[w]),el("speechear.data.updated",()=>y(N=>N+1));const v=o.useRef(null),A=o.useRef(null);function k(){const N=document.activeElement;A.current=Ja()&&N&&N.closest?.(".training-block__more")?C:null,b(_=>Math.min(w,_+Qa))}return o.useEffect(()=>{const N=A.current;if(N==null)return;A.current=null;const _=document.activeElement;_&&_!==document.body||v.current?.querySelectorAll(".training-block-button")[N]?.focus()},[C]),n.jsxs(na,{type:g,title:a?.label,icon:a?.icon,disc:a?.desc,className:"training-block",children:[n.jsx("div",{className:"training-list",ref:v,children:(h||[]).slice(0,C).map((N,_)=>{const B=N;return n.jsx(ao,{index:_,type:a,trainingData:B,depth:x,renderPopup:i,completedIds:l,selectedIds:c,size:u,useDescriptionTooltip:p,onRemove:typeof m=="function"&&c!=null&&B?.id!=null&&c.has(String(B.id))?()=>m(B):void 0,onComplete:typeof d=="function"&&B?.id!=null?()=>d(String(B.id)):void 0,onMore:typeof f=="function"?E=>f(B,E):void 0},B?.id!=null?`${a?.key||"t"}-${String(B.id)}`:`${a?.key||"t"}-${_}`)})}),w>Qa&&C<w&&n.jsx("div",{className:"training-block__more",children:n.jsx(pe,{htmlType:"button",size:48,type:"bar",icon:"plus",onClick:k,ariaLabel:t("common.loadMore","\uB354\uBCF4\uAE30"),label:t("common.loadMore","\uB354\uBCF4\uAE30"),variant:"main"})})]})}function yo(e){const t=o.useRef(null),[a,r]=o.useState(!!e),[s,i]=o.useState(!1);o.useEffect(()=>{i(!1);const d=t.current;r(!!e&&!(d?.complete&&d.naturalWidth>0))},[e]);const l=o.useCallback(()=>r(!1),[]),c=o.useCallback(()=>{r(!1),i(!0)},[]);return{imgRef:t,loading:a,failed:s,hasImage:!!e&&!s,onLoad:l,onError:c}}var ky='data:image/svg+xml,<svg width="100" height="100" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2256_7437)">%0A<g opacity="0.1">%0A<path d="M35.7143 25C29.7964 25 25 29.7964 25 35.7143V64.2857C25 67.3786 25.7893 70.2893 27.1714 72.8286C29.7071 74.2143 32.6179 75 35.7143 75H64.2857C70.2036 75 75 70.2036 75 64.2857V35.7143C75 32.6214 74.2107 29.7107 72.8286 27.1714C70.2929 25.7857 67.3821 25 64.2857 25H35.7143Z" fill="%23111111"/>%0A</g>%0A<path d="M57.1426 17.8571H35.7141C25.8533 17.8571 17.8569 25.8536 17.8569 35.7143V44.0643L10.9926 51.6179C10.5819 52.0679 10.6283 52.775 11.0998 53.1643C13.1783 54.8929 15.4641 56.2214 17.8569 57.1679C17.8676 63.925 21.6283 69.8 27.1712 72.825C25.7855 70.2893 24.9998 67.3786 24.9998 64.2821V35.7107C24.9998 29.7929 29.7962 24.9964 35.7141 24.9964H64.2855C67.3783 24.9964 70.2891 25.7857 72.8283 27.1679C69.7998 21.6179 63.9105 17.8536 57.1426 17.8536V17.8571Z" fill="%23111111"/>%0A<path d="M72.8285 27.1714C74.2142 29.7072 75 32.6179 75 35.7143V64.2857C75 70.2036 70.2035 75 64.2857 75H35.7142C32.6214 75 29.7107 74.2107 27.1714 72.8286C30.2 78.3786 36.0892 82.1429 42.8571 82.1429H58.9678C59.9321 82.1429 60.7142 82.925 60.7142 83.8893C60.7142 84.9107 61.5892 85.7215 62.6071 85.6322C73.5535 84.675 82.1428 75.4822 82.1428 64.2857V42.8572C82.1428 36.0893 78.3785 30.2 72.8285 27.1714Z" fill="%23111111"/>%0A<path d="M36.0714 40.7143C36.0714 39.5308 35.112 38.5714 33.9285 38.5714C32.745 38.5714 31.7856 39.5308 31.7856 40.7143V45C31.7856 46.1834 32.745 47.1428 33.9285 47.1428C35.112 47.1428 36.0714 46.1834 36.0714 45V40.7143Z" fill="%23111111"/>%0A<path d="M46.7859 57.1429C45.743 57.1429 44.6966 56.875 43.7502 56.3286C42.8966 55.8357 42.6037 54.7429 43.1002 53.8893C43.593 53.0357 44.6859 52.7429 45.5395 53.2393C46.518 53.8036 47.7573 53.6429 48.5537 52.8464C48.9395 52.4607 49.1823 51.9714 49.2573 51.4357C49.5787 49.1607 50.5823 47 52.1645 45.1857C53.1073 44.1071 53.6037 42.7214 53.568 41.2857C53.493 38.3536 51.1466 35.9107 48.2216 35.7286C47.2323 35.6679 46.2859 35.8464 45.4073 36.2679C44.518 36.6929 43.4502 36.3107 43.0287 35.4214C42.6037 34.5321 42.9859 33.4643 43.8752 33.0429C45.2895 32.3714 46.868 32.0679 48.4466 32.1643C53.2037 32.4607 57.0216 36.4286 57.1395 41.1964C57.1966 43.5286 56.3859 45.7786 54.8573 47.5357C53.7323 48.825 53.018 50.3464 52.7966 51.9357C52.6109 53.2464 52.018 54.4357 51.0823 55.375C49.9145 56.5429 48.3609 57.15 46.7895 57.15L46.7859 57.1429Z" fill="%23111111"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2256_7437">%0A<rect width="100" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A';const Ay=ky,vo=o.forwardRef(function({item:e,disabled:t=!1,onPlayDone:a,selectable:r=!1,selected:s=!1,onSelect:i,flipDelay:l=0,hideLabel:c=!1,hideAudio:d=!1,orderRank:u=null},p){const{t:m}=be.useTranslation(),f=e.word||e.title||"",g=t||!f,y=e.audio??e.sound??e.audioKey,h=e.subLabel||e.pronunciation||"",w=e.colloquialLabel||"",[C,b]=o.useState({label:f,subLabel:h,colloquialLabel:w,homonum:e.homonum});f&&(C.label!==f||C.subLabel!==h||C.colloquialLabel!==w||!Object.is(C.homonum,e.homonum))&&b({label:f,subLabel:h,colloquialLabel:w,homonum:e.homonum});const x=o.useRef(null),v=Zt("(max-width: 767px)"),[A,k]=o.useState(!1),N=`${typeof y=="string"?y:y?.src??""}\0${f}`,[_,B]=o.useState({for:"",url:""}),E=_.for===N?_.url:"",P=ni(),H=e.textOnly??(!e.image&&!!C.label&&!!P&&P.entries.length>0&&!P.byWord.has(C.label)),S=H?"":Gn()?.(C.label,C.homonum)??e.image??"",{imgRef:V,loading:j,hasImage:M,onLoad:I,onError:G}=yo(S);o.useEffect(()=>{let O=!1;return(async()=>{if(y){if(typeof y=="string"){if(y.startsWith("http")||y.includes("/")){B({for:N,url:y});return}}else if(typeof y=="object"&&!Array.isArray(y)){const Y=y.src;if(Y){B({for:N,url:Y});return}}}const $=Br();if($&&f)try{const Y=await Promise.resolve($(f));!O&&Y&&B({for:N,url:Y})}catch{}})(),()=>{O=!0}},[y,f,N]);const Q=o.useRef(!0),z=o.useRef(null);o.useEffect(()=>(Q.current=!0,()=>{Q.current=!1,z.current&&Ka(z.current),z.current=null;try{x.current?.pause()}catch{}x.current=null}),[]);const q=o.useCallback(()=>new Promise(O=>{if(typeof window<"u"&&window.speechSynthesis&&f){k(!0),window.speechSynthesis.cancel();const $=new SpeechSynthesisUtterance(f);$.lang="ko-KR",$.onend=()=>{k(!1);try{a?.()}catch{}O()},$.onerror=()=>{k(!1),O()},window.speechSynthesis.speak($)}else O()}),[f,a]),W=o.useCallback(O=>new Promise($=>{let Y=!1;const ee=()=>{Y||(Y=!0,k(!1),$(!1))};try{const Z=new Audio(O);x.current=Z,Z.onended=()=>{if(!Y){Y=!0,k(!1);try{a?.()}catch{}$(!0)}},Z.onerror=ee,Z.play().catch(ee)}catch{ee()}}),[a]),L=o.useCallback(async()=>{if(t||!Q.current)return;const O=()=>{z.current===O&&(z.current=null);try{x.current?.pause()}catch{}try{window.speechSynthesis?.cancel()}catch{}k(!1)},$=Ga(O);z.current=O;try{window.speechSynthesis?.cancel()}catch{}try{if(E&&(k(!0),await W(E)))return;const Y=Q0();if(Y&&f)try{const ee=await Promise.resolve(Y(f));if(!Q.current||z.current!==O||ee&&(k(!0),await W(ee)))return}catch{}if(!Q.current||z.current!==O)return;await q()}finally{$(),z.current===O&&(z.current=null)}},[t,E,f,W,q]);o.useImperativeHandle(p,()=>({play:()=>L()}),[L]);const D=O=>O.stopPropagation(),F=o.useCallback(O=>{if(O.stopPropagation(),!t){if(A){try{x.current?.pause()}catch{}try{window.speechSynthesis?.cancel()}catch{}k(!1);return}L()}},[t,A,L]),R=De("training-word-card",t?"training-word-card--disabled":"",g?"training-word-card--flipped":"",r?"training-word-card--selectable":"",s?"training-word-card--selected":"");return n.jsx("div",{className:R,onClick:r&&!t?i:void 0,role:r?"button":void 0,"aria-pressed":r?s:void 0,tabIndex:r&&!t?0:void 0,"aria-disabled":r&&t?!0:void 0,onKeyDown:r&&!t?O=>{O.target===O.currentTarget&&(O.key==="Enter"||O.key===" "||O.key==="Spacebar")&&(O.preventDefault(),i?.())}:void 0,children:n.jsxs("div",{className:"training-word-card__flipper",style:{transitionDelay:g?"0ms":`${l}ms`},children:[n.jsxs("div",{className:"training-word-card__front",children:[s&&n.jsx("div",{className:"training-word-card__selected-badge",onClick:D,children:n.jsx(ft,{type:"dot",size:40,position:"inline",animate:!0,icon:u!=null?void 0:"check",number:u??void 0,"aria-label":u!=null?m("training.nthSelected",{n:u}):m("training.selected","\uC120\uD0DD\uB428")})}),n.jsx("div",{className:"training-word-card__image-wrap",children:H?n.jsx("div",{className:"training-word-card__text-face",children:C.label}):M?n.jsxs(n.Fragment,{children:[j&&n.jsx("div",{className:"training-word-card__spinner"}),n.jsx("img",{ref:V,className:"training-word-card__image",src:S,alt:C.label||m("common.image","\uC774\uBBF8\uC9C0"),style:{opacity:j?0:1},onLoad:I,onError:G})]}):n.jsx("div",{className:"training-word-card__placeholder"})}),!c&&n.jsxs("div",{className:"training-word-card__body",children:[!H&&n.jsx("div",{className:"training-word-card__word",children:C.label}),C.subLabel&&n.jsxs("div",{className:"training-word-card__pronunciation",children:["[",C.subLabel,"]"]}),C.colloquialLabel&&n.jsxs("div",{className:"training-word-card__colloquial caption-1",children:["[",C.colloquialLabel,"]"]})]}),!d&&n.jsx("div",{className:"training-word-card__bottom",onClick:r?D:void 0,children:n.jsx(pe,{htmlType:"button",size:v?40:48,type:v?"dot":"bar",icon:A?"pause":"play",label:v?void 0:m("training.playSound","\uC18C\uB9AC \uB4E3\uAE30"),selected:A,onClick:F,disabled:t,ariaLabel:m("training.playSound","\uC18C\uB9AC \uB4E3\uAE30")})})]}),n.jsx("div",{className:"training-word-card__back","aria-hidden":"true",children:n.jsx("img",{src:Ay,className:"training-word-card__disabled-symbol",alt:"",draggable:!1})})]})})}),By=260;function Dn(e){const{t}=be.useTranslation(),{title:a,subtitle:r,headerActions:s,headerSegment:i,children:l,buttons:c,footer:d,footerStart:u,footerEnd:p,footerClassName:m="",footerLayout:f="center",onClose:g,closeDisabled:y=!1,beforeClose:h,closeOnBackdrop:w=!0,className:C="",ariaLabel:b,useTitle:x=!0,inline:v=!1,size:A,layer:k="modal",height:N,fillBody:_=!1,resetScrollKey:B}=e||{},[E,P]=o.useState(!1),H=o.useRef(!1),S=o.useRef(null),V=o.useId(),j=o.useRef(null);o.useEffect(()=>{},[v,a,b,C]),o.useEffect(()=>{B!==void 0&&j.current&&(j.current.scrollTop=0)},[B]);const[M,I]=o.useState(!1);o.useEffect(()=>{const Z=j.current;if(!Z)return;const ae=()=>I(Z.scrollHeight>Z.clientHeight+1);if(ae(),typeof ResizeObserver>"u")return;const _e=new ResizeObserver(ae);_e.observe(Z);const re=Z.firstElementChild;return re&&_e.observe(re),()=>_e.disconnect()},[l,B]),o.useEffect(()=>{if(!v)return $l()},[v]),o.useEffect(()=>{if(v)return;const Z=document.activeElement,ae=S.current;return Fr(ae,Z),ae&&!ae.contains(document.activeElement)&&(ae.querySelector(Cn)??ae).focus(),()=>{const _e=document.activeElement;(!_e||_e===document.body||ae&&ae.contains(_e))&&Or(Z)?.focus?.()}},[v]),Pr(S,!v);const G=o.useRef(!0),Q=Hr(),z=o.useRef(null);o.useEffect(()=>(G.current=!0,()=>{G.current=!1,z.current&&(clearTimeout(z.current),z.current=null)}),[]);const q=o.useCallback(()=>{!G.current||!H.current||(H.current=!1,P(!1))},[]),W=o.useCallback((Z,ae=!1)=>{if(ae&&!G.current||H.current)return;H.current=!0,P(!0);const _e=setTimeout(()=>{z.current===_e&&(z.current=null);let re;try{re=Z?Z():void 0}catch{q();return}re&&typeof re.then=="function"&&re.then(()=>{setTimeout(q,120)},q)},Q?0:By);ae&&(z.current=_e)},[q,Q]),L=o.useCallback(()=>{y||h&&h()===!1||W(g,!0)},[W,g,y,h]),D=o.useRef(L);o.useEffect(()=>{D.current=L});const F=!v&&!!g;o.useEffect(()=>{if(F)return In(()=>D.current())},[F]);const R=F&&w,O=o.useRef(!1),$=Z=>{O.current=Z.target===Z.currentTarget},Y=Z=>{const ae=O.current;O.current=!1,ae&&Z.target===Z.currentTarget&&L()},ee=n.jsx("div",{className:`popup ${v?"popup--inline":""} ${k==="belowPagePopup"?"popup--below-page-popup":""} ${E?"popup--closing":""} ${C}`,onPointerDown:R?$:void 0,onClick:R?Y:void 0,onMouseDown:v?void 0:Z=>{Z.target===Z.currentTarget&&Z.preventDefault()},children:n.jsxs("div",{ref:S,className:`popup-panel${A?` popup-panel--${A}`:""}${N!=null?" popup-panel--has-height":""}${_?" popup-panel--fill-body":""}`,style:N!=null?{"--popup-height":typeof N=="number"?`${N}px`:N}:void 0,tabIndex:-1,role:v?void 0:"dialog","aria-modal":v?void 0:!0,"aria-labelledby":!v&&x&&a?V:void 0,"aria-label":!v&&!(x&&a)?b??(typeof a=="string"?a:void 0):void 0,children:[!x&&(s||g)?n.jsxs("div",{className:"popup-close-float",children:[s,g&&n.jsx(pe,{htmlType:"button",size:40,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,onClick:L,disabled:y,ariaLabel:t("common.close","\uB2EB\uAE30")})]}):a||s||g?n.jsxs("div",{className:`popup-header${r?" popup-header--with-subtitle":""}`,children:[n.jsxs("div",{className:"popup-header-main",children:[n.jsx("span",{id:V,className:"popup-title popup-title--left h2",children:a}),r&&n.jsx("span",{className:"popup-subtitle body-3",children:r})]}),i&&n.jsx("div",{className:"popup-header-segment",children:n.jsx(xn,{size:40,ariaLabel:i.ariaLabel,options:i.options.map(Z=>({key:Z.key,label:Z.label,disabled:Z.disabled})),value:i.value,onChange:i.onChange})}),n.jsxs("div",{className:"popup-header-actions",children:[s,g&&n.jsx(pe,{htmlType:"button",size:40,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,onClick:L,disabled:y,ariaLabel:t("common.close","\uB2EB\uAE30")})]})]}):null,n.jsx("div",{className:"popup-content",ref:j,tabIndex:M?0:void 0,children:n.jsx("div",{className:"popup-content__inner",children:typeof l=="function"?l({animateThen:W,closeWithAnimation:L}):l})}),u||p?n.jsxs("div",{className:`popup-footer popup-footer--bar${m?` ${m}`:""}`,children:[n.jsx("div",{className:"popup-footer__start",children:typeof u=="function"?u({animateThen:W,closeWithAnimation:L}):u}),n.jsx("div",{className:"popup-footer__end",children:typeof p=="function"?p({animateThen:W,closeWithAnimation:L}):p})]}):c?.length?n.jsx("div",{className:`popup-footer popup-footer--buttons${f!=="center"?` popup-footer--${f}`:""}`,children:c.map((Z,ae)=>n.jsx(pe,{htmlType:"button",size:48,variant:Z.variant??"default",label:Z.label,disabled:Z.disabled,onClick:()=>Z.onClick?.({animateThen:W,closeWithAnimation:L})},ae))}):d?n.jsx("div",{className:`popup-footer${f!=="center"?` popup-footer--${f}`:""}${m?` ${m}`:""}`,children:typeof d=="function"?d({animateThen:W,closeWithAnimation:L}):d}):null]})});return v||typeof document>"u"?ee:Ut.createPortal(ee,document.body)}function er(e){return String(e)}const tr=["o","triangle","x"];function lc(e,t){return e===t?null:t}const cc={o:"circle",triangle:"triangle",x:"x"},uc={o:"main",triangle:"warn",x:"danger"};function Ny(e){let t=0,a=0,r=0;for(const i of Object.values(e))i==="o"?t++:i==="triangle"?a++:i==="x"&&r++;const s=t+a+r;return{marked:s,o:t,triangle:a,x:r,rate:s===0?null:(t+a*.5)/s}}function xo(e){const t={};for(const[a,r]of Object.entries(e))(r==="o"||r==="triangle"||r==="x")&&(t[a]=r);return t}function dc(e){const t=[];let a=0;for(const r of e)t.push(a),a+=r;return t}function Ey(e,t){return!t&&e>0}const aa={landscape:{width:1123,height:794,printSize:"A4 landscape",printW:"297mm",printH:"210mm"},portrait:{width:794,height:1123,printSize:"A4 portrait",printW:"210mm",printH:"297mm"}};function Dy(e="landscape"){fn("print-word-table-deprecated","[printWordTable] @deprecated \u2014 WordTablePopup renderButtons \uC758 print(\uB610\uB294 useWordTablePrint().print)\uB97C \uC4F0\uC138\uC694. \uC804\uC5ED \uC778\uC1C4\uB294 \uD654\uBA74\uC758 \uBAA8\uB4E0 \uB2E8\uC5B4\uD45C\uB97C \uD568\uAED8 \uCC0D\uC2B5\uB2C8\uB2E4.");const{printSize:t,printW:a,printH:r}=aa[e],s=document.createElement("style");s.textContent=`@page { size: ${t}; margin: 0; } .word-table { width: ${a} !important; height: ${r} !important; }`,document.head.appendChild(s);const i=()=>{document.head.removeChild(s),window.removeEventListener("afterprint",i)};window.addEventListener("afterprint",i),window.print()}function pc(e,t){if(e.length===0)return[[]];const a=Math.max(1,Math.floor(t)),r=[];for(let s=0;s<e.length;s+=a)r.push(e.slice(s,s+a));return r}const Sy={landscape:{1:{cols:1,rows:1},2:{cols:2,rows:1},3:{cols:3,rows:1},4:{cols:2,rows:2},5:{cols:3,rows:2},6:{cols:3,rows:2},7:{cols:4,rows:2},8:{cols:4,rows:2},9:{cols:5,rows:2},10:{cols:5,rows:2},11:{cols:4,rows:3},12:{cols:4,rows:3}},portrait:{1:{cols:1,rows:1},2:{cols:1,rows:2},3:{cols:1,rows:3},4:{cols:1,rows:4},5:{cols:1,rows:5},6:{cols:2,rows:3},7:{cols:2,rows:4},8:{cols:2,rows:4},9:{cols:2,rows:5},10:{cols:2,rows:5},11:{cols:3,rows:4},12:{cols:3,rows:4}}};function jy(e,t){const a=Sy[e][t];if(a)return a;const r=Math.max(1,Math.ceil(t)),s=Math.max(1,Math.ceil(Math.sqrt(r*.707)));let i,l;return e==="landscape"?(l=s,i=Math.ceil(r/l)):(i=s,l=Math.ceil(r/i)),(e==="landscape"?i<l:l<i)&&([i,l]=[l,i]),{cols:i,rows:l}}const Ty={\uD45C\uC2DC:"word-table-block__content--cut-show",\uC810\uC120:"",\uCF54\uB108:"word-table-block__content--cut-corner",\uBBF8\uD45C\uC2DC:""},mc={\uBA85:"\uBA85\uC0AC",\uB3D9:"\uB3D9\uC0AC",\uD615:"\uD615\uC6A9\uC0AC",\uBD80:"\uBD80\uC0AC",\uC218:"\uC218\uC0AC",\uAD00:"\uAD00\uD615\uC0AC",\uAC10:"\uAC10\uD0C4\uC0AC",\uC870:"\uC870\uC0AC",\uC811:"\uC811\uC0AC",\uC758:"\uC758\uC874\uBA85\uC0AC",\uB300:"\uB300\uBA85\uC0AC",\uBCF4\uB3D9:"\uBCF4\uC870\uB3D9\uC0AC",\uBCF4\uD615:"\uBCF4\uC870\uD615\uC6A9\uC0AC"},hc={\uACE0\uC720:"\uACE0\uC720\uC5B4",\uD55C\uC790:"\uD55C\uC790\uC5B4",\uC678\uB798:"\uC678\uB798\uC5B4",\uD63C\uC885:"\uD63C\uC885\uC5B4"};function _o(e,t){return e?e.split("/").map(a=>t[a]??a).join("/"):""}function fc(e,t,a,r){if(r!=="\uC810\uC120")return{};const s=e%t,i=Math.floor(e/t),l=s<t-1,c=i<a-1;if(!l&&!c)return{};const d="#ddd",u=g=>`repeating-linear-gradient(to ${g}, ${d} 0, ${d} 5px, transparent 5px, transparent 10px)`,p=[],m=[],f=[];return l&&(p.push(u("bottom")),m.push("1px 100%"),f.push("right center")),c&&(p.push(u("right")),m.push("100% 1px"),f.push("center bottom")),{backgroundImage:p.join(", "),backgroundSize:m.join(", "),backgroundPosition:f.join(", "),backgroundRepeat:"no-repeat",printColorAdjust:"exact",WebkitPrintColorAdjust:"exact"}}const My=280,Ly=240,$y=280,Ry=400,Py=120,Iy=280;function Cc(e,t){const a=o.useRef(null),[r,s]=o.useState(1),[i,l]=o.useState(0),c=o.useCallback((d,u)=>{if(!(d>0))return;const p=d/e,m=t&&u>0?u/t:1/0,f=Math.min(1,p,m);s(f),l(Math.max(0,(d-e*f)/2))},[e,t]);return o.useEffect(()=>{const d=a.current;if(!d)return;const u=t?d.parentElement??d:d;if(c(u.clientWidth,u.clientHeight),typeof ResizeObserver>"u")return;const p=new ResizeObserver(([m])=>c(m.contentRect.width,m.contentRect.height));return p.observe(u),()=>p.disconnect()},[c,t]),{scalerRef:a,scale:r,offset:i}}const Fy={position:"absolute",width:1,height:1,margin:-1,padding:0,overflow:"hidden",clipPath:"inset(50%)",whiteSpace:"nowrap",border:0},Oy=400,gc=8;function bc({label:e,subLabel:t,colloquialLabel:a,homonum:r,showWord:s=!0,showImage:i=!0,showPronunciation:l=!0,showColloquial:c=!0,buttonSize:d=40,wordInfo:u}){const{t:p}=be.useTranslation(),m=o.useRef(null),f=o.useRef(null),g=o.useRef(null),[y,h]=o.useState(1),[w,C]=o.useState(!1),[b,x]=o.useState({for:"",url:""}),[v,A]=o.useState(null),k=t&&t.length>0?t:t2()?.(e,r)??"",N=Gn()?.(e,r)??"",{imgRef:_,loading:B,failed:E,onLoad:P,onError:H}=yo(N),S=o.useCallback(()=>A(f.current?.getBoundingClientRect()??null),[]),V=o.useCallback(()=>A(null),[]),j=Vr(!!v,F=>{F?S():V()},f),M=o.useMemo(()=>{if(!u)return null;const F=[];return u.grade&&F.push(p("wordTable.info.grade",{n:u.grade,defaultValue:"\uB09C\uC774\uB3C4: {{n}}\uB4F1\uAE09"})),u.syllables&&F.push(p("wordTable.info.syllables",{n:u.syllables,defaultValue:"\uC74C\uC808 \uC218: {{n}}\uC74C\uC808"})),u.pos&&F.push(p("wordTable.info.pos",{v:_o(u.pos,Hy(p)),defaultValue:"\uD488\uC0AC: {{v}}"})),u.wordType&&F.push(p("wordTable.info.wordType",{v:_o(u.wordType,zy(p)),defaultValue:"\uC720\uD615: {{v}}"})),F.length?F:null},[u,p]),I=k||e,G=b.for===I?b.url:"";o.useEffect(()=>{const F=Br(),R=k||e;if(!F||!R)return;let O=!1;return Promise.resolve(F(R)).then($=>{!O&&$&&x({for:R,url:$})}),()=>{O=!0}},[k,e]);const Q=o.useRef(null),z=o.useRef(null);o.useEffect(()=>()=>{g.current?.pause(),z.current?.()},[]);const q=o.useCallback(async F=>{if(F.stopPropagation(),w){Q.current?.();return}if(G){C(!0);try{const R=new Audio(G);g.current=R;const O=()=>{C(!1),z.current?.()},$=()=>{R.pause(),O()};Q.current=$;const Y=Ga($);z.current=Y,R.onended=O,R.onerror=O,await R.play()}catch{C(!1),z.current?.()}}},[w,G]),W=i&&!!N&&!E,L=W&&s?My:W?$y:Ly,D=W&&s?Ry:W?Iy:Py;return o.useEffect(()=>{const F=m.current;if(!F||typeof ResizeObserver>"u")return;const R=new ResizeObserver(([O])=>{const{width:$,height:Y}=O.contentRect;h(Math.min($/L,Y/D))});return R.observe(F),()=>R.disconnect()},[L,D]),n.jsxs("div",{ref:m,className:De("word-table-cell",W?"word-table-cell--with-image":""),children:[n.jsxs("div",{className:"word-table-cell__inner",style:{transform:`scale(${y})`},children:[W&&n.jsxs("div",{className:"word-table-cell__image-wrap",children:[B&&n.jsx("div",{className:"word-table-cell__spinner"}),n.jsx("img",{ref:_,className:"word-table-cell__image",src:N,alt:e,draggable:!1,style:{opacity:B?0:1},onLoad:P,onError:H})]}),s&&n.jsx("span",{className:"word-table-cell__word h0",children:e}),l&&k&&n.jsxs("span",{className:"word-table-cell__sub h3",children:["[",k,"]"]}),c&&a&&n.jsxs("span",{className:"word-table-cell__colloquial h5",children:["[",a,"]"]})]}),n.jsxs("div",{className:"word-table-cell__play-button","data-audio-src":G,children:[n.jsx("span",{"data-play-state":"play",style:{display:w?"none":void 0},children:n.jsx(pe,{htmlType:"button",size:d,type:"dot",icon:"play",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:p("common.play","\uC7AC\uC0DD"),onClick:q})}),n.jsx("span",{"data-play-state":"pause",style:{display:w?void 0:"none"},children:n.jsx(pe,{htmlType:"button",size:d,type:"dot",icon:"pause",useBorder:!1,selected:!0,showTooltipInfo:p("common.pause","\uBA48\uCDA4"),onClick:q})})]}),u&&n.jsxs("div",{ref:f,className:"word-table-cell__info-button",onPointerEnter:F=>{Xn(F)||S()},onPointerLeave:F=>{Xn(F)||V()},onFocus:()=>{Jn()||S()},onBlur:V,children:[n.jsx(pe,{htmlType:"button",size:d,type:"dot",icon:"info",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:!1,ariaLabel:p("wordTable.wordInfo","{{word}} \uB0B1\uB9D0 \uC815\uBCF4",{word:e}),onClick:F=>{F.stopPropagation(),j.touchPress()}}),v&&M&&n.jsx(Fn,{anchorRect:v,items:M,showIndex:!1})]})]})}const yc={\uBA85:"noun",\uB3D9:"verb",\uD615:"adjective",\uBD80:"adverb",\uC218:"numeral",\uAD00:"determiner",\uAC10:"interjection",\uC870:"particle",\uC811:"affix",\uC758:"dependentNoun",\uB300:"pronoun",\uBCF4\uB3D9:"auxVerb",\uBCF4\uD615:"auxAdjective"},vc={\uACE0\uC720:"native",\uD55C\uC790:"sino",\uC678\uB798:"foreign",\uD63C\uC885:"mixed"};function Hy(e){return Object.fromEntries(Object.entries(mc).map(([t,a])=>[t,yc[t]?e(`wordTable.pos.${yc[t]}`,{defaultValue:a}):a]))}function zy(e){return Object.fromEntries(Object.entries(hc).map(([t,a])=>[t,vc[t]?e(`wordSearch.filter.type.${vc[t]}`,{defaultValue:a}):a]))}function ra({title:e,titleIcon:t,disc:a,className:r,orientation:s="landscape",contentTypes:i=["\uC774\uBBF8\uC9C0","\uB2E8\uC5B4","\uD45C\uC900 \uBC1C\uC74C"],cutLine:l="\uD45C\uC2DC",showOutline:c=!0,showDivLine:d=!0,items:u,editCells:p,count:m,activeCell:f=null,onActivateCell:g,onRemoveCell:y,onRemoveItem:h,onReorder:w,renderCellAction:C,showFillerAdd:b=!1,contentRef:x,buttonSize:v=40,pageNumber:A,pageNumberPosition:k="right",fitHeight:N=!1,scoring:_=!1,marks:B,onMarkClick:E,scoreIndexOffset:P=0}){const H=o.useCallback((ie,ye)=>{E?.(P+ie,ye)},[E,P]),S=(ie,ye)=>{const se=B?.[er(P+ie)]??null;return n.jsx("div",{className:De("word-table-cell__score",se?"word-table-cell__score--marked":""),style:Me>1?{transform:`translateX(-50%) scale(${Me})`,transformOrigin:"bottom center"}:void 0,children:tr.map(Ie=>n.jsx("span",{className:De("word-table-cell__score-slot",se===Ie?"word-table-cell__score-slot--on":""),children:n.jsx(pe,{htmlType:"button",size:v,type:"dot",icon:cc[Ie],variant:se===Ie?uc[Ie]:"default",selected:se===Ie,useBorder:!1,showTooltipInfo:!1,ariaLabel:V(`wordTable.scoring.${Ie}`,{word:ye,defaultValue:`${ye} ${Ie}`}),onClick:ze=>{ze.stopPropagation(),H(ie,Ie)}})},Ie))})},{t:V}=be.useTranslation(),j=p!==void 0,M=e!=null||!!t||!!a,I=Zt("(max-width: 767px)"),G=o.useRef(null),[Q,z]=o.useState(null),q=u?.length??0,[W,L]=o.useState(null),[D,F]=o.useState(""),R=o.useRef(null),O=o.useRef(null),$=o.useRef(null),Y=o.useRef(null),ee=o.useCallback(ie=>{O.current=ie,typeof x=="function"?x(ie):x&&(x.current=ie)},[x]),Z=o.useCallback((ie,ye)=>{R.current=ye,w?.(ie,ye),F(V("wordTable.reorder.moved",{n:ye+1,total:q,defaultValue:"{{total}}\uCE78 \uAC00\uC6B4\uB370 {{n}}\uBC88\uC9F8\uB85C \uC62E\uAE40"}))},[w,V,q]);o.useEffect(()=>{const ie=R.current;ie!=null&&(R.current=null,O.current?.querySelectorAll(".word-table-block__card:not(.word-table-block__card--filler)")?.[ie]?.querySelector(".word-table-block__card-handle button")?.focus())}),o.useEffect(()=>()=>{Y.current?.()},[]);const ae=o.useCallback((ie,ye)=>{if(!w||!ie.altKey||ie.ctrlKey||ie.metaKey)return;const se=ie.key==="ArrowRight";if(!se&&ie.key!=="ArrowLeft")return;ie.preventDefault();const Ie=ye+(se?1:-1);Ie<0||Ie>=q||Z(ye,Ie)},[w,q,Z]),_e=o.useCallback((ie,ye)=>{if(!w||ie.pointerType==="mouse")return;const se=ie.target.closest?.("button");if(se&&!se.closest(".word-table-block__card-handle"))return;Y.current?.();const Ie={x:ie.clientX,y:ie.clientY};let ze=!1;const Ge=Pe=>{ze&&Pe.cancelable&&Pe.preventDefault()},Ze=Pe=>{if(!ze){(Math.abs(Pe.clientX-Ie.x)>gc||Math.abs(Pe.clientY-Ie.y)>gc)&&Oe();return}const lt=document.elementFromPoint?.(Pe.clientX,Pe.clientY)?.closest?.("[data-wordtable-cell]"),wt=lt?Number(lt.dataset.wordtableCell):NaN,Dt=Number.isInteger(wt)?wt:null;$.current=Dt,z(Dt)},Ye=()=>{const Pe=$.current,lt=ze;Oe(),lt&&Pe!=null&&Pe!==ye&&Z(ye,Pe)},Ke=setTimeout(()=>{ze=!0,L(ye),$.current=ye,z(ye),window.addEventListener("touchmove",Ge,{passive:!1})},Oy);function Oe(){clearTimeout(Ke),window.removeEventListener("pointermove",Ze),window.removeEventListener("pointerup",Ye),window.removeEventListener("pointercancel",Ye),window.removeEventListener("touchmove",Ge),ze=!1,$.current=null,Y.current=null,L(null),z(null)}Y.current=Oe,window.addEventListener("pointermove",Ze),window.addEventListener("pointerup",Ye),window.addEventListener("pointercancel",Ye)},[w,Z]),{width:re,height:ue}=aa[s],U=typeof N=="number"?N:N&&typeof N=="object"?I?N.narrow:N.wide:null,{scalerRef:oe,scale:de,offset:ve}=Cc(re,N?ue:void 0),ge=j?p?.length??0:u?.length??0,Se=Math.max(m??ge,1),{cols:Ce,rows:Ee}=jy(s,Se),Be={word:i.length===0||i.includes("\uB2E8\uC5B4"),image:i.length===0||i.includes("\uC774\uBBF8\uC9C0"),pron:i.length===0||i.includes("\uD45C\uC900 \uBC1C\uC74C"),colloq:i.length===0||i.includes("\uAD6C\uC5B4\uCCB4 \uBC1C\uC74C")},Re=j?(p??[]).some(ie=>ie!==null&&ie.length>1):(u??[]).some(ie=>(ie.words??[]).length>1),Le=De("word-table-block__content",Ty[l],c&&"word-table-block__content--outline",d&&Re&&"word-table-block__content--div-line",A&&k!=="none"&&"word-table-block__content--page-number"),me={transform:`scale(${1/de})`,transformOrigin:"center center"},ke=v*tr.length+4*(tr.length-1),Me=Math.max(1,Math.min(1/de,re/Ce/ke)),Te=n.jsxs("div",{ref:oe,className:"word-table__scaler",style:{height:ue*de},children:[n.jsx("div",{className:De("word-table",!M&&r),style:{width:re,height:ue,transform:`scale(${de})`,transformOrigin:"top left",marginLeft:ve},children:n.jsxs("div",{ref:ee,className:Le,style:{gridTemplateColumns:`repeat(${Ce}, 1fr)`,gridTemplateRows:`repeat(${Ee}, 1fr)`},children:[j?n.jsx(n.Fragment,{children:(p??[]).map((ie,ye)=>n.jsx("div",{className:De("word-table-block__edit-cell",ie?"word-table-block__edit-cell--filled":"word-table-block__edit-cell--empty",f===ye?"word-table-block__edit-cell--active":""),style:fc(ye,Ce,Ee,l),children:ie?n.jsxs(n.Fragment,{children:[ie.map((se,Ie)=>n.jsxs(o.Fragment,{children:[Ie>0&&n.jsx("div",{className:"word-table-block__pair-divider"}),n.jsx(bc,{label:se.word,subLabel:se.pronunciation,colloquialLabel:se.colloquialPronunciation,homonum:se.homonum,showWord:Be.word,showImage:Be.image,showPronunciation:Be.pron,showColloquial:Be.colloq,buttonSize:v})]},Ie)),_&&S(ye,ie.map(se=>se.word).join(" / ")),y&&n.jsx("div",{className:"word-table-block__card-close",children:n.jsx(pe,{htmlType:"button",size:v,type:"dot",icon:"x",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:ie.length>1?V("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):V("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),ariaLabel:ie.length>1?V("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):V("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),onClick:()=>y(ye)})})]}):g&&n.jsx("div",{style:me,children:n.jsx(pe,{htmlType:"button",size:"48",type:"bar",icon:"plus",label:V("wordTable.addWord","\uCD94\uAC00\uD558\uAE30"),onClick:()=>g(ye)})})},ye))}):n.jsxs(n.Fragment,{children:[(u??[]).map((ie,ye)=>n.jsxs("div",{"data-wordtable-cell":w?ye:void 0,className:`word-table-block__card${w?" word-table-block__card--draggable":""}${Q===ye?" word-table-block__card--drag-over":""}${W===ye?" word-table-block__card--dragging":""}`,style:fc(ye,Ce,Ee,l),draggable:!!w,onPointerDown:w?se=>_e(se,ye):void 0,onKeyDown:w?se=>ae(se,ye):void 0,onDragStart:w?()=>{G.current=ye}:void 0,onDragOver:w?se=>{se.preventDefault(),z(ye)}:void 0,onDragLeave:w?()=>z(null):void 0,onDrop:w?se=>{se.preventDefault(),G.current!==null&&G.current!==ye&&w(G.current,ye),G.current=null,z(null)}:void 0,onDragEnd:w?()=>{G.current=null,z(null)}:void 0,children:[(ie.words??[]).map((se,Ie)=>n.jsxs(o.Fragment,{children:[Ie>0&&n.jsx("div",{className:"word-table-block__pair-divider"}),n.jsx(bc,{label:se.label,subLabel:se.subLabel,colloquialLabel:se.colloquialLabel,homonum:se.homonum,showWord:Be.word,showImage:Be.image,showPronunciation:Be.pron,showColloquial:Be.colloq,buttonSize:v,wordInfo:se.grade||se.syllables!=null||se.pos||se.wordType?{grade:se.grade,syllables:se.syllables,pos:se.pos,wordType:se.wordType}:void 0})]},Ie)),_&&S(ye,(ie.words??[]).map(se=>se.label).join(" / ")),w&&n.jsx("div",{className:"word-table-block__card-handle",children:n.jsx(pe,{htmlType:"button",size:v,type:"dot",icon:"grip-vertical",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:V("wordTable.reorder.hint","Alt + \u2190 \u2192 \uB85C \uC21C\uC11C \uBC14\uAFB8\uAE30"),ariaLabel:V("wordTable.reorder.handle",{word:(ie.words??[]).map(se=>se.label).join(" / "),defaultValue:"{{word}} \uC21C\uC11C \uBC14\uAFB8\uAE30 (Alt + \uD654\uC0B4\uD45C)"})})}),(C||h)&&n.jsxs("div",{className:"word-table-block__card-actions",children:[C?.(ye,ie),h&&n.jsx("div",{className:"word-table-block__card-close",children:n.jsx(pe,{htmlType:"button",size:v,type:"dot",icon:"x",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:(ie.words??[]).length>1?V("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):V("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),ariaLabel:(ie.words??[]).length>1?V("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):V("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),onClick:()=>h(ie.id)})})]})]},ie.id)),Array.from({length:Math.max(0,Ce*Ee-(u?.length??0))}).map((ie,ye)=>{const se=(u?.length??0)+ye<Se;return n.jsx("div",{className:"word-table-block__card word-table-block__card--filler",children:b&&g&&se&&n.jsx("div",{style:me,children:n.jsx(pe,{htmlType:"button",size:v,type:"bar",icon:"plus",label:V("wordTable.addWord","\uCD94\uAC00\uD558\uAE30"),onClick:()=>g((u?.length??0)+ye)})})},`filler-${ye}`)})]}),A&&k!=="none"&&n.jsx("span",{className:`word-table__page-number body-3 word-table__page-number--${k}`,children:V("wordTable.filter.pageIndicator",{current:A.current,total:A.total})})]})}),w&&n.jsx("span",{role:"status",style:Fy,children:D})]}),Ae=U==null?Te:n.jsx("div",{className:"word-table__frame",style:{height:U},children:Te});return M?n.jsx(na,{type:"page",icon:t,title:e,disc:a,className:De("word-table-block",r),children:Ae}):Ae}function Vy(e,t,a){const r=[];for(const s of e??[]){if(s.type==="note"||s.type==="input")continue;const i=s.displayLabel??s.label,l=Wy(s,t?.[s.label],a);l!==null&&r.push(`${i} ${l}`)}return r.join(" \xB7 ")}function Wy(e,t,a){const r=(Array.isArray(t)?t:t===void 0?[]:[t]).filter(s=>s!==en);return r.length===0?e.allOption?e.allLabel??a:null:r.map(s=>qy(e,s)).join(", ")}function qy(e,t){const a=[...e.items??[],...(e.groups??[]).flat()];for(const r of a)if(r!=null){if(typeof r=="string"){if(r===t)return r;continue}if(r.value===t)return r.displayLabel??r.labels?.join(" ")??r.value}return t}function wn({title:e,headerAction:t,headerSummary:a,collapsible:r=!1,defaultCollapsed:s=!1,collapsed:i,onCollapsedChange:l,footer:c,sections:d,selected:u={},onSelect:p,align:m,sectionAlign:f,className:g}){const y=(m??(f==="vertical"?"newline":"inline"))==="inline",{t:h}=be.useTranslation(),[w,C]=o.useState(s),b=i??w,x=()=>{const _=!b;C(_),l?.(_)},v=_=>{if(!r)return;const B=_.target;!B||typeof B.closest!="function"||B.closest(".filter-panel__collapse-toggle")||B.closest('button, a, input, select, textarea, label, [role="radiogroup"], [role="button"], [role="menu"]')||x()},A=o.useMemo(()=>a!==void 0||!b?"":Vy(d,u,h("common.all","\uC804\uCCB4")),[a,b,d,u,h]),k=a??(A?n.jsx("span",{className:"filter-panel__header-summary body-3",children:A}):null),N=e||t||a||r;return n.jsxs("div",{className:De("filter-panel",r?"filter-panel--collapsible":"",b?"filter-panel--collapsed":"",g),children:[N&&n.jsxs("div",{className:"filter-panel__header",onClick:r?v:void 0,children:[n.jsx("div",{className:"filter-panel__title-row",children:e&&n.jsx("span",{className:"filter-panel__title h4",children:e})}),n.jsxs("div",{className:"filter-panel__header-actions",children:[b?k:t,r&&n.jsx(pe,{htmlType:"button",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:b?"chevron-down":"chevron-up",className:"filter-panel__collapse-toggle",ariaLabel:b?h("common.expand","\uD3BC\uCE58\uAE30"):h("common.collapse","\uC811\uAE30"),"aria-expanded":!b,onClick:x})]})]}),!b&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:De("filter-panel__sections",y?"filter-panel__sections--row":""),children:d.map(_=>{const B=u[_.label],E=B===void 0||(Array.isArray(B)?B.length===0:!1),P=(_.items??[]).filter(S=>S!=null);_.allOption&&P.some(S=>(typeof S=="string"?S:S.value)===en)&&fn(`filter-panel-all-value:${_.label}`,`[FilterPanel] '${_.label}' \uC808\uC5D0 allOption \uACFC \uAC12 '${en}' \uC778 \uBCF4\uAE30\uAC00 \uD568\uAED8 \uC788\uB2E4 \u2014 \uB450 \uC120\uD0DD\uC774 \uAD6C\uBCC4\uB418\uC9C0 \uC54A\uB294\uB2E4. \uBCF4\uAE30 \uAC12\uC744 \uBC14\uAFD4\uB77C.`);const H=S=>{const V=typeof S=="string"?S:S.value,j=typeof S!="string"&&!!S.disabled,M=typeof S!="string"?S.labels:void 0,I=typeof S!="string"?S.displayLabel:void 0,G=typeof S!="string"?S.tooltip:void 0,Q=typeof S!="string"?S.descriptionTooltip:void 0,z=typeof S!="string"?S.shape:void 0,q=Array.isArray(B)?B.includes(V):B===V;return n.jsx(pe,{htmlType:"button",size:"keyboard",label:M??I??V,type:_.itemType??(M?"bar":V.length===1?"dot":void 0),selected:q,disabled:j,shape:z,showTooltipInfo:!!G,tooltipInfoText:G,tooltipDescription:Q,onClick:()=>p?.(V,_.label)},V)};return n.jsxs(o.Fragment,{children:[_.groupLabel&&n.jsxs("div",{className:"filter-panel__group-label-row",children:[n.jsx("div",{className:"filter-panel__group-label body-2",children:_.groupLabel}),_.groupAction]}),n.jsxs("div",{className:De("filter-panel__section",_.layout==="row"?"filter-panel__section--row":"",_.block?"filter-panel__section--block":""),children:[n.jsxs("div",{className:"filter-panel__section-label-row",children:[n.jsx("span",{className:"filter-panel__section-label body-3",children:_.displayLabel??_.label}),_.labelAction??(_.labelInfo?n.jsx(Aa,{..._.labelInfo}):null)]}),_.type==="note"?n.jsx("div",{className:"filter-panel__note body-3",children:_.content}):_.type==="input"?n.jsx(zn,{className:"filter-panel__textfield",placeholder:_.placeholder,ariaLabel:_.displayLabel??_.label,value:u[_.label]??"",onChange:S=>p?.(S,_.label),error:_.error}):!_.multiple&&_.display==="segmented"?n.jsx(xn,{ariaLabel:_.displayLabel??_.label,options:[..._.allOption?[{key:en,label:_.allLabel??h("common.all","\uC804\uCCB4"),disabled:_.allOptionDisabled}]:[],...P.map(S=>{const V=typeof S=="string"?S:S.value,j=typeof S!="string"?S.displayLabel:void 0,M=typeof S!="string"?S.disabled:void 0;return{key:V,label:j??V,disabled:M}})],value:E&&_.allOption?en:u[_.label]??"",onChange:S=>p?.(S,_.label),size:32}):!_.multiple&&_.display==="dropdown"?n.jsx(tn,{className:"filter-panel__dropdown",size:40,options:[..._.allOption?[{value:en,label:_.allLabel??h("common.all","\uC804\uCCB4"),disabled:_.allOptionDisabled}]:[],...P.map(S=>{const V=typeof S=="string"?S:S.value,j=typeof S!="string"?S.displayLabel:void 0,M=typeof S!="string"?S.disabled:void 0;return{value:V,label:j??V,disabled:M}})],value:E&&_.allOption?en:u[_.label],onChange:S=>p?.(S,_.label)}):n.jsxs("div",{className:_.groups?"filter-panel__item-groups":"filter-panel__items",children:[_.allOption&&!_.groups&&n.jsx(pe,{htmlType:"button",size:"keyboard",label:_.allLabel??h("common.all","\uC804\uCCB4"),selected:E,disabled:_.allOptionDisabled,onClick:()=>p?.(en,_.label)}),_.groups?_.groups.map((S,V)=>n.jsxs("div",{className:"filter-panel__item-group",children:[V===0&&_.allOption&&n.jsx(pe,{htmlType:"button",size:"keyboard",label:_.allLabel??h("common.all","\uC804\uCCB4"),selected:E,disabled:_.allOptionDisabled,onClick:()=>p?.(en,_.label)}),S.filter(j=>j!=null).map(H)]},V)):P.map(H)]})]})]},_.label)})}),c!=null&&c!==!1&&n.jsx("div",{className:"filter-panel__footer body-3",children:c})]})]})}const Uy=[1,2,3,4,5,6,7,8,9,10,11,12],xc=[8,4,2,1];function _c(e,t){return{label:e("wordTable.filter.composition","\uAD6C\uC131"),items:[{value:"\uC774\uBBF8\uC9C0",disabled:!t.hasImage,displayLabel:e("wordTable.filter.image","\uC774\uBBF8\uC9C0")},{value:"\uB2E8\uC5B4",displayLabel:e("wordTable.filter.word","\uB2E8\uC5B4")},{value:"\uD45C\uC900 \uBC1C\uC74C",displayLabel:e("wordTable.filter.standardPron","\uD45C\uC900 \uBC1C\uC74C")},{value:"\uAD6C\uC5B4\uCCB4 \uBC1C\uC74C",disabled:!t.hasColloquial,displayLabel:e("wordTable.filter.colloquialPron","\uAD6C\uC5B4\uCCB4 \uBC1C\uC74C")}],multiple:!0,allOption:!0}}function wc(e){return{label:e("wordTable.filter.paperOrientation","\uC6A9\uC9C0 \uBC29\uD5A5"),items:[{value:"\uAC00\uB85C",displayLabel:e("wordTable.filter.landscape","\uAC00\uB85C")},{value:"\uC138\uB85C",displayLabel:e("wordTable.filter.portrait","\uC138\uB85C")}],display:"segmented"}}function kc(e){return{label:e("wordTable.filter.border","\uC678\uACFD\uC120"),items:[{value:"\uD45C\uC2DC",displayLabel:e("wordTable.filter.show","\uD45C\uC2DC")},{value:"\uBBF8\uD45C\uC2DC",displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}function Ac(e){return{label:e("wordTable.filter.cutLine","\uC808\uCDE8\uC120"),items:[{value:"\uD45C\uC2DC",displayLabel:e("wordTable.filter.show","\uD45C\uC2DC")},{value:"\uC810\uC120",displayLabel:e("wordTable.filter.dotted","\uC810\uC120")},{value:"\uCF54\uB108",displayLabel:e("wordTable.filter.corner","\uCF54\uB108")},{value:"\uBBF8\uD45C\uC2DC",displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}function Bc(e){return{label:e("wordPrint.divLine","\uB300\uB9BD\uC120"),items:[{value:"\uD45C\uC2DC",displayLabel:e("wordTable.filter.show","\uD45C\uC2DC")},{value:"\uBBF8\uD45C\uC2DC",displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}function Nc(e,t){return{label:e(t.hasPairs?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord"),items:[t.itemCount,...xc.filter(a=>a<t.itemCount)].map(a=>({value:`${a}\uAC1C`,displayLabel:e("wordTable.filter.itemsPerPageOption",{count:a})})),display:"segmented"}}function Ec(e,t){return e===t||!xc.includes(e)?Number.POSITIVE_INFINITY:e}function Dc(e){return{label:e("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638"),items:[{value:"\uC67C\uCABD",displayLabel:e("wordTable.filter.pageNumberLeft","\uC67C\uCABD")},{value:"\uC911\uC559",displayLabel:e("wordTable.filter.pageNumberCenter","\uC911\uC559")},{value:"\uC624\uB978\uCABD",displayLabel:e("wordTable.filter.pageNumberRight","\uC624\uB978\uCABD")},{value:"\uBBF8\uD45C\uC2DC",displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}const Sc={left:"\uC67C\uCABD",center:"\uC911\uC559",right:"\uC624\uB978\uCABD",none:"\uBBF8\uD45C\uC2DC"};function jc(e){return e==="\uC67C\uCABD"?"left":e==="\uC911\uC559"?"center":e==="\uC624\uB978\uCABD"?"right":"none"}function Tc(e,t){return{[e("wordTable.filter.composition","\uAD6C\uC131")]:t.contentTypes,[e("wordTable.filter.paperOrientation","\uC6A9\uC9C0 \uBC29\uD5A5")]:t.orientation==="landscape"?"\uAC00\uB85C":"\uC138\uB85C",[e("wordTable.filter.border","\uC678\uACFD\uC120")]:t.showOutline?"\uD45C\uC2DC":"\uBBF8\uD45C\uC2DC",[e("wordTable.filter.cutLine","\uC808\uCDE8\uC120")]:t.cutLine,[e("wordPrint.divLine","\uB300\uB9BD\uC120")]:t.showDivLine?"\uD45C\uC2DC":"\uBBF8\uD45C\uC2DC"}}function Mc(e,t,a,r){return a===e("wordTable.filter.composition","\uAD6C\uC131")?t===en?(r.setContentTypes(()=>[]),!0):(r.setContentTypes(s=>s.includes(t)?s.filter(i=>i!==t):[...s,t]),!0):a===e("wordTable.filter.paperOrientation","\uC6A9\uC9C0 \uBC29\uD5A5")?(r.setOrientation(t==="\uAC00\uB85C"?"landscape":"portrait"),!0):a===e("wordTable.filter.border","\uC678\uACFD\uC120")?(r.setShowOutline(t==="\uD45C\uC2DC"),!0):a===e("wordTable.filter.cutLine","\uC808\uCDE8\uC120")?(r.setCutLine(t),!0):a===e("wordPrint.divLine","\uB300\uB9BD\uC120")?(r.setShowDivLine(t==="\uD45C\uC2DC"),!0):!1}function Gy(e){return"sections"in e}function wo(e){const{t}=be.useTranslation(),{title:a,className:r,collapsible:s,defaultCollapsed:i,collapsed:l,onCollapsedChange:c,headerSummary:d}=e,u={collapsible:s,defaultCollapsed:i,collapsed:l,onCollapsedChange:c,headerSummary:d};if(Gy(e))return n.jsx(wn,{className:r,title:a??t("wordTable.filterTitle","\uD45C \uC124\uC815"),sections:e.sections,selected:e.selected,onSelect:e.onSelect,...u,align:"inline"});const{hasImage:p,hasColloquial:m,contentTypes:f,orientation:g,showOutline:y,cutLine:h,showDivLine:w,setters:C,showCutLine:b=!1,showDivLine2:x=!1,middleSections:v=[],extraSelected:A={},onExtraSelect:k}=e,N=[_c(t,{hasImage:p,hasColloquial:m}),wc(t),...v,kc(t),...b?[Ac(t)]:[],...x?[Bc(t)]:[]],_={...Tc(t,{contentTypes:f,orientation:g,showOutline:y,cutLine:h,showDivLine:w}),...A},B=(E,P)=>{Mc(t,E,P,C)||k?.(E,P)};return n.jsx(wn,{className:r,title:a??t("wordTable.filterTitle","\uD45C \uC124\uC815"),sections:N,selected:_,onSelect:B,...u,sectionAlign:"horizontal"})}function Lc(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}function ko(e){return e.replace(/[\\/:*?"<>|]/g,"_").trim()}let nr=null,oa=null;function Ky(e,t,a,r="",s=""){if(e.length===0||oa&&oa.iframe.isConnected&&Date.now()-oa.at<1e4)return;const i=r?ko(r):"";nr?.();let l=null;if(i){const u=document.title;document.title=i,l=()=>{document.title=u,window.removeEventListener("afterprint",l),nr===l&&(nr=null)},nr=l,window.addEventListener("afterprint",l)}const c=document.createElement("iframe");c.style.cssText="position:fixed;left:-10000px;top:0;width:1200px;height:900px;border:0;",document.body.appendChild(c);const d=c.contentDocument;if(!d){c.remove();return}oa={iframe:c,at:Date.now()},d.open(),d.write(Ao(e,t,a,!0,i,s)),d.close(),c.contentWindow?.addEventListener("afterprint",()=>{l?.(),setTimeout(()=>{c.remove(),oa?.iframe===c&&(oa=null)},0)})}function Ao(e,t,a,r=!1,s="",i=""){s=s?ko(s):"";const l=Array.from(document.styleSheets).flatMap(p=>{try{return Array.from(p.cssRules).map(m=>m.cssText)}catch{return[]}}).join(`
|
|
860
|
+
`),c="light",d=i?`<div class="paper-head">${Lc(i)}</div>`:"",u=e.map(p=>{const m=p.cloneNode(!0);return m.querySelectorAll('[data-play-state="play"]').forEach(f=>f.style.display=""),m.querySelectorAll('[data-play-state="pause"]').forEach(f=>f.style.display="none"),m.querySelectorAll(".word-table-cell__score-slot:not(.word-table-cell__score-slot--on)").forEach(f=>f.remove()),m.querySelectorAll(".word-table-cell__spinner").forEach(f=>f.remove()),m.querySelectorAll("img").forEach(f=>{f.style.opacity==="0"&&(f.setAttribute("onload","this.style.opacity=''"),f.setAttribute("onerror","this.style.visibility='hidden'"))}),`<div class="paper-wrap">${d}${m.outerHTML}</div>`}).join(`
|
|
861
861
|
`);return`<!DOCTYPE html>
|
|
862
862
|
<html data-theme="${c}">
|
|
863
863
|
<head>
|
|
@@ -1003,17 +1003,17 @@ ${x.badge}`:x.badge:void 0;if(v&&d(x.code))return null;if(!x.badge&&!p)return m(
|
|
|
1003
1003
|
`:""}
|
|
1004
1004
|
<\/script>
|
|
1005
1005
|
</body>
|
|
1006
|
-
</html>`}const Uy=1e3;function Bo({getElements:e,paperW:t,paperH:a,fileName:r="",onPopupBlocked:s,header:i=""}){const{t:l}=be.useTranslation(),c=o.useCallback(()=>{qy(e(),t,a,r,i)},[e,t,a,r,i]),d=o.useCallback(()=>{const p=e();if(p.length===0)return;const m=window.open("","_blank");if(!m){s?.();return}m.document.write(Ao(p,t,a,!1,r,i)),m.document.close()},[e,t,a,r,s,i]),u=o.useCallback(()=>{const p=e();if(p.length===0)return;const m=Ao(p,t,a,!1,r,i),h=new Blob([m],{type:"text/html;charset=utf-8"}),g=URL.createObjectURL(h),y=(r?ko(r):"")||l("wordTable.printFileNameSingle","\uB2E8\uC5B4\uD45C"),f=Object.assign(document.createElement("a"),{href:g,download:`${y}.html`});document.body.appendChild(f),f.click(),document.body.removeChild(f),setTimeout(()=>URL.revokeObjectURL(g),Uy)},[e,t,a,r,i,l]);return{print:c,openNewWindow:d,downloadHtml:u}}function $c(e){const{t}=be.useTranslation(),[a,r]=o.useState("landscape"),[s,i]=o.useState(["\uC774\uBBF8\uC9C0","\uB2E8\uC5B4","\uD45C\uC900 \uBC1C\uC74C"]),[l,c]=o.useState("\uD45C\uC2DC"),[d,u]=o.useState(!0),[p,m]=o.useState(!0),[h,g]=o.useState(8),[y,f]=o.useState("right"),w=e.length,C=e.some(I=>(I.words??[]).length>1),b=e.some(I=>(I.words??[]).some(R=>!!R.colloquialLabel)),_=Math.min(h,Math.max(w,1)),x=o.useMemo(()=>pc(e,_),[e,_]),k=x.length>1,v=_,[B,A]=o.useState(!1);o.useEffect(()=>{let I=!1;if(!Gn()){A(!1);return}return Promise.all(e.flatMap(R=>(R.words??[]).map(V=>Xs(V.label,V.homonum)))).then(R=>{I||A(R.some(Boolean))},()=>{}),()=>{I=!0}},[e]);const N=o.useMemo(()=>[_c(t,{hasImage:B,hasColloquial:b}),wc(t),...w>0?[Nc(t,{hasPairs:C,itemCount:w})]:[],...k?[Dc(t)]:[],kc(t),...v>1?[Ac(t)]:[],...C?[Bc(t)]:[]],[t,B,b,w,C,k,v]),E={...Tc(t,{contentTypes:s,orientation:a,showOutline:d,cutLine:l,showDivLine:p}),...w>0?{[t(C?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord")]:`${_}\uAC1C`}:{},...k?{[t("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")]:Sc[y]}:{}},T=o.useCallback((I,R)=>{Mc(t,I,R,{setContentTypes:i,setOrientation:r,setShowOutline:u,setCutLine:c,setShowDivLine:m})||(R===t("wordTable.filter.itemsPerPagePair","\uD398\uC774\uC9C0\uB2F9 \uB300\uB9BD\uC30D \uC218")||R===t("wordTable.filter.itemsPerPageWord","\uD398\uC774\uC9C0\uB2F9 \uB2E8\uC5B4 \uC218")?g(Ec(parseInt(I),w)):R===t("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")&&f(jc(I)))},[t,w]);return{settings:{orientation:a,contentTypes:s,cutLine:l,showOutline:d,showDivLine:p,count:v},filterSections:N,filterSelected:E,handleSelect:T,pages:x,isPaginated:k,pageNumberPosition:y}}function Gy({items:e,words:t,title:a,subtitle:r,emptyText:s,buttons:i,renderButtons:l,renderFooter:c,footerClassName:d,footerLayout:u,printFileName:p,showSettings:m,autoPrint:h,className:g,onClose:y,scoring:f=!1,onScoreChange:w,printHeader:C,beforeClose:b}){const{t:_}=be.useTranslation(),x=o.useMemo(()=>Array.isArray(e)?e:(Array.isArray(t)?t:[]).filter(ae=>typeof ae=="string"&&ae.length>0).map((ae,_e)=>({id:`${ae}-${_e}`,words:[{label:ae}]})),[e,t]),{settings:k,filterSections:v,filterSelected:B,handleSelect:A,pages:N,isPaginated:E,pageNumberPosition:T}=$c(x),I=o.useMemo(()=>dc(N.map(ae=>ae.length)),[N]),[R,V]=o.useState({}),j=o.useCallback((ae,_e)=>{V(re=>({...re,[er(ae)]:lc(re[er(ae)]??null,_e)}))},[]),M=o.useRef(w);o.useEffect(()=>{M.current=w});const F=o.useRef(R);o.useEffect(()=>{F.current!==R&&(F.current=R,M.current?.(xo(R)))},[R]);const U=o.useMemo(()=>xo(R),[R]),Q=o.useRef(null),{toastMessage:z,toastKey:G,showWarning:W,clearToast:L}=il("warning"),D=o.useRef([]),O=o.useCallback(()=>E?D.current.filter(ae=>ae!==null):Q.current?[Q.current]:[],[E]),{print:P,openNewWindow:H}=Bo({getElements:O,paperW:aa[k.orientation].width,paperH:aa[k.orientation].height,fileName:p??"",header:C??"",onPopupBlocked:()=>W(_("wordTable.popupBlocked","\uD31D\uC5C5\uC774 \uCC28\uB2E8\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uBE0C\uB77C\uC6B0\uC800 \uC124\uC815\uC5D0\uC11C \uD31D\uC5C5\uC744 \uD5C8\uC6A9\uD574 \uC8FC\uC138\uC694."))}),$=o.useMemo(()=>c?void 0:l?l({print:P,openNewWindow:H}):p?[{label:_("wordTable.openNewWindow","\uC0C8 \uCC3D\uC73C\uB85C \uBCF4\uAE30"),variant:"default",onClick:()=>H()},{label:_("wordTable.print","\uC778\uC1C4\uD558\uAE30"),variant:"default",onClick:()=>P()},...i??[]]:i,[c,l,p,i,_,P,H]),Y=o.useMemo(()=>c?c({print:P,openNewWindow:H}):void 0,[c,P,H]),ee=o.useRef(!1),Z=o.useRef(P);return o.useEffect(()=>{Z.current=P},[P]),o.useEffect(()=>{if(!h||ee.current)return;const ae=window.setTimeout(()=>{ee.current=!0,Z.current()},100);return()=>window.clearTimeout(ae)},[h]),n.jsxs(Dn,{title:a??_("keyWords.title","\uC8FC\uC694 \uB2E8\uC5B4"),subtitle:r,size:"large",className:De("word-table-popup",g),buttons:$,footer:Y,footerClassName:d,footerLayout:u,beforeClose:b,onClose:y,children:[x.length>0?n.jsxs("div",{className:"word-table-popup__body",children:[m&&n.jsx(wo,{sections:v,selected:B,onSelect:A}),E?n.jsx("div",{className:"word-table-popup__pages",children:N.map((ae,_e)=>n.jsx(ra,{items:ae,orientation:k.orientation,contentTypes:k.contentTypes,cutLine:k.cutLine,showOutline:k.showOutline,showDivLine:k.showDivLine,count:k.count,contentRef:re=>{D.current[_e]=re},pageNumber:{current:_e+1,total:N.length},pageNumberPosition:T,scoring:f,scoreIndexOffset:I[_e],marks:U,onMarkClick:j},_e))}):n.jsx("div",{className:"word-table-popup__table",children:n.jsx(ra,{items:x,orientation:k.orientation,contentTypes:k.contentTypes,cutLine:k.cutLine,showOutline:k.showOutline,showDivLine:k.showDivLine,count:k.count,contentRef:Q,fitHeight:!0,scoring:f,marks:U,onMarkClick:j})})]}):n.jsx("p",{className:"word-table-popup__empty body-3",children:s??_("keyWords.empty","\uCD94\uCD9C\uB41C \uC8FC\uC694 \uB2E8\uC5B4\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")}),n.jsx(ea,{message:z,position:"top",onClose:L},G)]})}const Ky=new Set(["x","triangle"]);function Yy(e,t){const a=[];for(let r=0;r<e.length;r++){const s=t[String(r)];s&&Ky.has(s)&&a.push(e[r])}return a}const Zy=/\s*(?:(\d+)차\s*)?복습\s*\d{2}\.\d{2}$/;function Rc(e){const t=e.name.trim(),a=e.reviewRound;if(typeof a=="number"&&Number.isFinite(a)&&a>=0){const i=Math.floor(a);if(i===0)return{\uBC14\uD0D5:t,\uD68C\uCC28:1};const l=(i===1?/\s*복습\s*\d{2}\.\d{2}$/:new RegExp(`(?:^|\\s)${i}\uCC28\\s*\uBCF5\uC2B5\\s*\\d{2}\\.\\d{2}$`)).exec(t);return{\uBC14\uD0D5:l?t.slice(0,l.index).trim():t,\uD68C\uCC28:i+1}}let r=t,s=1;for(;;){const i=Zy.exec(r);if(!i)break;s=Math.max(s,(i[1]?Number(i[1]):1)+1),r=r.slice(0,i.index).trim()}return{\uBC14\uD0D5:r,\uD68C\uCC28:s}}function Xy(e,t){const[,a,r]=$r(t).split("-"),s=`${a}.${r}`,{\uBC14\uD0D5:i,\uD68C\uCC28:l}=Rc(typeof e=="string"?{name:e}:e),c=l>=2?`${l}\uCC28 `:"";return`${i||"\uB2E8\uC5B4\uD45C"} ${c}\uBCF5\uC2B5 ${s}`}function Jy(e){return{reviewOf:e.reviewOf??e.id??void 0,reviewRound:Rc(e).\uD68C\uCC28}}function Qy(e,t){const a={};for(const[r,s]of Object.entries(t)){if(s!=="o"&&s!=="triangle"&&s!=="x")continue;const i=Number(r),l=e[i];l&&(a[r]=l)}return a}function e5(e){return e.map(t=>t.label).join(" / ")}function t5(e){return e.map(t=>t.homonum!=null?`${t.label}#${t.homonum}`:t.label).join(" / ")}function Pc(e){return e.split(" / ").map(t=>t.replace(/#\d+$/,"")).join(" / ")}function n5(e,t,a){const r=ci(a);return[e.trim(),r,t.trim()].filter(Boolean).join(" \xB7 ")}function Ic(e,t,a){return a===0?0:(e+t*.5)/a}function a5(e){const t=new Map,a=[...e].sort((s,i)=>s.scoredAt.localeCompare(i.scoredAt));for(const s of a)for(const[i,l]of Object.entries(s.marks)){const c=s.labels?.[i];if(!c)continue;const d=t.get(c)??{o:0,triangle:0,x:0,latest:l,latestAt:s.scoredAt};if(l==="o")d.o++;else if(l==="triangle")d.triangle++;else if(l==="x")d.x++;else continue;d.latest=l,d.latestAt=s.scoredAt,t.set(c,d)}const r=[];for(const[s,i]of t){const l=i.o+i.triangle+i.x;r.push({label:Pc(s),key:s,tried:l,o:i.o,triangle:i.triangle,x:i.x,rate:Ic(i.o,i.triangle,l),latest:i.latest,latestAt:i.latestAt})}return r.sort((s,i)=>s.rate-i.rate||i.tried-s.tried||Qn(s.label,i.label)||Qn(s.key??s.label,i.key??i.label)),r}function r5(e){const t=new Map;for(const r of e){const s=r.tableId??`name:${r.tableName}`,i=t.get(s)??{tableName:r.tableName,tableId:r.tableId,rows:[]};i.rows.push(r),t.set(s,i)}const a=[];for(const r of t.values()){const s=c=>Object.values(c.marks).filter(d=>d==="o"||d==="triangle"||d==="x").length,i=r.rows.filter(c=>s(c)>0).sort((c,d)=>c.scoredAt.localeCompare(d.scoredAt));if(i.length===0)continue;const l=i.map(c=>{const d=Object.values(c.marks),u=d.filter(m=>m==="o").length,p=d.filter(m=>m==="triangle").length;return Ic(u,p,s(c))});a.push({tableName:r.tableName,tableId:r.tableId,rates:l,times:i.map(c=>c.scoredAt),delta:l.length>=2?l[l.length-1]-l[0]:null})}return a.sort((r,s)=>(s.times[s.times.length-1]??"").localeCompare(r.times[r.times.length-1]??"")),a}function o5(e,t=8){return e.filter(a=>a.latest!=="o").slice(0,t)}function s5(e,t){if(e==null||t==null||e===""||t==="")return 0;if(typeof e=="number"&&typeof t=="number")return e-t;const a=String(e),r=String(t);return+(a>r)-+(a<r)}function i5(e){const t=new Map;let a=0,r=0;const s=e.map((l,c)=>({r:l,\uC790\uB9AC:c})).sort((l,c)=>l.r.answeredAt.localeCompare(c.r.answeredAt)||s5(l.r.id,c.r.id)||l.\uC790\uB9AC-c.\uC790\uB9AC).map(l=>l.r);for(const l of s){if(l.isCorrect==null)continue;const c=l.itemTitle?.trim();if(!c){r++;continue}a++;const d=l.itemId?.trim()||c,u=`${l.trainingType}|${d}`,p=t.get(u)??{trainingType:l.trainingType,itemId:d,title:c,tried:0,wrong:0,latestCorrect:l.isCorrect,latestAt:l.answeredAt,lastSelected:l.selected,setIds:[]};if(p.tried++,l.isCorrect||p.wrong++,p.title=c,p.latestCorrect=l.isCorrect,p.latestAt=l.answeredAt,p.lastSelected=l.selected,l.setId){const m=p.setIds.indexOf(l.setId);m>0&&p.setIds.splice(m,1),m!==0&&p.setIds.unshift(l.setId)}t.set(u,p)}const i=[...t.entries()].map(([l,c])=>({key:l,trainingType:c.trainingType,itemId:c.itemId,title:c.title,tried:c.tried,wrong:c.wrong,rate:c.tried===0?0:(c.tried-c.wrong)/c.tried,latestCorrect:c.latestCorrect,latestAt:c.latestAt,lastSelected:c.lastSelected,setIds:c.setIds}));return i.sort((l,c)=>l.rate-c.rate||c.tried-l.tried||Qn(l.title,c.title)),{items:i,counted:a,skippedNoTitle:r}}function l5(e,t=8){return e.filter(a=>!a.latestCorrect).slice(0,t)}function c5(e){const t=new Map;for(const r of e){const s=t.get(r.trainingType)??[];s.push(r),t.set(r.trainingType,s)}const a=[...t.entries()].map(([r,s])=>({trainingType:r,items:s,pending:s.filter(i=>!i.latestCorrect).length}));return a.sort((r,s)=>s.pending-r.pending||r.trainingType.localeCompare(s.trainingType)),a}const No=["LISTEN_IN_NOISE","SHORT_STORY","LONG_STORY","ORDERING_SENTENCE"];function u5(e){const t=new Map;let a=0;for(const i of e){if(i.latestCorrect)continue;const l=i.setIds[0];if(!l){a++;continue}const c=`${i.trainingType}|${l}`,d=t.get(c)??{setId:l,trainingType:i.trainingType,pending:0};d.pending++,t.set(c,d)}const r=(i,l)=>l.pending-i.pending||i.trainingType.localeCompare(l.trainingType)||i.setId.localeCompare(l.setId),s=[...t.values()];return{sentence:s.filter(i=>No.includes(i.trainingType)).sort(r),word:s.filter(i=>!No.includes(i.trainingType)).sort(r),noSet:a}}function d5(e,t,a=5){const r=new Set(t);if(r.size===0)return[];const s=[];for(const i of e){const l=new Set,c=[];for(const d of i.cellLabels)r.has(d)&&!l.has(d)&&(l.add(d),c.push(d));c.length!==0&&s.push({id:i.id,name:i.name,kind:i.kind,covered:c,totalCells:i.cellLabels.length})}return s.sort((i,l)=>l.covered.length-i.covered.length||i.totalCells-l.totalCells||Qn(i.name,l.name)),s.slice(0,Math.max(0,a))}function p5(e,t){const a=new Set(e.flatMap(r=>r.covered));return t.filter(r=>!a.has(r))}function m5(e,t){const a=new Map;for(const s of e)for(const i of s.cells){const l=s.labelOf(i);a.has(l)||a.set(l,i)}const r=[];for(const s of t){const i=a.get(s);i!==void 0&&r.push(i)}return r}function Eo(e,t,a){return typeof e=="string"&&e?e:t.replace(/\{\{(\w+)\}\}/g,(r,s)=>String(a[s]))}function h5(e,t){const a=Number.isFinite(e)?Math.round(e):0;if(!a||a<=0)return"-";const r=Math.floor(a/60),s=a%60;return t?t(r,s):r>0&&s>0?Eo(At.t("customers.duration.minSec",{m:r,s,defaultValue:"{{m}}\uBD84 {{s}}\uCD08"}),"{{m}}\uBD84 {{s}}\uCD08",{m:r,s}):r>0?Eo(At.t("customers.duration.min",{m:r,defaultValue:"{{m}}\uBD84"}),"{{m}}\uBD84",{m:r}):Eo(At.t("customers.duration.sec",{s,defaultValue:"{{s}}\uCD08"}),"{{s}}\uCD08",{s})}function f5(e,t){const a=[],r=new Set;for(const s of e){const i=t(s);r.has(i)||(r.add(i),a.push({key:i,value:s,pinned:!1}))}return a}function C5(e,t){return e.map(a=>a.key===t?{...a,pinned:!a.pinned}:a)}function g5(e,t){return e.filter(a=>a.key!==t)}function b5(e,t,a){const r=e.filter(u=>u.pinned),s=new Set(r.map(u=>u.key)),i=e.length-r.length,l=[],c=new Set(s);for(const u of t){if(l.length>=i)break;const p=a(u);c.has(p)||(c.add(p),l.push({key:p,value:u,pinned:!1}))}const d=[...l];return e.map(u=>u.pinned?u:d.shift()).filter(u=>u!==void 0)}function y5(e){return e.map(t=>t.value)}function v5(e){const{category:t={},isSelected:a=!1,onClick:r}=e||{},s=t?.key?` icon-grid-menu__button--${t.key}`:"",i=o.useId();return n.jsxs("div",{className:`icon-grid-menu__button-wrapper${s}`,children:[n.jsx("button",{className:`icon-grid-menu__button${a?" icon-grid-menu__button--selected":""}`,"data-key":t?.key,type:"button",onClick:a?void 0:r,"aria-pressed":a,"aria-labelledby":i,children:n.jsx(Ue,{icon:t.icon,label:t.label,className:"icon-grid-menu__button-icon",imgClassName:"icon-grid-menu__button-icon-image",maskClassName:"icon-grid-menu__button-icon-mask",svgClassName:"icon-grid-menu__button-icon-svg"})}),n.jsx("span",{id:i,className:"icon-grid-menu__button-label button-1",children:t.label})]})}function x5(e){const{categories:t=[],selected:a,onSelect:r,size:s="medium"}=e||{},i=a!==void 0,[l,c]=o.useState(()=>i?null:(t&&t[0]?.key)??null),d=i?a:l,u=o.useRef(r);o.useEffect(()=>{u.current=r});const p=o.useRef(!1),m=(t&&t[0]?.key)??null;o.useEffect(()=>{if(i||p.current||!m)return;p.current=!0;const g=l??m;l==null&&c(g),u.current?.(g)},[i,m]);const h=o.useCallback(g=>{const y=d===g?null:g;p.current=!0,i||c(y),r?.(y)},[d,i,r]);return n.jsx("div",{className:`icon-grid-menu icon-grid-menu--${s}`,children:(t||[]).map(g=>n.jsx(v5,{category:g,isSelected:d===g.key,onClick:()=>h(g.key)},g.key))})}function _5({subs:e=[],selected:t,onSelect:a,size:r="medium"}){const s=r==="small"?32:40;return n.jsx("div",{className:`choice-chips choice-chips--${r}`,children:n.jsx("div",{className:"choice-chips__list",children:e.map(i=>n.jsx(pe,{htmlType:"button",size:s,type:"bar",label:i.label,selected:t===i.key,className:"choice-chips__button",onClick:()=>a?.(i.key)},i.key))})})}function w5({onTermsClick:e,onPrivacyClick:t,contact:a}={}){const r=a?.email??"support@ihab.co.kr",s=a?.tel??"031-380-3724",{t:i}=be.useTranslation();return n.jsx("footer",{className:"site-footer",children:n.jsxs("div",{className:"safearea",children:[n.jsxs("div",{className:"site-footer__top",children:[n.jsx("div",{className:"site-footer__brand",children:n.jsx("div",{className:"site-footer__lead h3",children:i("footer.lead",`\uC544\uC774\uD574\uBE0C\uB294 \uC18C\uB9AC\uB97C \uD1B5\uD574
|
|
1006
|
+
</html>`}const Yy=1e3;function Bo({getElements:e,paperW:t,paperH:a,fileName:r="",onPopupBlocked:s,header:i=""}){const{t:l}=be.useTranslation(),c=o.useCallback(()=>{Ky(e(),t,a,r,i)},[e,t,a,r,i]),d=o.useCallback(()=>{const p=e();if(p.length===0)return;const m=window.open("","_blank");if(!m){s?.();return}m.document.write(Ao(p,t,a,!1,r,i)),m.document.close()},[e,t,a,r,s,i]),u=o.useCallback(()=>{const p=e();if(p.length===0)return;const m=Ao(p,t,a,!1,r,i),f=new Blob([m],{type:"text/html;charset=utf-8"}),g=URL.createObjectURL(f),y=(r?ko(r):"")||l("wordTable.printFileNameSingle","\uB2E8\uC5B4\uD45C"),h=Object.assign(document.createElement("a"),{href:g,download:`${y}.html`});document.body.appendChild(h),h.click(),document.body.removeChild(h),setTimeout(()=>URL.revokeObjectURL(g),Yy)},[e,t,a,r,i,l]);return{print:c,openNewWindow:d,downloadHtml:u}}function $c(e){const{t}=be.useTranslation(),[a,r]=o.useState("landscape"),[s,i]=o.useState(["\uC774\uBBF8\uC9C0","\uB2E8\uC5B4","\uD45C\uC900 \uBC1C\uC74C"]),[l,c]=o.useState("\uD45C\uC2DC"),[d,u]=o.useState(!0),[p,m]=o.useState(!0),[f,g]=o.useState(8),[y,h]=o.useState("right"),w=e.length,C=e.some(H=>(H.words??[]).length>1),b=e.some(H=>(H.words??[]).some(S=>!!S.colloquialLabel)),x=Math.min(f,Math.max(w,1)),v=o.useMemo(()=>pc(e,x),[e,x]),A=v.length>1,k=x,[N,_]=o.useState(!1);o.useEffect(()=>{let H=!1;if(!Gn()){_(!1);return}return Promise.all(e.flatMap(S=>(S.words??[]).map(V=>Xs(V.label,V.homonum)))).then(S=>{H||_(S.some(Boolean))},()=>{}),()=>{H=!0}},[e]);const B=o.useMemo(()=>[_c(t,{hasImage:N,hasColloquial:b}),wc(t),...w>0?[Nc(t,{hasPairs:C,itemCount:w})]:[],...A?[Dc(t)]:[],kc(t),...k>1?[Ac(t)]:[],...C?[Bc(t)]:[]],[t,N,b,w,C,A,k]),E={...Tc(t,{contentTypes:s,orientation:a,showOutline:d,cutLine:l,showDivLine:p}),...w>0?{[t(C?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord")]:`${x}\uAC1C`}:{},...A?{[t("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")]:Sc[y]}:{}},P=o.useCallback((H,S)=>{Mc(t,H,S,{setContentTypes:i,setOrientation:r,setShowOutline:u,setCutLine:c,setShowDivLine:m})||(S===t("wordTable.filter.itemsPerPagePair","\uD398\uC774\uC9C0\uB2F9 \uB300\uB9BD\uC30D \uC218")||S===t("wordTable.filter.itemsPerPageWord","\uD398\uC774\uC9C0\uB2F9 \uB2E8\uC5B4 \uC218")?g(Ec(parseInt(H),w)):S===t("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")&&h(jc(H)))},[t,w]);return{settings:{orientation:a,contentTypes:s,cutLine:l,showOutline:d,showDivLine:p,count:k},filterSections:B,filterSelected:E,handleSelect:P,pages:v,isPaginated:A,pageNumberPosition:y}}function Zy({items:e,words:t,title:a,subtitle:r,emptyText:s,buttons:i,renderButtons:l,renderFooter:c,footerClassName:d,footerLayout:u,printFileName:p,showSettings:m,autoPrint:f,className:g,onClose:y,scoring:h=!1,onScoreChange:w,printHeader:C,beforeClose:b}){const{t:x}=be.useTranslation(),v=o.useMemo(()=>Array.isArray(e)?e:(Array.isArray(t)?t:[]).filter(ae=>typeof ae=="string"&&ae.length>0).map((ae,_e)=>({id:`${ae}-${_e}`,words:[{label:ae}]})),[e,t]),{settings:A,filterSections:k,filterSelected:N,handleSelect:_,pages:B,isPaginated:E,pageNumberPosition:P}=$c(v),H=o.useMemo(()=>dc(B.map(ae=>ae.length)),[B]),[S,V]=o.useState({}),j=o.useCallback((ae,_e)=>{V(re=>({...re,[er(ae)]:lc(re[er(ae)]??null,_e)}))},[]),M=o.useRef(w);o.useEffect(()=>{M.current=w});const I=o.useRef(S);o.useEffect(()=>{I.current!==S&&(I.current=S,M.current?.(xo(S)))},[S]);const G=o.useMemo(()=>xo(S),[S]),Q=o.useRef(null),{toastMessage:z,toastKey:q,showWarning:W,clearToast:L}=il("warning"),D=o.useRef([]),F=o.useCallback(()=>E?D.current.filter(ae=>ae!==null):Q.current?[Q.current]:[],[E]),{print:R,openNewWindow:O}=Bo({getElements:F,paperW:aa[A.orientation].width,paperH:aa[A.orientation].height,fileName:p??"",header:C??"",onPopupBlocked:()=>W(x("wordTable.popupBlocked","\uD31D\uC5C5\uC774 \uCC28\uB2E8\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uBE0C\uB77C\uC6B0\uC800 \uC124\uC815\uC5D0\uC11C \uD31D\uC5C5\uC744 \uD5C8\uC6A9\uD574 \uC8FC\uC138\uC694."))}),$=o.useMemo(()=>c?void 0:l?l({print:R,openNewWindow:O}):p?[{label:x("wordTable.openNewWindow","\uC0C8 \uCC3D\uC73C\uB85C \uBCF4\uAE30"),variant:"default",onClick:()=>O()},{label:x("wordTable.print","\uC778\uC1C4\uD558\uAE30"),variant:"default",onClick:()=>R()},...i??[]]:i,[c,l,p,i,x,R,O]),Y=o.useMemo(()=>c?c({print:R,openNewWindow:O}):void 0,[c,R,O]),ee=o.useRef(!1),Z=o.useRef(R);return o.useEffect(()=>{Z.current=R},[R]),o.useEffect(()=>{if(!f||ee.current)return;const ae=window.setTimeout(()=>{ee.current=!0,Z.current()},100);return()=>window.clearTimeout(ae)},[f]),n.jsxs(Dn,{title:a??x("keyWords.title","\uC8FC\uC694 \uB2E8\uC5B4"),subtitle:r,size:"large",className:De("word-table-popup",g),buttons:$,footer:Y,footerClassName:d,footerLayout:u,beforeClose:b,onClose:y,children:[v.length>0?n.jsxs("div",{className:"word-table-popup__body",children:[m&&n.jsx(wo,{sections:k,selected:N,onSelect:_}),E?n.jsx("div",{className:"word-table-popup__pages",children:B.map((ae,_e)=>n.jsx(ra,{items:ae,orientation:A.orientation,contentTypes:A.contentTypes,cutLine:A.cutLine,showOutline:A.showOutline,showDivLine:A.showDivLine,count:A.count,contentRef:re=>{D.current[_e]=re},pageNumber:{current:_e+1,total:B.length},pageNumberPosition:P,scoring:h,scoreIndexOffset:H[_e],marks:G,onMarkClick:j},_e))}):n.jsx("div",{className:"word-table-popup__table",children:n.jsx(ra,{items:v,orientation:A.orientation,contentTypes:A.contentTypes,cutLine:A.cutLine,showOutline:A.showOutline,showDivLine:A.showDivLine,count:A.count,contentRef:Q,fitHeight:!0,scoring:h,marks:G,onMarkClick:j})})]}):n.jsx("p",{className:"word-table-popup__empty body-3",children:s??x("keyWords.empty","\uCD94\uCD9C\uB41C \uC8FC\uC694 \uB2E8\uC5B4\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")}),n.jsx(ea,{message:z,position:"top",onClose:L},q)]})}const Xy=new Set(["x","triangle"]);function Jy(e,t){const a=[];for(let r=0;r<e.length;r++){const s=t[String(r)];s&&Xy.has(s)&&a.push(e[r])}return a}const Qy=/\s*(?:(\d+)차\s*)?복습\s*\d{2}\.\d{2}$/;function Rc(e){const t=e.name.trim(),a=e.reviewRound;if(typeof a=="number"&&Number.isFinite(a)&&a>=0){const i=Math.floor(a);if(i===0)return{\uBC14\uD0D5:t,\uD68C\uCC28:1};const l=(i===1?/\s*복습\s*\d{2}\.\d{2}$/:new RegExp(`(?:^|\\s)${i}\uCC28\\s*\uBCF5\uC2B5\\s*\\d{2}\\.\\d{2}$`)).exec(t);return{\uBC14\uD0D5:l?t.slice(0,l.index).trim():t,\uD68C\uCC28:i+1}}let r=t,s=1;for(;;){const i=Qy.exec(r);if(!i)break;s=Math.max(s,(i[1]?Number(i[1]):1)+1),r=r.slice(0,i.index).trim()}return{\uBC14\uD0D5:r,\uD68C\uCC28:s}}function e5(e,t){const[,a,r]=$r(t).split("-"),s=`${a}.${r}`,{\uBC14\uD0D5:i,\uD68C\uCC28:l}=Rc(typeof e=="string"?{name:e}:e),c=l>=2?`${l}\uCC28 `:"";return`${i||"\uB2E8\uC5B4\uD45C"} ${c}\uBCF5\uC2B5 ${s}`}function t5(e){return{reviewOf:e.reviewOf??e.id??void 0,reviewRound:Rc(e).\uD68C\uCC28}}function n5(e,t){const a={};for(const[r,s]of Object.entries(t)){if(s!=="o"&&s!=="triangle"&&s!=="x")continue;const i=Number(r),l=e[i];l&&(a[r]=l)}return a}function a5(e){return e.map(t=>t.label).join(" / ")}function r5(e){return e.map(t=>t.homonum!=null?`${t.label}#${t.homonum}`:t.label).join(" / ")}function Pc(e){return e.split(" / ").map(t=>t.replace(/#\d+$/,"")).join(" / ")}function o5(e,t,a){const r=ci(a);return[e.trim(),r,t.trim()].filter(Boolean).join(" \xB7 ")}function Ic(e,t,a){return a===0?0:(e+t*.5)/a}function s5(e){const t=new Map,a=[...e].sort((s,i)=>s.scoredAt.localeCompare(i.scoredAt));for(const s of a)for(const[i,l]of Object.entries(s.marks)){const c=s.labels?.[i];if(!c)continue;const d=t.get(c)??{o:0,triangle:0,x:0,latest:l,latestAt:s.scoredAt};if(l==="o")d.o++;else if(l==="triangle")d.triangle++;else if(l==="x")d.x++;else continue;d.latest=l,d.latestAt=s.scoredAt,t.set(c,d)}const r=[];for(const[s,i]of t){const l=i.o+i.triangle+i.x;r.push({label:Pc(s),key:s,tried:l,o:i.o,triangle:i.triangle,x:i.x,rate:Ic(i.o,i.triangle,l),latest:i.latest,latestAt:i.latestAt})}return r.sort((s,i)=>s.rate-i.rate||i.tried-s.tried||Qn(s.label,i.label)||Qn(s.key??s.label,i.key??i.label)),r}function i5(e){const t=new Map;for(const r of e){const s=r.tableId??`name:${r.tableName}`,i=t.get(s)??{tableName:r.tableName,tableId:r.tableId,rows:[]};i.rows.push(r),t.set(s,i)}const a=[];for(const r of t.values()){const s=c=>Object.values(c.marks).filter(d=>d==="o"||d==="triangle"||d==="x").length,i=r.rows.filter(c=>s(c)>0).sort((c,d)=>c.scoredAt.localeCompare(d.scoredAt));if(i.length===0)continue;const l=i.map(c=>{const d=Object.values(c.marks),u=d.filter(m=>m==="o").length,p=d.filter(m=>m==="triangle").length;return Ic(u,p,s(c))});a.push({tableName:r.tableName,tableId:r.tableId,rates:l,times:i.map(c=>c.scoredAt),delta:l.length>=2?l[l.length-1]-l[0]:null})}return a.sort((r,s)=>(s.times[s.times.length-1]??"").localeCompare(r.times[r.times.length-1]??"")),a}function l5(e,t=8){return e.filter(a=>a.latest!=="o").slice(0,t)}function c5(e,t){if(e==null||t==null||e===""||t==="")return 0;if(typeof e=="number"&&typeof t=="number")return e-t;const a=String(e),r=String(t);return+(a>r)-+(a<r)}function u5(e){const t=new Map;let a=0,r=0;const s=e.map((l,c)=>({r:l,\uC790\uB9AC:c})).sort((l,c)=>l.r.answeredAt.localeCompare(c.r.answeredAt)||c5(l.r.id,c.r.id)||l.\uC790\uB9AC-c.\uC790\uB9AC).map(l=>l.r);for(const l of s){if(l.isCorrect==null)continue;const c=l.itemTitle?.trim();if(!c){r++;continue}a++;const d=l.itemId?.trim()||c,u=`${l.trainingType}|${d}`,p=t.get(u)??{trainingType:l.trainingType,itemId:d,title:c,tried:0,wrong:0,latestCorrect:l.isCorrect,latestAt:l.answeredAt,lastSelected:l.selected,setIds:[]};if(p.tried++,l.isCorrect||p.wrong++,p.title=c,p.latestCorrect=l.isCorrect,p.latestAt=l.answeredAt,p.lastSelected=l.selected,l.setId){const m=p.setIds.indexOf(l.setId);m>0&&p.setIds.splice(m,1),m!==0&&p.setIds.unshift(l.setId)}t.set(u,p)}const i=[...t.entries()].map(([l,c])=>({key:l,trainingType:c.trainingType,itemId:c.itemId,title:c.title,tried:c.tried,wrong:c.wrong,rate:c.tried===0?0:(c.tried-c.wrong)/c.tried,latestCorrect:c.latestCorrect,latestAt:c.latestAt,lastSelected:c.lastSelected,setIds:c.setIds}));return i.sort((l,c)=>l.rate-c.rate||c.tried-l.tried||Qn(l.title,c.title)),{items:i,counted:a,skippedNoTitle:r}}function d5(e,t=8){return e.filter(a=>!a.latestCorrect).slice(0,t)}function p5(e){const t=new Map;for(const r of e){const s=t.get(r.trainingType)??[];s.push(r),t.set(r.trainingType,s)}const a=[...t.entries()].map(([r,s])=>({trainingType:r,items:s,pending:s.filter(i=>!i.latestCorrect).length}));return a.sort((r,s)=>s.pending-r.pending||r.trainingType.localeCompare(s.trainingType)),a}const No=["LISTEN_IN_NOISE","SHORT_STORY","LONG_STORY","ORDERING_SENTENCE"];function m5(e){const t=new Map;let a=0;for(const i of e){if(i.latestCorrect)continue;const l=i.setIds[0];if(!l){a++;continue}const c=`${i.trainingType}|${l}`,d=t.get(c)??{setId:l,trainingType:i.trainingType,pending:0};d.pending++,t.set(c,d)}const r=(i,l)=>l.pending-i.pending||i.trainingType.localeCompare(l.trainingType)||i.setId.localeCompare(l.setId),s=[...t.values()];return{sentence:s.filter(i=>No.includes(i.trainingType)).sort(r),word:s.filter(i=>!No.includes(i.trainingType)).sort(r),noSet:a}}function h5(e,t,a=5){const r=new Set(t);if(r.size===0)return[];const s=[];for(const i of e){const l=new Set,c=[];for(const d of i.cellLabels)r.has(d)&&!l.has(d)&&(l.add(d),c.push(d));c.length!==0&&s.push({id:i.id,name:i.name,kind:i.kind,covered:c,totalCells:i.cellLabels.length})}return s.sort((i,l)=>l.covered.length-i.covered.length||i.totalCells-l.totalCells||Qn(i.name,l.name)),s.slice(0,Math.max(0,a))}function f5(e,t){const a=new Set(e.flatMap(r=>r.covered));return t.filter(r=>!a.has(r))}function C5(e,t){const a=new Map;for(const s of e)for(const i of s.cells){const l=s.labelOf(i);a.has(l)||a.set(l,i)}const r=[];for(const s of t){const i=a.get(s);i!==void 0&&r.push(i)}return r}function Eo(e,t,a){return typeof e=="string"&&e?e:t.replace(/\{\{(\w+)\}\}/g,(r,s)=>String(a[s]))}function g5(e,t){const a=Number.isFinite(e)?Math.round(e):0;if(!a||a<=0)return"-";const r=Math.floor(a/60),s=a%60;return t?t(r,s):r>0&&s>0?Eo(At.t("customers.duration.minSec",{m:r,s,defaultValue:"{{m}}\uBD84 {{s}}\uCD08"}),"{{m}}\uBD84 {{s}}\uCD08",{m:r,s}):r>0?Eo(At.t("customers.duration.min",{m:r,defaultValue:"{{m}}\uBD84"}),"{{m}}\uBD84",{m:r}):Eo(At.t("customers.duration.sec",{s,defaultValue:"{{s}}\uCD08"}),"{{s}}\uCD08",{s})}function b5(e,t){const a=[],r=new Set;for(const s of e){const i=t(s);r.has(i)||(r.add(i),a.push({key:i,value:s,pinned:!1}))}return a}function y5(e,t){return e.map(a=>a.key===t?{...a,pinned:!a.pinned}:a)}function v5(e,t){return e.filter(a=>a.key!==t)}function x5(e,t,a){const r=e.filter(u=>u.pinned),s=new Set(r.map(u=>u.key)),i=e.length-r.length,l=[],c=new Set(s);for(const u of t){if(l.length>=i)break;const p=a(u);c.has(p)||(c.add(p),l.push({key:p,value:u,pinned:!1}))}const d=[...l];return e.map(u=>u.pinned?u:d.shift()).filter(u=>u!==void 0)}function _5(e){return e.map(t=>t.value)}function w5(e){const{category:t={},isSelected:a=!1,onClick:r}=e||{},s=t?.key?` icon-grid-menu__button--${t.key}`:"",i=o.useId();return n.jsxs("div",{className:`icon-grid-menu__button-wrapper${s}`,children:[n.jsx("button",{className:`icon-grid-menu__button${a?" icon-grid-menu__button--selected":""}`,"data-key":t?.key,type:"button",onClick:a?void 0:r,"aria-pressed":a,"aria-labelledby":i,children:n.jsx(Ue,{icon:t.icon,label:t.label,className:"icon-grid-menu__button-icon",imgClassName:"icon-grid-menu__button-icon-image",maskClassName:"icon-grid-menu__button-icon-mask",svgClassName:"icon-grid-menu__button-icon-svg"})}),n.jsx("span",{id:i,className:"icon-grid-menu__button-label button-1",children:t.label})]})}function k5(e){const{categories:t=[],selected:a,onSelect:r,size:s="medium"}=e||{},i=a!==void 0,[l,c]=o.useState(()=>i?null:(t&&t[0]?.key)??null),d=i?a:l,u=o.useRef(r);o.useEffect(()=>{u.current=r});const p=o.useRef(!1),m=(t&&t[0]?.key)??null;o.useEffect(()=>{if(i||p.current||!m)return;p.current=!0;const g=l??m;l==null&&c(g),u.current?.(g)},[i,m]);const f=o.useCallback(g=>{const y=d===g?null:g;p.current=!0,i||c(y),r?.(y)},[d,i,r]);return n.jsx("div",{className:`icon-grid-menu icon-grid-menu--${s}`,children:(t||[]).map(g=>n.jsx(w5,{category:g,isSelected:d===g.key,onClick:()=>f(g.key)},g.key))})}function A5({subs:e=[],selected:t,onSelect:a,size:r="medium"}){const s=r==="small"?32:40;return n.jsx("div",{className:`choice-chips choice-chips--${r}`,children:n.jsx("div",{className:"choice-chips__list",children:e.map(i=>n.jsx(pe,{htmlType:"button",size:s,type:"bar",label:i.label,selected:t===i.key,className:"choice-chips__button",onClick:()=>a?.(i.key)},i.key))})})}function B5({onTermsClick:e,onPrivacyClick:t,contact:a}={}){const r=a?.email??"support@ihab.co.kr",s=a?.tel??"031-380-3724",{t:i}=be.useTranslation();return n.jsx("footer",{className:"site-footer",children:n.jsxs("div",{className:"safearea",children:[n.jsxs("div",{className:"site-footer__top",children:[n.jsx("div",{className:"site-footer__brand",children:n.jsx("div",{className:"site-footer__lead h3",children:i("footer.lead",`\uC544\uC774\uD574\uBE0C\uB294 \uC18C\uB9AC\uB97C \uD1B5\uD574
|
|
1007
1007
|
\uC2E0\uB8B0\uB97C \uC313\uACE0
|
|
1008
1008
|
\uD68C\uBCF5\uC744 \uB3D5\uC2B5\uB2C8\uB2E4.`).split(`
|
|
1009
|
-
`).map((l,c,d)=>n.jsxs(o.Fragment,{children:[l,c<d.length-1&&n.jsx("br",{})]},c))})}),n.jsxs("div",{className:"site-footer__links",children:[n.jsxs("div",{className:"site-footer__column",children:[n.jsx("div",{className:"site-footer__column-title footer-title",children:i("footer.site.title","\uC0AC\uC774\uD2B8")}),n.jsxs("ul",{children:[n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://www.ihab.co.kr/",target:"_blank",rel:"noopener noreferrer",children:"IHAB"})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://speechear.ihab.co.kr/",target:"_blank",rel:"noopener noreferrer",children:i("footer.site.malgwi","\uB9D0\uADC0")})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://ihab-offcial-web.vercel.app/product/sound-localization",target:"_blank",rel:"noopener noreferrer",children:i("footer.site.soundDirection","\uC18C\uB9AC\uBC29\uD5A5\uC131\uC2DC\uC2A4\uD15C")})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://ihab-offcial-web.vercel.app/product/vr-sound-localization",target:"_blank",rel:"noopener noreferrer",children:i("footer.site.vrSoundDirection","VR\uC18C\uB9AC\uBC29\uD5A5\uC131\uC2DC\uC2A4\uD15C")})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://ihab-offcial-web.vercel.app/product/hearing-test-pro",target:"_blank",rel:"noopener noreferrer",children:i("footer.site.hearingTest","\uCCAD\uB825\uD14C\uC2A4\uD2B8 \uD504\uB85C")})})]})]}),n.jsxs("div",{className:"site-footer__column",children:[n.jsx("div",{className:"site-footer__column-title footer-title",children:i("footer.sns.title","SNS")}),n.jsxs("ul",{children:[n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://blog.naver.com/ihab_official",target:"_blank",rel:"noopener noreferrer",children:i("footer.sns.naverBlog","\uB124\uC774\uBC84 \uBE14\uB85C\uADF8")})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://www.instagram.com/ihab.official.yt/",target:"_blank",rel:"noopener noreferrer",children:"Instagram"})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://www.youtube.com/@%EC%95%84%EC%9D%B4%ED%95%B4%EB%B8%8C-%EA%B3%B5%EC%8B%9D%EC%B1%84%EB%84%90",target:"_blank",rel:"noopener noreferrer",children:"Youtube"})})]})]}),n.jsxs("div",{className:"site-footer__column",children:[n.jsx("div",{className:"site-footer__column-title footer-title",children:i("footer.policy.title","\uC815\uCC45")}),n.jsxs("ul",{children:[n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"#",onClick:l=>{e&&(l.preventDefault(),e())},children:i("footer.policy.terms","\uC774\uC6A9\uC57D\uAD00")})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"#",onClick:l=>{t&&(l.preventDefault(),t())},children:i("footer.policy.privacy","\uAC1C\uC778\uC815\uBCF4 \uCC98\uB9AC\uBC29\uCE68")})})]})]})]})]}),n.jsx("hr",{className:"site-footer__rule"}),n.jsxs("div",{className:"site-footer__bottom",children:[n.jsx("div",{className:"site-footer__brand",children:n.jsx("img",{src:no,alt:"IHAB",className:"site-footer__logo"})}),n.jsxs("div",{className:"site-footer__meta",children:[n.jsxs("div",{children:[n.jsx("span",{className:"footer-title",children:i("footer.ceo","\uB300\uD45C")}),n.jsx("span",{className:"footer-meta caption-1",children:i("footer.ceoName","\uD55C\uC9C0\uD61C")})]}),n.jsxs("div",{children:[n.jsx("span",{className:"footer-title",children:i("footer.address","\uC8FC\uC18C")}),n.jsx("span",{className:"footer-meta caption-1",children:i("footer.addressValue","\uAC15\uC6D0\uB3C4 \uCD98\uCC9C\uC2DC \uC2DC\uCCAD\uAE38 32 \uD574\uCC2C\uBE4C\uB529 3\uCE35 302\uD638")})]}),n.jsxs("div",{children:[n.jsx("span",{className:"footer-title",children:i("footer.support","\uACE0\uAC1D\uC13C\uD130")}),n.jsxs("span",{className:"footer-meta caption-1",children:[r," \xA0 ",s]})]})]})]}),n.jsx("div",{className:"site-footer__copyright footer-copyright caption-1",children:"\xA9 IHAB, Inc. All rights reserved."})]})})}function k5({logo:e,logoAlt:t="",logoHref:a,links:r=[],actions:s,className:i,containerClassName:l,renderLink:c,menuLabel:d}){const{t:u}=be.useTranslation(),p=d??{open:u("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),close:u("header.menuClose","\uBA54\uB274 \uB2EB\uAE30")},[m,h]=o.useState(!1),g=o.useId(),y=o.useRef(null);o.useEffect(()=>{if(!m)return;const C=In(()=>{const x=document.getElementById(g);x&&x.contains(document.activeElement)&&y.current?.focus(),h(!1)}),b=typeof window<"u"&&window.matchMedia?window.matchMedia("(min-width: 961px)"):null,_=x=>{x.matches&&h(!1)};return b&&(b.matches&&h(!1),b.addEventListener?.("change",_)),()=>{C(),b?.removeEventListener?.("change",_)}},[m,g]);const f=l?`${l} landing-header__inner`:"landing-header__inner",w=(C,b)=>c?c(C,{onClick:b}):n.jsx("a",{href:C.href,onClick:b,"aria-current":C.current?"page":void 0,children:C.label});return n.jsxs("header",{className:i?`landing-header ${i}`:"landing-header",children:[n.jsxs("div",{className:f,children:[e!=null&&(()=>{const C=typeof e=="string"?n.jsx("img",{src:e,alt:t,className:"landing-header__logo"}):e;return a?n.jsx("a",{href:a,className:"landing-header__brand",children:C}):n.jsx("div",{className:"landing-header__brand",children:C})})(),r.length>0&&n.jsx("nav",{className:"landing-header__links",children:r.map((C,b)=>n.jsx("span",{children:w(C)},`${b}:${C.href}`))}),n.jsxs("div",{className:"landing-header__actions",children:[s,r.length>0&&n.jsx("button",{ref:y,type:"button",onClick:()=>h(C=>!C),"aria-expanded":m,"aria-controls":g,"aria-label":m?p.close:p.open,className:m?"landing-header__toggle landing-header__toggle--open":"landing-header__toggle",children:n.jsxs("span",{className:"landing-header__burger",children:[n.jsx("span",{}),n.jsx("span",{}),n.jsx("span",{})]})})]})]}),r.length>0&&n.jsx("nav",{id:g,hidden:!m,className:"landing-header__drawer",children:n.jsx("div",{className:l??void 0,children:r.map((C,b)=>n.jsx("span",{className:"landing-header__drawer-item",children:w(C,()=>h(!1))},`${b}:${C.href}`))})})]})}function A5({children:e,action:t,onClick:a,className:r}){const s=a?"bottom-sticky__inner bottom-sticky__inner--clickable":"bottom-sticky__inner";return n.jsx("div",{className:r?`bottom-sticky ${r}`:"bottom-sticky",children:n.jsxs("div",{className:s,onClick:a,...oc(a),children:[n.jsx("div",{className:"bottom-sticky__content",children:e}),t]})})}const sa=9,B5=e=>Math.round(Math.min(sa,Math.max(0,e))/sa*100),N5=e=>e/100*sa,Sa=2,Fc=.1,E5=e=>Math.min(Sa,Math.max(0,e)),D5=.1,S5=e=>Math.round(e*1e6)/1e6;function ja(e){const{noiseRatio:t}=e;if(typeof t=="number"&&Number.isFinite(t))return E5(t);const a=Math.min(sa,Math.max(0,Number(e.level)||0))/sa,r=Number(e.mainVolume);return r>0?a>0?S5(Math.min(Sa,Math.max(D5,a/r))):0:1}const Oc=e=>Math.min(1,Math.max(0,Number(e.mainVolume)||0));function Hc(e){return Oc(e)}function Do(e){return Oc(e)*ja(e)}function So(e,t=qs()){const a=Number.isFinite(t)&&t>0?t:1;return Math.min(1,Do(e)/a)}function Ta(e,t){const a={...e,...t??{}};return t&&"level"in t&&typeof t.noiseRatio!="number"&&(a.noiseRatio=ja({level:a.level,mainVolume:a.mainVolume})),a}const Ma={enabled:!0,type:"defaultNoise",level:4.5,noiseRatio:1,speed:1,mainVolume:1,mainSpeed:1},jo=o.createContext(null);function ar(){return o.useContext(jo)}const To=e=>`${X0()}/${e}`,zc=e=>Array.from({length:10},(t,a)=>To(`${e}-${String(a+1).padStart(2,"0")}.mp3`)),rr={get defaultNoise(){return To("noise1.mp3")},get street(){return zc("noise2")},get restaurant(){return zc("noise3")},get buzz(){return To("noise4.mp3")}};function j5(e){const t=Math.floor(Math.random()*10);switch(e){case"defaultNoise":return rr.defaultNoise;case"street":return rr.street[t];case"restaurant":return rr.restaurant[t];case"buzz":return rr.buzz;default:return null}}function T5({noisePlayer:e,audioRef:t,playbackStateRef:a}){const r=o.useRef(e?.registerAnalyser);r.current=e?.registerAnalyser;const s=o.useRef(null),[i,l]=o.useState(null),c=o.useRef(null),d=o.useRef(null),u=o.useRef(null),p=o.useRef(null),m=o.useRef(0),h=o.useRef(null),g=o.useCallback(()=>{p.current!==null&&(cancelAnimationFrame(p.current),p.current=null),h.current!==null&&(clearTimeout(h.current),h.current=null)},[]),y=o.useCallback((_,x=250)=>{const k=s.current;if(!k)return;const v=d.current;if(v){d.current=null;try{k.pause()}catch{}k.src=v,k.load()}if(!k.src)return;m.current+=1,g();try{Dr(),Pa(k).then(E=>{if(s.current===k)try{r.current?.("noise",E)}catch{}})}catch{}const B=k.paused?0:Ia(k);k.paused&&Nn(k,0),k.play().catch(()=>{});const A=performance.now(),N=()=>{const E=Math.min(1,(performance.now()-A)/x);try{Nn(k,B+(_-B)*E)}catch{}E<1?p.current=requestAnimationFrame(N):p.current=null};p.current=requestAnimationFrame(N)},[g]),f=o.useCallback((_=250,x)=>{const k=s.current;if(!k||k.paused){x?.();return}const v=++m.current;g();const B=performance.now(),A=Ia(k),N=()=>{const E=Math.min(1,(performance.now()-B)/_);try{Nn(k,A*(1-E))}catch{}if(E<1)p.current=requestAnimationFrame(N);else{p.current=null,h.current!==null&&(clearTimeout(h.current),h.current=null);try{k.pause()}catch{}x?.()}};p.current=requestAnimationFrame(N),h.current=setTimeout(()=>{if(h.current=null,m.current===v){p.current!==null&&(cancelAnimationFrame(p.current),p.current=null);try{k.paused||(Nn(k,0),k.pause(),x?.())}catch{}}},_+150)},[g]);o.useEffect(()=>{const _=document.createElement("audio");return _.loop=!0,_.crossOrigin="anonymous",s.current=_,()=>{g();try{_.pause(),_.src=""}catch{}s.current=null,c.current=null,d.current=null}},[g]);const w=e?So(e.settings):0,C=!!e?.settings.enabled&&w>0;o.useEffect(()=>{if(!C)return;let _=0;const x=setInterval(()=>{const k=s.current;if(!k||k.paused){_=0;return}const v=t.current;if(v&&!v.paused&&!v.ended||a.current==="playing"){_=0;return}_+=1,_>=2&&(_=0,f())},400);return()=>clearInterval(x)},[f,C,t,a]),o.useEffect(()=>{const _=()=>{const x=s.current;if(document.hidden){if(x&&!x.paused){g();try{x.pause()}catch{}}return}if(!x||!x.paused)return;const k=t.current,v=!!k&&!k.paused&&!k.ended||a.current==="playing",B=u.current;v&&B?.enabled&&B.volume>0&&y(B.volume)};return document.addEventListener("visibilitychange",_),()=>document.removeEventListener("visibilitychange",_)},[g,y,t,a]),o.useEffect(()=>{u.current=e?{enabled:e.settings.enabled,volume:w,type:e.settings.type}:null},[e,e?.settings.enabled,w,e?.settings.type]);const b=o.useRef(null);return o.useEffect(()=>()=>{b.current?.(),b.current=null},[]),o.useEffect(()=>{const _=e?.settings,x=s.current;if(!x)return;const k=_?So(_):0;if(!_||!_.enabled||k===0){f();return}if(c.current!==_.type){const v=j5(_.type);v&&(c.current=_.type,l(v),d.current=v,f(150,()=>{if(d.current!==v)return;d.current=null,x.src=v,x.load();const B=t.current;if(B&&!B.paused){b.current?.();const A=()=>{x.removeEventListener("canplay",A),b.current===N&&(b.current=null);const E=t.current,T=u.current;E&&!E.paused&&!E.ended&&T?.enabled&&T.volume>0&&y(T.volume)},N=()=>x.removeEventListener("canplay",A);b.current=N,x.addEventListener("canplay",A)}}))}else{const v=t.current,B=!!v&&!v.paused&&!v.ended||a.current==="playing";if(B&&d.current)y(k);else if(B&&x.paused&&x.src)y(k);else if(!x.paused)if(!B)f();else{g();const A=Ia(x),N=performance.now(),E=()=>{const T=Math.min(1,(performance.now()-N)/150);try{Nn(x,A+(k-A)*T)}catch{}T<1?p.current=requestAnimationFrame(E):p.current=null};p.current=requestAnimationFrame(E)}}},[e?.settings,e?.settings.enabled,w,e?.settings.type,g,y,f,t,a,u]),o.useEffect(()=>{const _=s.current;if(_)try{_.playbackRate=Math.min(1.25,Math.max(.75,e?.settings.speed??1))}catch{}},[e?.settings.speed]),{noiseAudioRef:s,activeNoiseUrl:i,noiseSettingsRef:u,cancelNoiseFade:g,fadeInNoise:y,fadeOutNoise:f}}function M5({ttsText:e,playbackRate:t,mainVolume:a,fillRef:r,waveProgressRef:s,setProgress:i,setPlaybackState:l,setStateLocal:c,fadeInNoise:d,fadeOutNoise:u,noiseSettingsRef:p,onDoneRef:m,handleEndRef:h}){const g=o.useRef(null),y=o.useRef(0),f=o.useRef(null),w=o.useRef(0),C=o.useRef(!1);o.useEffect(()=>()=>{w.current++;try{if(f.current&&(cancelAnimationFrame(f.current),f.current=null),C.current&&window.speechSynthesis){try{window.speechSynthesis.cancel()}catch{}C.current=!1}}catch{}},[]);const b=(k,v=1)=>{try{const B=(k||"").trim().split(/\s+/).filter(Boolean).length||Math.max(1,(k||"").length);return Math.max(700,Math.round(B*300/Math.max(.25,v)))}catch{return 1200}},_=o.useCallback(k=>{if(typeof window>"u"||!window.speechSynthesis){try{typeof m.current=="function"&&m.current(!1)}catch{}return}const v=window.speechSynthesis,B=++w.current;try{try{v.cancel()}catch{}const A=k??e,N=Array.isArray(A)?A.filter(j=>!!j):[A||""];N.length===0&&N.push("");const E=Math.max(.3,Math.min(3,t));y.current=N.reduce((j,M)=>j+b(M,E||1),0),g.current=performance.now(),i(0),l("playing"),c("playMode");const T=p.current;T?.enabled&&(T?.volume??0)>0&&d(T.volume);const I=()=>{try{const j=g.current||performance.now(),M=performance.now()-j,F=y.current||1200,U=Math.min(1,M/F);try{r.current&&(r.current.style.left=`${U*100}%`),s.current&&s.current.style.setProperty("--progress",String(U))}catch{}U<1&&(f.current=requestAnimationFrame(I))}catch{}},R=()=>{if(B===w.current)try{f.current&&(cancelAnimationFrame(f.current),f.current=null),i(1),l("stopped");try{h.current?.()}catch{try{typeof m.current=="function"&&m.current(!0)}catch{}}}catch{}},V=j=>{const M=new SpeechSynthesisUtterance(N[j]);try{M.rate=E}catch{}try{M.volume=Math.max(0,Math.min(1,a))}catch{}M.onend=()=>{if(B===w.current){if(j<N.length-1){try{V(j+1)}catch{R()}return}R()}},M.onerror=()=>{R()},M.onstart=()=>{if(!(j>0))try{f.current&&(cancelAnimationFrame(f.current),f.current=null),f.current=requestAnimationFrame(I)}catch{}},C.current=!0,v.speak(M)};try{V(0)}catch{try{typeof m.current=="function"&&m.current(!0)}catch{}}}catch{try{typeof m.current=="function"&&m.current(!0)}catch{}}},[e,t,a,d,r,s,i,l,c,p,m,h]),x=o.useCallback(()=>{w.current++;try{if(window.speechSynthesis)try{window.speechSynthesis.cancel()}catch{}f.current&&(cancelAnimationFrame(f.current),f.current=null),u(),g.current=null}catch{}l("stopped"),c("active"),i(0)},[u,l,c,i]);return{startTTS:_,stopTTS:x}}async function L5(e,t,a){let r=null;try{const s=window.AudioContext||window.webkitAudioContext;r=new s;const i=await r.decodeAudioData(e.slice(0)),l=i.numberOfChannels>0?i.getChannelData(0):null;if(!l)return null;const c=a&&a>0?Math.min(l.length,Math.floor(a*i.sampleRate)):l.length,d=Math.max(t,c),u=Math.floor(d/t)||1;return new Array(t).fill(0).map((p,m)=>{const h=m*u,g=Math.min(h+u,d);let y=0;for(let f=h;f<g;f++){const w=Math.abs(l[f]);w>y&&(y=w)}return y})}catch{return null}finally{try{r?.close?.()}catch{}}}async function Vc(e,t,a){try{const r=await fetch(e);if(r.ok===!1)return null;const s=await r.arrayBuffer();return await L5(s,t,a)}catch(r){try{const s=ti(r)}catch{}return null}}const Wc=45,$5=74,R5=2;function La(e){const t=Math.min(2,Math.max(0,Number(e)||0));return t<=1?t*45:45+(t-1)*29}function Mo(e){return La(e)/45}const qc=4;function P5(e){const{src:t,segments:a,progress:r=0,waveProgressRef:s,noiseSrc:i,noiseRatio:l=0,noiseSpeed:c=1,totalDuration:d=0,mainVolume:u=1,onReadyChange:p,showSoundWaveForm:m=!0}=e,h=o.useRef(null),g=o.useRef(null),[y,f]=o.useState(null),[w,C]=o.useState(!1),[b,_]=o.useState(null),[x,k]=o.useState(2),[v,B]=o.useState(0),[A,N]=o.useState(null),[E,T]=o.useState(!1),[I,R]=o.useState(!1),V=3,j=3,M=1,F=300,U=o.useRef(0),Q=o.useCallback(()=>{const ue=h.current,q=g&&g.current?g.current:ue?ue.closest(".audio-player__wave"):null,oe=q?q.getBoundingClientRect():ue?ue.getBoundingClientRect():null,de=oe?oe.width:0,ve=oe?Math.max(100,oe.width):320,ge=oe?oe.height:0,Se=Math.max(M,Math.min(F,Math.floor((ve+j)/(V+j)))),Ce=Se*V,Ee=Math.max(0,Se-1),Be=Math.max(0,Ee>0?(ve-Ce)/Ee:j);return{bars:Se,gap:Be,height:ge,width:de}},[]),z=o.useRef(void 0),G=o.useRef(null),W=o.useCallback(async(ue,q,{quiet:oe=!1}={})=>{const de=++U.current,ve=()=>U.current===de;try{if(oe||C(!1),z.current=ue,!ue){ve()&&f(null);return}let ge=q;if(!ge)try{for(let Ee=0;Ee<4&&!(h.current||g.current);Ee++)await new Promise(Be=>requestAnimationFrame(Be));await new Promise(Ee=>requestAnimationFrame(Ee));const Ce=Q();Ce.height>0&&B(Ce.height),ge=Ce.bars,k(Ce.gap)}catch{ge=120}G.current=ge;const Se=await Vc(ue,ge);if(!ve())return;if(!Se){f(null),C(!1);return}f(Se),_(ge),C(!0)}catch{if(!ve())return;f(null),C(!1)}},[C,f,B,k,_,Q]);o.useEffect(()=>{const ue=g.current;if(!ue||typeof ResizeObserver>"u")return;let q=null;const oe=new ResizeObserver(()=>{q!==null&&cancelAnimationFrame(q),q=requestAnimationFrame(()=>{q=null;try{const de=Q();if(de.width<=0||(de.height>0&&B(de.height),G.current===null||de.bars===G.current))return;const ve=z.current;k(de.gap),ve?W(ve,de.bars,{quiet:!0}).catch(()=>{}):G.current=de.bars}catch{}})});return oe.observe(ue),()=>{oe.disconnect(),q!==null&&cancelAnimationFrame(q)}},[Q,W]),o.useEffect(()=>{const ue=a&&a[0]&&a[0].src||t||a&&a.length===1&&a[0]&&a[0].src;W(typeof ue=="string"?ue:void 0).catch(()=>{}),R(!1)},[t,a,W]),o.useEffect(()=>{let ue=!1;if(T(!1),!i||!b){N(null);return}const q=d>0?d*(c||1):void 0;return Vc(i,b,q).then(oe=>{ue||(N(oe),oe||T(!0))}).catch(()=>{ue||(N(null),T(!0))}),()=>{ue=!0}},[i,b,d,c]);const L=Math.max(0,Math.min(1,u)),D=o.useMemo(()=>y&&y.length&&Math.max(...y)||1,[y]),O=b||40,P=o.useMemo(()=>Array.from({length:O}).map((ue,q)=>{const oe=y&&y[q]!=null?y[q]:null,de=oe==null?null:Math.min(1,oe/D*L),ve=de!=null&&v>0&&La(de)<=qc,ge=de==null?.15:ve?0:Mo(de),Se=O>1?q/(O-1):0;return n.jsx("div",{className:ve?"audio-player__bar audio-player__bar--hidden":"audio-player__bar",style:{"--val":ge,"--i":q,"--mix":Se}},q)}),[O,y,D,L,v]),H={"--progress":String(Math.max(0,Math.min(1,r)))},$=i?Math.max(1,l):1,Y={"--bar-gap":`${x}px`,"--wave-h":`${La($)}px`,"--wave-h1":`${Wc}px`},ee=L*Math.max(0,l)/qs(),Z=w&&(i?!!A||E:!0);o.useEffect(()=>{Z&&R(!0)},[Z]);const ae=I?w:Z;o.useEffect(()=>{p?.(ae)},[ae,p]);const _e=b||40,re=o.useMemo(()=>Array.from({length:_e}).map((ue,q)=>{const oe=A&&A[q]!=null?A[q]:null,de=oe==null?0:oe/D*ee,ve=v>0&&La(de)<=qc,ge=ve?0:Mo(de),Se=_e>1?q/(_e-1):0;return n.jsx("div",{className:ve?"audio-player__bar audio-player__bar--hidden":"audio-player__bar",style:{"--val":ge,"--i":q,"--mix":Se}},q)}),[_e,A,D,ee,v]);return n.jsxs("div",{className:"audio-player__wave",ref:g,style:Y,children:[i&&n.jsx("div",{className:`audio-player__wave-noise ${Z?"is-ready":""}`,"aria-hidden":"true",children:re}),m&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:`audio-player__wave-inner audio-player__wave-unplayed ${ae?"is-ready":""}`,ref:h,children:P}),n.jsx("div",{className:`audio-player__wave-inner audio-player__wave-played ${ae?"is-ready":""}`,ref:s,style:H,children:P})]})]})}const I5={idle:"\uB300\uAE30",resolving:"\uB9AC\uC18C\uC2A4 \uB9E4\uD551 \uC911\u2026",checking_exists:"\uD30C\uC77C \uC874\uC7AC \uD655\uC778\u2026",getting_signed_url:"\uC11C\uBA85 URL \uC870\uD68C\u2026",downloading:"\uB2E4\uC6B4\uB85C\uB4DC \uC911\u2026",measuring_duration:"\uC624\uB514\uC624 \uAE38\uC774 \uCE21\uC815\u2026",ready:"\uC900\uBE44 \uC644\uB8CC",error:"\uC624\uB958 \uBC1C\uC0DD"};function Lo(e,t){return new Promise((a,r)=>{const s=document.createElement("audio");let i=!1;const l=()=>{try{s.src=""}catch{}},c=()=>{if(i)return;i=!0;const u=isFinite(s.duration)&&s.duration||0;l(),a(u)},d=u=>{i||(i=!0,l(),t.rejectOnError?r(new Error(u)):a(0))};s.addEventListener("loadedmetadata",c),s.addEventListener("error",()=>d("audio load failed")),setTimeout(()=>d("audio load timeout"),t.timeoutMs),s.src=e})}const F5=2e3;function Uc(e,t=F5){return new Promise(a=>{let r=!1;const s=()=>{r||(r=!0,a())};e.addEventListener("canplay",s,{once:!0}),e.addEventListener("error",s,{once:!0}),setTimeout(s,t)})}function O5({showSoundWaveForm:e,showNoiseWaveForm:t,timeoutMs:a=2500}){const r=o.useRef(!1),s=o.useRef([]),i=o.useCallback(d=>{if(r.current=d,!d||!s.current.length)return;const u=s.current;s.current=[];for(const p of u)p(!0)},[]),l=o.useCallback(()=>{r.current=!1},[]),c=o.useCallback(()=>!e&&!t||r.current?Promise.resolve(!0):new Promise(d=>{const u=m=>{clearTimeout(p),s.current=s.current.filter(h=>h!==u),d(m)},p=setTimeout(()=>u(!0),a);s.current.push(u)}),[e,t,a]);return o.useEffect(()=>()=>{const d=s.current;s.current=[];for(const u of d)u(!1)},[]),{onReadyChange:i,waitForReady:c,markNotReady:l}}function H5(){const e=o.useRef([]),t=o.useCallback(s=>(e.current.push(s),s),[]),a=o.useCallback(s=>{const i=new Set([...s].filter(Boolean));e.current=e.current.filter(l=>{if(i.has(l))return!0;try{URL.revokeObjectURL(l)}catch{}return!1})},[]),r=o.useCallback(()=>{a([])},[a]);return o.useEffect(()=>()=>{for(const s of e.current)try{URL.revokeObjectURL(s)}catch{}e.current=[]},[]),{track:t,keepOnly:a,revokeAll:r}}function z5({offsetY:e=8}={}){const t=o.useRef(null),[a,r]=o.useState(null),s=o.useCallback(()=>r(null),[]),i=o.useCallback(()=>{try{const l=t.current?.getBoundingClientRect();if(!l)return;r({left:l.left,right:l.right,width:l.width,height:l.height,x:l.x,top:l.top+e,bottom:l.bottom+e,y:l.y+e,toJSON:l.toJSON.bind(l)})}catch{}},[e]);return o.useEffect(()=>{if(a)return document.addEventListener("mousedown",s),()=>document.removeEventListener("mousedown",s)},[a,s]),{ref:t,rect:a,show:i,hide:s}}function V5({currentTime:e,sources:t,index:a,audioDuration:r}){const s=a||0,i=Array.isArray(t)&&t.length>0?t[s]:void 0,l=i?i.duration||r||0:r||0;if(!(l>0))return 0;const c=Number.isFinite(e)?e:0;return Math.max(0,Math.min(1,c/l))}function W5(e,t){if(!Array.isArray(e))return null;const a=t||0;return a<e.length-1?a+1:null}function q5({ended:e,completedByEnd:t}){return!!e||!!t}function U5(e){return e.map((t,a)=>({src:t.src,label:String(a+1),color:void 0,duration:t.duration||0}))}function G5(e){return e.reduce((t,a)=>t+(a.duration||0),0)}function K5(e,t,a){const r=Array.isArray(e)?e:e?[e]:[],s=[];for(const i of r)if(i){if(typeof i=="object"&&i!==null&&"src"in i&&i.src){const l=i;s.push({code:l.code??null,src:l.src});continue}if(typeof i=="string"&&(i.startsWith("http")||i.includes("/"))){s.push({code:null,src:i});continue}if(typeof i=="string"||typeof i=="number"){const l=String(i),c=a(l,t);c&&s.push({code:l,resolvedPath:c})}}return s}function Y5(e){if(!e)return 0;const t=e.duration;if(Number.isFinite(t)&&t>0)return t;if(t===0)return 0;try{const a=e.seekable;if(a&&a.length>0){const r=a.end(a.length-1);if(Number.isFinite(r)&&r>0)return r}}catch{}return null}function Z5({audioRef:e,fillRef:t,waveProgressRef:a,sourcesRef:r,currentIndexRef:s}){const i=o.useRef(null),l=o.useCallback(()=>{i.current!==null&&(cancelAnimationFrame(i.current),i.current=null)},[]),c=o.useCallback(()=>{if(i.current!==null)return;const u=()=>{try{const p=e.current,m=Array.isArray(r.current)?r.current[s.current||0]:void 0,h=m&&Number.isFinite(m.duration)&&(m.duration??0)>0?0:Y5(p),g=t.current;if(h===null)try{g&&g.style.visibility!=="hidden"&&(g.style.visibility="hidden")}catch{}else{const y=V5({currentTime:p&&typeof p.currentTime=="number"?p.currentTime:0,sources:r.current,index:s.current,audioDuration:h});try{g&&(g.style.visibility&&(g.style.visibility=""),g.style.left=`${y*100}%`)}catch{}try{a.current?.style.setProperty("--progress",String(y))}catch{}}}catch{}i.current=requestAnimationFrame(u)};i.current=requestAnimationFrame(u)},[e,t,a,r,s]),d=o.useCallback(u=>{l();try{t.current&&(t.current.style.visibility="",t.current.style.left=`${u*100}%`)}catch{}try{a.current?.style.setProperty("--progress",String(u))}catch{}},[l,t,a]);return o.useEffect(()=>l,[l]),{start:c,stop:l,settleTo:d}}function $o({btnLabel:e,soundSrc:t,bucketPath:a,onDone:r,disabled:s=!1,ttsText:i=null,className:l,showSoundWaveForm:c=!0,showNoiseWaveForm:d=!0}){const{t:u}=be.useTranslation(),p=e,m=ar(),h=o.useRef(m?.registerAnalyser);o.useEffect(()=>{h.current=m?.registerAnalyser});const g=o.useRef(null),y=o.useRef(null),f=o.useRef(null),w=H5(),C=o.useRef(null),b=o.useRef(!1),_=o.useRef(0),x=o.useRef(null),{ref:k,rect:v,show:B,hide:A}=z5();o.useEffect(()=>()=>{h.current?.("main",null),h.current?.("noise",null)},[]);const[N,E]=o.useState(!1),[T,I]=o.useState("idle"),[R,V]=o.useState("stopped"),j=o.useRef("stopped");o.useEffect(()=>{j.current=R},[R]);const[M,F]=o.useState(0),[U,Q]=o.useState("active"),z=o.useRef(!1);o.useEffect(()=>{if(U!=="playMode"||!z.current)return;z.current=!1;const K=typeof document<"u"?document.activeElement:null;if(K&&K!==document.body)return;const ce=f.current?.querySelectorAll("button")[1];try{ce?.focus()}catch{}},[U]);const[G,W]=o.useState(null),[L,D]=o.useState(null),[O,P]=o.useState(0),[H,$]=o.useState(!1),[Y,ee]=o.useState(0),Z=m?.playbackRate??1,ae=m?.mainVolume??1,_e=m?Do(m.settings):0,re=m?Hc(m.settings):ae,[ue,q]=o.useState("idle"),[oe,de]=o.useState(""),[ve]=o.useState("top"),ge=o.useRef(null),Se=o.useRef(0),Ce=o.useRef(null),{start:Ee,stop:Be,settleTo:Re}=Z5({audioRef:g,fillRef:y,waveProgressRef:Ce,sourcesRef:ge,currentIndexRef:Se}),{onReadyChange:Le,waitForReady:me,markNotReady:ke}=O5({showSoundWaveForm:c,showNoiseWaveForm:d}),Me=o.useRef(null),Te=o.useRef(s),Ae=o.useRef(r),ie=o.useRef(null),ye=o.useRef(!1),[se,Ie]=o.useState(!1),ze=o.useCallback(K=>{ye.current=K,Ie(K)},[]),Ge=o.useRef(null),{activeNoiseUrl:Ze,noiseSettingsRef:Ye,fadeInNoise:Ke,fadeOutNoise:Oe}=T5({noisePlayer:m,audioRef:g,playbackStateRef:j}),{startTTS:Pe,stopTTS:lt}=M5({ttsText:i,playbackRate:Z,mainVolume:re,fillRef:y,waveProgressRef:Ce,setProgress:F,setPlaybackState:V,setStateLocal:Q,fadeInNoise:Ke,fadeOutNoise:Oe,noiseSettingsRef:Ye,onDoneRef:Ae,handleEndRef:Ge});o.useEffect(()=>{mt.current=lt});const wt=K=>{if(typeof window>"u"||!window.speechSynthesis){try{de(u("training.ttsUnavailable","\uC774 \uAE30\uAE30\uC5D0\uC11C\uB294 \uC74C\uC131\uC744 \uB4E4\uB824\uC904 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4."))}catch{}Pe(K);return}ut("tts"),Pe(K)},Dt=Array.isArray(t)?t.filter(Boolean):t?[t]:[],Nt=(!Dt||Dt.length===0)&&!!i,nt=Array.isArray(G)&&G.length>0?G:Array.isArray(L)&&L.length>0?L:null,Je=Math.max(Array.isArray(nt)?nt.length:0,Dt.length),at=o.useRef(!0);o.useEffect(()=>(at.current=!0,()=>{at.current=!1}),[]);const Qe=o.useRef(0),We=()=>{Qe.current+=1,_.current+=1},mt=o.useRef(null),He=o.useRef(null),st=o.useRef(null),Ct=o.useRef(null);Ct.current||(Ct.current=()=>{st.current=null;const K=g.current;if(He.current==="audio"&&K&&!K.paused){Qe.current+=1,_.current+=1;try{K.pause()}catch{}at.current&&V("paused")}else if(He.current==="tts")try{mt.current?.()}catch{}});const ut=K=>{He.current=K,st.current=Ga(Ct.current)},vt=()=>{st.current?.(),st.current=null};o.useEffect(()=>()=>{Ct.current&&Ka(Ct.current)},[]);const ot=o.useCallback(async(K,ce=3,he=50)=>{const J=Qe.current;for(let ne=0;ne<ce;ne++){if(!at.current||J!==Qe.current)return!1;try{return ut("audio"),await K.play(),!0}catch(Ne){if((Ne instanceof Error||typeof Ne=="object"&&Ne&&"name"in Ne?Ne.name:void 0)==="AbortError"){if(J!==Qe.current)return!1;await new Promise(qe=>setTimeout(qe,he));continue}try{de(u("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}return!1}}try{de(u("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}return!1},[u]),Fe=o.useCallback(()=>{const K=g.current;if(!K)return;const ce=()=>{V("playing"),Q("playMode"),$(!0),Ee();try{Dr(),Pa(K).then(Ne=>{if(at.current)try{h.current?.("main",Ne)}catch{}})}catch{}const ne=Ye.current;ne?.enabled&&(ne?.volume??0)>0&&Ke(ne.volume)},he=()=>{q5({ended:!!K?.ended,completedByEnd:ye.current})||(V("paused"),Be(),Oe())},J=()=>{try{const ne=ge.current,Ne=W5(ne,Se.current);if(Ne!==null){Se.current=Ne,P(Ne),$(!0);const qe=ne?.[Ne]&&ne[Ne].src;if(qe&&K){K.src=qe,K.load(),ot(K).catch(()=>{});return}}}catch{}V("stopped"),F(1);try{if(K)try{K.currentTime=0}catch{}}catch{}Be(),$(!1),Oe();try{!Te.current&&Ge.current&&Ge.current()}catch{}};return K.addEventListener("play",ce),K.addEventListener("pause",he),K.addEventListener("ended",J),()=>{try{K.removeEventListener("play",ce),K.removeEventListener("pause",he),K.removeEventListener("ended",J),Be()}catch{}}},[Ke,Oe,ot,Ye,Ee,Be]);o.useEffect(()=>Fe(),[Fe]),o.useEffect(()=>{Te.current=s},[s]),o.useEffect(()=>{Ae.current=r},[r]),o.useEffect(()=>{if(s||U!=="active")return;const K=x.current;if(!K)return;let ce=null;const he=requestAnimationFrame(()=>{try{const J=K.getTotalLength();if(!J)return;const ne=J*.2;K.style.strokeDasharray=`${J-ne} ${ne}`;const Ne="triFlow_"+Math.random().toString(36).slice(2);ce=document.createElement("style"),ce.textContent=`@keyframes ${Ne}{from{stroke-dashoffset:0}to{stroke-dashoffset:-${J}}}`,document.head.appendChild(ce),K.style.animation=`${Ne} 2.4s linear infinite`}catch{}});return()=>{cancelAnimationFrame(he),ce?.remove()}},[U,s]),o.useEffect(()=>{ge.current=G},[G]),o.useEffect(()=>{Se.current=O},[O]),o.useEffect(()=>{const K=f.current,ce=C.current;if(!K||!ce)return;let he=null;const J=32,ne=60,Ne=()=>{try{const tt=Array.from(K.querySelectorAll(":scope > .button"));let dt=0;tt.forEach(mn=>{if(mn===ce)return;const dr=mn.getBoundingClientRect();dt+=dr.width});const kt=K.getBoundingClientRect().width,qt=Math.max(0,Math.floor(kt-dt-8)),Rt=Je;if(!Rt||qt<=0){Array.from(ce.children).forEach(mn=>{try{mn.style.width=""}catch{}});return}let pn=Math.floor(qt/Rt);pn>ne&&(pn=ne),pn<J&&(pn=Math.max(J,Math.floor(qt/Rt))),Array.from(ce.querySelectorAll(".button")).forEach(mn=>{try{mn.style.width=`${pn}px`}catch{}})}catch{}},qe=requestAnimationFrame(Ne);try{he=new ResizeObserver(()=>{requestAnimationFrame(Ne)}),he.observe(K),he.observe(ce),window.addEventListener("resize",Ne)}catch{}return()=>{try{cancelAnimationFrame(qe)}catch{}try{he&&(he.disconnect(),he=null)}catch{}try{window.removeEventListener("resize",Ne)}catch{}}},[G,L,Je]),o.useEffect(()=>()=>{try{Me.current&&(clearTimeout(Me.current),Me.current=null),ie.current&&(clearTimeout(ie.current),ie.current=null)}catch{}},[]);const rt=(K,ce)=>{W(K),ee(ce),ke(),D(U5(K)),ge.current=K},bt=async(K,ce)=>{ze(!1),b.current=!1,K.src=ce,K.load(),await Uc(K),await me()!==!1&&(E(!1),await ot(K),Q("playMode"),P(0),$(!0))},zt=async(K,ce=!1)=>{const he=g.current;E(!0),I("measuring_duration");try{const J=await Lo(K,{timeoutMs:1e4,rejectOnError:!0});rt([{src:K,objectUrl:null,duration:J}],J),I("ready"),ce&&he&&await bt(he,K)}finally{b.current=!1,E(!1)}},et=async(K,ce=!1)=>{const he=g.current;E(!0),I("measuring_duration");try{const J=await Promise.all(K.map(Ne=>Lo(Ne,{timeoutMs:1e4})));if(!at.current)return;const ne=K.map((Ne,qe)=>({src:Ne,objectUrl:null,duration:J[qe]||0}));rt(ne,G5(ne)),I("ready"),ce&&he&&ne.length>0&&await bt(he,ne[0].src)}finally{b.current=!1,E(!1)}},Yt=async(K=!1,ce=!0)=>{const he=g.current,J=t?Array.isArray(t)?t:[t]:[];if(!J||J.length===0||!J.some(Boolean))return!1;if(b.current)return null;b.current=!0,ce&&E(!0),I("resolving");try{const ne=K5(t,a,zs),Ne=[];let qe=0;for(const tt of ne){let dt=tt.src??null,kt=null;if(!dt&&tt.resolvedPath){try{I("getting_signed_url"),dt=await Vs(tt.resolvedPath)}catch{dt=null}if(!at.current)return!1;if(!dt)try{I("downloading");const Rt=await Ws(tt.resolvedPath);if(!at.current)return!1;if(Rt){const pn=Rt instanceof Blob?Rt:new Blob([Rt]);kt=w.track(URL.createObjectURL(pn)),dt=kt}}catch{I("error");try{de(u("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4.")),Q("active")}catch{}}}if(!dt)continue;let qt=0;try{I("measuring_duration"),qt=await Lo(dt,{timeoutMs:3e3})}catch{qt=0}if(!at.current){if(kt)try{URL.revokeObjectURL(kt)}catch{}for(const Rt of Ne)if(Rt.objectUrl)try{URL.revokeObjectURL(Rt.objectUrl)}catch{}return!1}qe+=qt||0,Ne.push({...tt,src:dt,objectUrl:kt,duration:qt})}if(rt(Ne,qe),Ne.length>0&&K&&he){const tt=Ne[0];ze(!1);try{w.keepOnly(Ne.map(dt=>dt.objectUrl))}catch{}if(I("ready"),b.current=!1,tt.src&&he)try{if(he.src=tt.src,he.load(),await Uc(he),await me()===!1)return!1;ce&&E(!1),he&&await ot(he)}catch{ce&&E(!1)}else ce&&E(!1);Q("playMode"),P(0),$(!0)}return Ne.length>0}finally{b.current=!1,ce&&E(!1),I(ne=>ne==="ready"?"ready":"idle")}},kn=async()=>{const K=g.current;if(!(!K&&!Nt)){if(Nt){const ce=window.speechSynthesis;if(U==="active"){const he=Br(),J=Array.isArray(i)?i.filter(Boolean):i?[i]:[];if(he&&J.length>0){Q("load"),E(!0),I("resolving"),b.current=!0;try{const ne=await Promise.all(J.map(Ne=>Promise.resolve(he(Ne))));ne.length>1?await et(ne,!0):await zt(ne[0],!0)}catch{b.current=!1,E(!1),Q("active"),wt(J.length>0?J:void 0)}return}wt(J.length>0?J:void 0);return}if(U==="playMode"){const he=!!ce&&(ce.speaking||ce.paused)&&!(K&&(K.currentSrc||K.getAttribute("src")));if(K&&!he){if(K.paused){if(ye.current){await Lt();return}await ot(K),V("playing")}else We(),K.pause(),V("paused");return}try{if(ce&&ce.paused)try{ut("tts"),ce.resume(),V("playing")}catch{}else try{ce.pause(),V("paused")}catch{}}catch{}}return}if(U==="active"){if(s&&Array.isArray(ge.current)&&ge.current.length>0){const he=ge.current[0];try{if(he.src&&K)try{K.src=he.src,K.load(),K&&await ot(K)}catch{}Q("playMode"),P(0),$(!0);return}catch{}}Q("load");let ce;try{ce=await Yt(!0)}catch{ce=!1}if(ce===!1&&at.current){try{de(u("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}Q("active")}return}if(U!=="load"&&(U==="playMode"||U==="active"))try{if(K&&K.paused){if(ye.current){await Lt();return}K&&await ot(K),V("playing")}else K&&(We(),K.pause(),V("paused"))}catch(ce){(ce instanceof Error||typeof ce=="object"&&ce&&"name"in ce)&&ce.name}}},Lt=async()=>{const K=g.current;if(K)try{const ce=ge.current;if(Array.isArray(ce)&&ce.length>1){await $t(0);return}ze(!1);try{K.currentTime=0}catch{}K&&await ot(K),V("playing"),Q("playMode")}catch{}},tn=()=>{if(We(),vt(),Nt){lt();return}const K=g.current;try{if(K){try{K.pause()}catch{}try{K.currentTime=0}catch{}}}catch{}Oe(),V("stopped"),Q("active"),F(0),$(!1)},nn=async(K,{sameSegment:ce=!1}={})=>{const he=++_.current,J=g.current,ne=ge.current?.[K]?.src;try{if(ze(!1),P(K),$(!0),Se.current=K,!ne||!J||(ce||ke(),J.src=ne,J.load(),!ce&&await me()===!1)||he!==_.current||(await ot(J),he!==_.current))return;V("playing"),Q("playMode")}catch{}},an=async()=>{const K=ge.current,ce=Se.current||0;if(!K||ce<=0){await Lt();return}await nn(ce-1)},Mn=async()=>{const K=ge.current,ce=Se.current||0;if(!K||ce>=K.length-1){tn();return}await nn(ce+1)},rn=()=>{if(ye.current)return;const K=200,ce=340;ze(!0),We(),vt();try{F(1)}catch{}Re(1);try{q("hold")}catch{}try{const he=g.current,J=Nt&&!!he?.src;if(!Nt||J){if(he){he.pause();try{he.currentTime=0}catch{}}}else lt();Oe()}catch{}try{V("stopped")}catch{}if($(!1),!Te.current)try{ie.current&&(clearTimeout(ie.current),ie.current=null),ie.current=setTimeout(()=>{try{q("out")}catch{}ie.current=setTimeout(()=>{try{typeof Ae.current=="function"&&Ae.current(!0)}catch{}try{q("idle")}catch{}ie.current=null},ce)},K)}catch{}};o.useEffect(()=>{Ge.current=rn});const Ln=o.useCallback(()=>de(""),[]),$t=async K=>{(ge.current||[])[K]&&await nn(K,{sameSegment:K===Se.current})},gt=R==="playing",on=o.useMemo(()=>{if(!L||L.length<=1)return L;const K=L[O];return K?[K]:L},[L,O]),Xt=s===!0;o.useEffect(()=>{try{const K=g.current;K&&typeof K.playbackRate=="number"&&(K.playbackRate=Z||1)}catch{}},[Z]);const St=o.useRef({raf:null,timer:null});o.useEffect(()=>{const K=g.current;if(!K)return;const ce=Math.max(0,Math.min(1,re)),he=St.current,J=()=>{he.raf!==null&&(cancelAnimationFrame(he.raf),he.raf=null),he.timer!==null&&(clearTimeout(he.timer),he.timer=null)};J();const ne=Ia(K);if(K.paused||Math.abs(ne-ce)<.001||typeof requestAnimationFrame!="function"){try{Nn(K,ce)}catch{}return}const Ne=performance.now(),qe=()=>{const tt=Math.min(1,(performance.now()-Ne)/150);try{Nn(K,ne+(ce-ne)*tt)}catch{}he.raf=tt<1?requestAnimationFrame(qe):null};return he.raf=requestAnimationFrame(qe),he.timer=setTimeout(()=>{J();try{Nn(K,ce)}catch{}},200),J},[re]);const sn=ue==="hold",Vt=ue==="out",Wt=U==="playMode"&&!N&&!se||sn||Vt,un=R!=="stopped"||sn||Vt,dn=R==="paused",le=Math.max(0,Math.min(100,(M||0)*100)),xe=De("audio-player__fill",Wt?"is-visible":"",un?"is-expanded":"",dn?"is-paused":"",Vt?"is-out":"");return n.jsxs("div",{className:`audio-player ${Xt?"is-disabled":""}${l?` ${l}`:""}`,role:"group","aria-label":typeof p=="string"?p:void 0,children:[n.jsxs("div",{className:`audio-player__panel ${gt?"is-playing":""} ${N?"is-loading":""} ${U!=="default"?"is-revealed":""}`,children:[N?n.jsxs("div",{className:"audio-player__loading",role:"status","aria-live":"polite",children:[n.jsx("span",{className:"audio-player__loading-spinner","aria-hidden":"true"}),n.jsx("span",{className:"audio-player__loading-text",children:u(`training.audioStatus.${T}`,{defaultValue:I5[T]})})]}):null,U==="active"?n.jsx("button",{className:"audio-player__button",type:"button",disabled:Xt,onClick:()=>{z.current=Ja(),A(),kn()},"aria-label":typeof p=="string"?p:u("training.listen","\uB4E3\uAE30"),onMouseEnter:B,onMouseLeave:A,onFocus:B,onBlur:A,children:n.jsx("span",{ref:k,className:"audio-player__button-triangle-wrap",children:n.jsx("svg",{className:"audio-player__button-triangle",viewBox:"0 0 24 24","aria-hidden":"true",children:n.jsx("path",{ref:x,d:"M13.2 7.7 L16.5 9.85 Q20.2 12 16.5 14.15 L10 18.3 Q7 19.7 7 16.3 L7 7.7 Q7 4.3 10 5.7 L13.2 7.7"})})})}):null,v&&n.jsx(gn,{anchorRect:v,text:typeof p=="string"&&p?p:u("training.listenLabel","\uBB38\uC7A5 \uB4E3\uAE30"),offset:8}),n.jsxs("div",{className:`audio-player__play ${U==="playMode"||gt?"is-visible":""}`,inert:!(U==="playMode"||gt)||void 0,children:[n.jsxs("div",{ref:f,className:"audio-player__buttons",children:[n.jsx(pe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"skip-back",onClick:an,ariaLabel:u("training.prev","\uC774\uC804"),width:"60px",variant:"transparent-white","aria-hidden":"true",tabIndex:-1,disabled:U!=="playMode"}),n.jsx(pe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:gt?"pause":"play",onClick:kn,ariaLabel:u("common.playPause","\uC7AC\uC0DD / \uBA48\uCDA4"),"aria-pressed":gt,width:"60px",variant:"transparent-white",disabled:U!=="playMode"}),n.jsx(pe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"square",onClick:tn,ariaLabel:u("training.stop","\uC815\uC9C0"),width:"60px",variant:"transparent-white","aria-hidden":"true",tabIndex:-1,disabled:U!=="playMode"}),Je>1?n.jsx("div",{ref:C,className:"audio-player__source-buttons",children:Array.from({length:Je}).map((K,ce)=>n.jsx(pe,{htmlType:"button",size:32,type:"dot",shape:"pill",useBorder:!1,label:String(ce+1),onClick:()=>{try{$t(ce)}catch{}},ariaLabel:u("training.sourcePlay",{n:ce+1}),variant:"transparent-white",selected:H&&O===ce,disabled:U!=="playMode"||!(Array.isArray(G)&&G[ce]),showTooltipInfo:!0},ce))}):null,!Array.isArray(G)||G.length<=1?n.jsx(pe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"repeat",onClick:Lt,ariaLabel:u("common.replay","\uB2E4\uC2DC\uB4E3\uAE30"),width:"60px",variant:"transparent-white",disabled:U!=="playMode"}):null,n.jsx(pe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"skip-forward",onClick:Mn,ariaLabel:u("training.next","\uB2E4\uC74C"),width:"60px",variant:"transparent-white","aria-hidden":!0,tabIndex:-1,disabled:U!=="playMode"}),n.jsx(pe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"check",onClick:rn,ariaLabel:u("common.done","\uC644\uB8CC"),width:"60px",variant:"transparent-white",disabled:U!=="playMode"})]}),n.jsxs("div",{className:"audio-player__slider",children:[n.jsx("div",{className:xe,ref:y,style:{left:`${le}%`},"aria-hidden":"true"}),(c||d)&&n.jsx(P5,{segments:on,progress:M,totalDuration:Y,waveProgressRef:Ce,showSoundWaveForm:c,noiseSrc:d&&m?.settings.enabled&&_e>0?Ze:null,noiseRatio:m?ja(m.settings):0,noiseSpeed:m?.settings.speed??1,mainVolume:ae,onReadyChange:Le})]})]}),n.jsx("audio",{ref:g,crossOrigin:"anonymous",preload:"auto"})]}),!c&&n.jsxs("p",{className:"audio-player__no-waveform caption-1",children:[n.jsx(Ue,{icon:"triangle-alert",size:14}),u("training.noSoundWaveform","\uC18C\uB9AC \uBE44\uAD50 \uBB38\uC81C\uB294 \uC6E8\uC774\uBE0C\uD3FC\uC744 \uD45C\uD604\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.")]}),n.jsx(ea,{message:oe,position:ve,onClose:Ln})]})}function or(e){const{t}=be.useTranslation(),{text:a,label:r,anchorRect:s=null,onClose:i,closeOnOutsideClick:l=!0,isMobilePopup:c=!1}=e||{},[d,u]=o.useState(()=>{try{return localStorage.getItem("tooltip-theme")||"light"}catch{return"light"}});o.useEffect(()=>{try{localStorage.setItem("tooltip-theme",d)}catch{}},[d]);const{increase:p,decrease:m,canIncrease:h,canDecrease:g,fontSize:y,lineHeight:f}=Qi({storageKey:"tooltip-fontScale"}),w=o.useCallback(()=>u(k=>k==="dark"?"light":"dark"),[]),C=o.useCallback(k=>{try{k.stopPropagation()}catch{}try{typeof i=="function"&&i()}catch{}},[i]),b=Array.isArray(a)?a:typeof a>"u"||a===null?[]:[a],_={fontSize:`${y}px`,lineHeight:`${f}px`,"--tt-line-height":`${f}px`,"--tt-marker-size":"28px"},x=n.jsxs("div",{className:`tooltip-textbox__root ${d==="dark"?"is-dark":""}`,children:[n.jsxs("div",{className:"tooltip-textbox__box",children:[r&&n.jsx("div",{className:"tooltip-textbox__label body-2b",children:r}),n.jsx("div",{className:"tooltip-textbox__text body-1",style:_,children:b.map((k,v)=>n.jsxs("div",{className:"tooltip-textbox__line",children:[b.length>1?n.jsx("div",{className:"tooltip-textbox__marker",children:n.jsx("span",{className:"tooltip-textbox__line-number button-1",children:v+1})}):null,n.jsx("span",{className:"tooltip-textbox__line-text",children:k})]},v))})]}),n.jsxs("div",{className:"tooltip-textbox__buttons",children:[n.jsx(pe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"minus",onClick:m,ariaLabel:t("training.fontSizeDecrease","\uAE00\uC790 \uD06C\uAE30 \uAC10\uC18C"),variant:d==="dark"?"transparent-white":"transparent-gray",disabled:!g}),n.jsx(pe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"plus",onClick:p,ariaLabel:t("training.fontSizeIncrease","\uAE00\uC790 \uD06C\uAE30 \uC99D\uAC00"),variant:d==="dark"?"transparent-white":"transparent-gray",disabled:!h}),n.jsx(pe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:d==="dark"?"moon":"sun-medium",onClick:w,ariaLabel:t("training.toggleBackground","\uBC30\uACBD \uC804\uD658"),variant:d==="dark"?"transparent-white":"transparent-gray"}),n.jsx(pe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"x",onClick:C,ariaLabel:t("common.close","\uB2EB\uAE30"),variant:d==="dark"?"transparent-white":"transparent-gray"})]})]});return s?n.jsx(Qt,{anchorRect:s,className:`tooltip-textbox ${d==="dark"?"is-dark":""}`,onClose:i,closeOnOutsideClick:l,isMobilePopup:c,ariaLabel:r||t("tooltip.textbox","\uBCF8\uBB38"),children:x}):n.jsx("div",{className:`tooltip-textbox ${d==="dark"?"is-dark":""}`,children:x})}function Gc({state:e="disabled"}){const{t}=be.useTranslation();return n.jsxs("div",{className:`ts-bullet ts-bullet--${e}`,"aria-hidden":!0,children:[n.jsx("div",{className:"bullet__dot",children:n.jsx(Ue,{icon:"chevron-right",label:t("training.next","\uB2E4\uC74C"),className:"bullet__icon",imgClassName:"bullet__icon-img",maskClassName:"bullet__icon-mask",svgClassName:"bullet__icon-svg",wrapperStyle:{},size:20})}),n.jsx("div",{className:"ts-bullet__line"})]})}function Kc(e,t,a){const r=o.useRef(t),s=o.useRef(a);o.useEffect(()=>{r.current=t,s.current=a}),o.useEffect(()=>{if(!e||typeof document>"u")return;let i=null,l=10;const c=()=>{i=null;const d=r.current(),u=d?Array.from(d.querySelectorAll(Cn)).find(p=>!p.closest('[aria-hidden="true"]')):void 0;if(u){try{u.focus()}catch{}if(document.activeElement===u)return}--l>0&&(i=requestAnimationFrame(c))};return i=requestAnimationFrame(c),()=>{i!==null&&cancelAnimationFrame(i);const d=document.activeElement;if(!d||d===document.body||!document.contains(d)||d.closest(".tooltip-content")){const u=s.current();if(u)try{u.focus()}catch{}}}},[e])}function Yc({title:e,children:t,className:a="",state:r="disabled",usePreviewTextBtn:s=!1,onPreviewTextBtn:i,previewText:l=null,useFaded:c,usePlayAllBtn:d=!1,onPlayAll:u,playAllActive:p=!1}){const{t:m}=be.useTranslation(),h=Zt("(max-width: 767px)"),g=`training-step__title h4 ${c&&r==="disabled"?"training-step__title--faded":""} ${a}`.trim(),y=`training-step__title-row training-step__title-row--${r}`.trim(),f=o.useRef(null),[w,C]=o.useState(!1),[b,_]=o.useState(null),[x,k]=o.useState(null);Kc(w&&!!b,()=>{if(typeof document>"u")return null;const E=Array.from(document.querySelectorAll(".tooltip-content"));for(let T=E.length-1;T>=0;T--)if(E[T].querySelector(".tooltip-textbox__root"))return E[T];return null},()=>f.current?.querySelector("button")??null);const v=o.useRef(i);o.useEffect(()=>{v.current=i});const B=o.useMemo(()=>l==null?"":typeof l=="string"||typeof l=="number"?String(l):Array.isArray(l)&&l.every(E=>typeof E=="string"||typeof E=="number")?l.join(""):"",[l]),A=o.useCallback(()=>{C(!1),_(null),k(null)},[]);o.useEffect(()=>{if(!w)return;let E;try{typeof v.current=="function"&&(E=v.current())}catch{}if(E===!1){A();return}k(typeof E<"u"&&E!==null?E:null)},[B]);const N=o.useCallback(()=>{let E;try{typeof i=="function"&&(E=i())}catch{}if(E!==!1){if(k(typeof E<"u"&&E!==null?E:l),!f.current){C(T=>!T);return}if(w)C(!1),_(null),k(null);else{const T=f.current.getBoundingClientRect();_(T),C(!0)}}},[i,l,w]);return n.jsxs("div",{className:y,children:[n.jsx("p",{className:g,children:n.jsx("span",{className:"training-step__title-text",children:e??t})}),s||d?n.jsxs("div",{className:"title-controls",children:[n.jsxs("div",{className:"title-buttons",children:[d&&n.jsx(pe,{htmlType:"button",size:32,type:h?"dot":"bar",icon:"play-circle",label:h?void 0:m("training.playAll","\uBAA8\uB450 \uB4E3\uAE30"),ariaLabel:m("training.playAll","\uBAA8\uB450 \uB4E3\uAE30"),selected:p,onClick:u,variant:r==="disabled"?"disabled":"default",disabled:r==="disabled"||p,onDisabledClick:p&&r!=="disabled"?()=>{}:void 0}),s&&n.jsx("div",{ref:f,children:n.jsx(pe,{htmlType:"button",size:32,type:h?"dot":"bar",icon:"eye",label:h?void 0:m("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),ariaLabel:m("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),onClick:N,className:w?"is-selected":void 0,"aria-expanded":w,"aria-haspopup":"dialog",variant:r==="disabled"?"disabled":"default",disabled:!l&&typeof i!="function"})})]}),w&&n.jsx(or,{text:x??l,label:m("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),anchorRect:b,onClose:A,closeOnOutsideClick:!1,isMobilePopup:!0})]}):null]})}function Ro(e,t){return typeof t!="number"||typeof e!="number"?"disabled":e<t?"done":e===t?"active":"disabled"}function Vn({index:e,stepIndex:t,isLast:a=!1,title:r="",titleProps:s={},children:i,className:l="",onDone:c=void 0,useTitleFaded:d=void 0}){const{t:u}=be.useTranslation(),[p,m]=o.useState(()=>Ro(e,t));o.useEffect(()=>{const k=Ro(e,t);if(k!==p){const v=setTimeout(()=>m(k),0);return()=>clearTimeout(v)}},[e,t,p]);const h=o.useCallback((...k)=>{Ro(e,t)==="done"||p==="done"||typeof c=="function"&&c(...k)},[e,t,p,c]),[g,y]=o.useState(!1),[f,w]=o.useState({text:"",label:"\uBB38\uC7A5 \uB4E3\uAE30",anchorRect:null,backdrop:!1,alignX:null,alignY:null}),C=o.useCallback(k=>{if(!k)return null;try{const v=k;if(typeof k=="object"&&(v.currentTarget||v.target)&&(v.nativeEvent||v.type)){const N=v.currentTarget??v.target;if(N&&typeof N.getBoundingClientRect=="function")return N.getBoundingClientRect()}if(k instanceof DOMRect)return k;const B=k;if(B&&typeof B.getBoundingClientRect=="function")return B.getBoundingClientRect();const A=k?.current;return A&&typeof A.getBoundingClientRect=="function"?A.getBoundingClientRect():null}catch{return null}},[]),b=o.useCallback((k,{text:v="",label:B="\uBB38\uC7A5 \uB4E3\uAE30",backdrop:A=!1,alignX:N="center",alignY:E="top"}={})=>{const T=C(k);w({text:v,label:B,anchorRect:T,backdrop:A,alignX:N,alignY:E}),y(!0)},[C]),_=o.useCallback(()=>{y(!1),w(k=>({...k,anchorRect:null}))},[]),x=o.Children.map(i,k=>{if(o.isValidElement(k)){const v=k;if(typeof v.type=="string")return v;const B=v.props??{},A=typeof B.onDone=="function"?B.onDone:h,N=typeof B.disabled=="boolean";let E=p==="disabled";return N&&(E=!!B.disabled),o.cloneElement(v,{onDone:A,disabled:E,showTooltip:b,hideTooltip:_})}return k});return n.jsxs("div",{className:`training-step training-step--${p} ${a?"training-step--last":""} ${l}`,"aria-current":p==="active",children:[n.jsx(Gc,{state:p}),n.jsxs("div",{className:"training-step__content",children:[n.jsx(Yc,{state:p,title:r,...s,useFaded:d}),x]}),g?n.jsx(Qt,{anchorRect:f.anchorRect,backdrop:f.backdrop,onClose:_,ariaLabel:u("tooltip.textbox","\uBCF8\uBB38"),children:n.jsx(or,{text:f.text,onClose:_})}):null]})}function Zc({context:e,state:t="disabled",theme:a="light"}){const{t:r}=be.useTranslation(),[s,i]=o.useState("disabled"),[l,c]=o.useState(()=>{try{return localStorage.getItem("tooltip-theme")||a}catch{return a}});o.useEffect(()=>{try{localStorage.setItem("tooltip-theme",l)}catch{}},[l]);const d=()=>c(R=>R==="dark"?"light":"dark"),{increase:u,decrease:p,canIncrease:m,canDecrease:h,fontSize:g,lineHeight:y}=Qi({storageKey:"textbox_fontScale"}),[f,w]=o.useState(""),C=o.useRef(null),b=o.useRef(!1),_=o.useCallback(()=>{b.current=Ja()&&!!C.current&&C.current.contains(document.activeElement),i("active")},[]),x=o.useCallback(()=>w(""),[]),k=R=>{try{w(R)}catch{}},v=typeof navigator<"u"&&/Mobi|Android/i.test(navigator.userAgent||"");o.useEffect(()=>{if(t!=="disabled"){const R=setTimeout(()=>i(t),0);return()=>clearTimeout(R)}},[t]);const B=o.useMemo(()=>e&&typeof e=="object"?String(e.sentence??e.text??""):typeof e=="string"?e:"",[e]),[A,N]=o.useState(B);A!==B&&(N(B),i("disabled"));const E=t==="disabled"?s:t,T=E==="disabled"?"training-text-box--disabled":E==="active"?"training-text-box--active":E==="done"?"training-text-box--done":"",I=o.useMemo(()=>({fontSize:`${g}px`,lineHeight:`${y}px`}),[g,y]);return o.useEffect(()=>{if(E==="disabled"||!b.current)return;b.current=!1;const R=document.activeElement;R&&R!==document.body||C.current?.querySelector(".training-text-box__buttons button")?.focus()},[E]),n.jsxs("div",{ref:C,className:`training-text-box ${T} ${E!=="disabled"&&l==="dark"?"is-dark":""}`,children:[E==="disabled"&&n.jsx("div",{className:"training-text-box__preview",children:n.jsx(pe,{htmlType:"button",size:48,type:"bar",onClick:_,icon:"eye",ariaLabel:r("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),label:r("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),useBorder:!1})}),n.jsx("div",{className:"training-text-box__area","aria-hidden":E==="disabled",children:n.jsx("span",{className:"training-text-box__inner h3",style:I,children:B})}),E!=="disabled"&&n.jsxs("div",{className:"training-text-box__buttons","aria-hidden":E==="disabled",children:[n.jsx(pe,{htmlType:"button",size:32,type:"dot",onClick:p,onDisabledClick:()=>k(r("training.fontSizeMin","\uAE00\uC528 \uD06C\uAE30\uAC00 \uCD5C\uC18C\uC785\uB2C8\uB2E4.")),ariaLabel:r("training.fontSizeDecrease","\uAE00\uC790 \uD06C\uAE30 \uAC10\uC18C"),icon:"minus",variant:l==="dark"?"transparent-white":"transparent-gray",disabled:!h,useBorder:!1,showTooltipInfo:!0,...!v&&{width:"60px"}}),n.jsx(pe,{htmlType:"button",size:32,type:"dot",onClick:u,onDisabledClick:()=>k(r("training.fontSizeMax","\uAE00\uC528 \uD06C\uAE30\uAC00 \uCD5C\uB300\uC785\uB2C8\uB2E4.")),ariaLabel:r("training.fontSizeIncrease","\uAE00\uC790 \uD06C\uAE30 \uC99D\uAC00"),icon:"plus",variant:l==="dark"?"transparent-white":"transparent-gray",disabled:!m,useBorder:!1,showTooltipInfo:!0,...!v&&{width:"60px"}}),n.jsx(pe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:l==="dark"?"moon":"sun-medium",onClick:d,ariaLabel:r("training.toggleBackground","\uBC30\uACBD \uC804\uD658"),variant:l==="dark"?"transparent-white":"transparent-gray"})]}),n.jsx(ea,{message:f,position:"top",onClose:x})]})}function Po({index:e,stepIndex:t,isLast:a=!1,title:r,useTitleFaded:s,onDone:i,onChange:l,answer:c,wrongAnswers:d,choices:u,multiSelect:p=!1,correctCount:m=0,useDisabledCovered:h=!1,choiceIcons:g,shuffleChoices:y=!0}){const{t:f}=be.useTranslation(),w=r??f("training.selectConfirm","\uBB38\uC81C\uB97C \uBCF4\uACE0 \uD574\uB2F9\uD558\uB294 \uB0B4\uC6A9\uC744 \uC120\uD0DD\uD558\uC138\uC694."),C=typeof e=="number"?e:-1,b=typeof t!="number"?"disabled":C<t?"done":C===t?"active":"disabled",_=Array.isArray(u)&&u.length?u:typeof c<"u"?[c].concat(Array.isArray(d)?d:[]):void 0,x=d?d.join("||"):"",k=u?u.join("||"):"",[v,B]=o.useState(()=>Array.isArray(_)?y?fa(_):_.slice():void 0);o.useEffect(()=>{Array.isArray(_)&&_.length?B(y?fa(_):_.slice()):B(void 0)},[c,x,k,y]);const[A,N]=o.useState(null),[E,T]=o.useState(()=>new Set);o.useEffect(()=>{N(null),T(new Set)},[k,c,x]);const I=o.useRef(void 0);o.useEffect(()=>{const j=I.current;typeof j=="number"&&typeof t=="number"&&typeof e=="number"&&j>=e&&t<e&&(N(null),T(new Set)),I.current=t},[t,e]);const R=o.useCallback(j=>{if(b!=="active")return;const M=v?.[j];if(M==null)return;const F=M,U=b==="active"||b==="done";if(p){const Q=new Set(E),z=Q.has(F);z?Q.delete(F):Q.add(F),T(Q),typeof l=="function"&&l({selectedValues:[...Q],__ts:Date.now()}),U&&(typeof m=="number"&&m>0?Q.size>=m:!z)&&typeof i=="function"&&b==="active"&&i({selectedValues:[...Q],__ts:Date.now()})}else N(F),typeof l=="function"&&l({selectedIndex:j,selectedValue:F,__ts:Date.now()}),U&&typeof i=="function"&&b==="active"&&i({selectedIndex:j,selectedValue:F,__ts:Date.now()})},[v,b,p,l,i,m,E]),V=`training-step__buttons${Array.isArray(v)&&v.length>3?" training-step__buttons--wrap-3":""}`;return n.jsx(Vn,{index:e,stepIndex:t,isLast:a,title:w,useTitleFaded:s,children:n.jsx("div",{className:V,children:Array.isArray(v)&&v.length>0?v.map((j,M)=>n.jsx(pe,{htmlType:"button",size:56,type:"bar",onClick:()=>R(M),ariaLabel:String(j),label:j,useLabel:!0,icon:g?g[String(j)]:void 0,variant:"default",disabled:b==="disabled",selected:p?E.has(j):A===j,useDisabledCovered:h,minWidth:0},String(j))):null})})}function Io({index:e,stepIndex:t,isLast:a=!1,title:r,onDone:s,onChange:i,context:l,demoSelected:c}){const{t:d}=be.useTranslation(),u=r??d("training.confirmTitle","\uBB38\uC7A5\uC744 \uD655\uC778\uD558\uACE0 \uC798 \uB4E4\uB838\uB294\uC9C0 \uC120\uD0DD\uD558\uC138\uC694."),p=typeof e=="number"?e:-1,m=typeof t!="number"?"disabled":p<t?"done":p===t?"active":"disabled",h=l&&typeof l=="object"?l.sentence||"":typeof l=="string"?l:"",g=l&&typeof l=="object"?l.choices:void 0,[y,f]=o.useState(c??null),w=`${String(h)}\0${JSON.stringify(g??null)}`,[C,b]=o.useState(w);C!==w&&(b(w),c==null&&f(null));const[_,x]=o.useState(c);Object.is(_,c)||(x(c),f(c??null));const k=o.useRef(void 0);o.useEffect(()=>{const N=k.current;typeof N=="number"&&typeof t=="number"&&typeof e=="number"&&N>=e&&t<e&&c==null&&f(null),k.current=t},[t,e,c]);const v=o.useCallback(N=>{const E=typeof N=="object"&&N!==null?Object.assign({},N,{__ts:Date.now()}):{value:N,__ts:Date.now()};typeof i=="function"&&i(E),m==="active"&&typeof s=="function"&&s(E)},[i,m,s]),B=o.useCallback(()=>{m==="active"&&(f(!1),v(!1))},[v,m]),A=o.useCallback(()=>{m==="active"&&(f(!0),v(!0))},[v,m]);return n.jsxs(Vn,{index:e,stepIndex:t,isLast:a,title:u,onDone:s,useTitleFaded:!1,children:[n.jsx(Zc,{context:l,state:m}),n.jsx("div",{className:"training-step__buttons",children:Array.isArray(g)&&g.length>0?g.slice(0,6).map((N,E)=>n.jsx(pe,{htmlType:"button",size:56,type:"bar",onClick:()=>{m==="active"&&(f(E),v&&v(E))},disabled:m==="disabled",ariaLabel:String(N),label:N,variant:m,selected:y===E},E)):n.jsxs(n.Fragment,{children:[n.jsx(pe,{htmlType:"button",size:56,type:"bar",onClick:B,disabled:m==="disabled",icon:"x",ariaLabel:d("training.notHeard","\uC548 \uB4E4\uB838\uC5B4\uC694."),label:d("training.notHeard","\uC548 \uB4E4\uB838\uC5B4\uC694."),variant:"default",selected:y===!1}),n.jsx(pe,{htmlType:"button",size:56,type:"bar",onClick:A,disabled:m==="disabled",icon:"circle",ariaLabel:d("training.heardWell","\uC798 \uB4E4\uB838\uC5B4\uC694."),label:d("training.heardWell","\uC798 \uB4E4\uB838\uC5B4\uC694."),variant:"default",selected:y===!0})]})})]})}function Fo({index:e,stepIndex:t,isLast:a=!1,title:r,onDone:s,btnLabel:i,soundSrc:l,bucketPath:c,usePreviewTextBtn:d,previewText:u=null,onPreviewTextBtn:p,disabled:m,_pageIndex:h,showSoundWaveForm:g,showNoiseWaveForm:y}){const{t:f}=be.useTranslation(),w=r??f("training.listenTitle","\uC81C\uC2DC\uD558\uB294 \uBB38\uC7A5\uC744 \uB4E4\uC5B4\uC8FC\uC138\uC694."),C=m??(typeof t=="number"&&typeof e=="number"?e>t:!1);return n.jsx(Vn,{index:e,stepIndex:t,isLast:a,title:w,onDone:s,titleProps:{usePreviewTextBtn:d,previewText:u,onPreviewTextBtn:p},children:n.jsx($o,{soundSrc:l,ttsText:l?null:u??w,bucketPath:c,btnLabel:i||f("training.listenButton","\uBB38\uC7A5 \uB4E3\uAE30"),disabled:C,className:"training-step__listen-sticky",showSoundWaveForm:g,showNoiseWaveForm:y},`audio-p${h??0}-s${e}`)})}const X5=[];function Oo({index:e,stepIndex:t,isLast:a=!1,title:r,onDone:s,onChange:i,context:l=X5}){const{t:c}=be.useTranslation(),d=r??c("training.orderListDefault","\uBB38\uC7A5\uC744 \uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uBC30\uCE58\uD558\uC138\uC694."),u=L=>typeof L=="string"?L:L&&(L.context||L.sentence||L.question||"")||"",[p,m]=o.useState(Array.isArray(l)?l:[]),[h,g]=o.useState(()=>(p||[]).map((L,D)=>({id:D,text:u(L)}))),y=o.useMemo(()=>typeof t!="number"||typeof e!="number"?"disabled":e<t?"done":e===t?"active":"disabled",[t,e]),f=y!=="disabled",w=o.useRef(void 0);o.useEffect(()=>{if(w.current===l)return;w.current=l;const L=Array.isArray(l)?l:[];m(L);const D=(O=>{const P=(O||[]).map((ee,Z)=>({id:Z,text:u(ee)}));if(P.length<=1)return P;const H=(ee,Z)=>{if(ee.length!==Z.length)return!1;for(let ae=0;ae<ee.length;ae++)if(ee[ae].text!==Z[ae].text)return!1;return!0};let $=fa(P),Y=0;for(;H($,P)&&Y<20;)$=fa(P),Y+=1;return $})(L);g(D);try{if(typeof i=="function"){const O=D.filter((P,H)=>P.text===u(L[H])).length;i({shuffled:D,score:O,total:(L||[]).length,initial:!0,__ts:Date.now()})}if(typeof s=="function"&&y==="active"){const O=D.filter((P,H)=>P.text===u(L[H])).length;s({shuffled:D,score:O,total:(L||[]).length,initial:!0,__ts:Date.now()})}}catch{}},[l]);const C=(L,D)=>{const O=[...h],P=L+D;if(P<0||P>=O.length)return;const H=O[P];O[P]=O[L],O[L]=H,M(O);try{if(typeof s=="function"&&y==="active"){const $=O.filter((Y,ee)=>Y.text===u(p[ee])).length;s({shuffled:O,score:$,total:(p||[]).length,__ts:Date.now()})}}catch{}},[b,_]=o.useState(null),x=o.useRef(null),k=o.useRef(null),v=o.useRef(null),B=o.useRef(null),A=o.useRef(null),N=o.useRef({x:0,y:0}),E=o.useRef(null),T=o.useRef({dx:0,dy:0}),I=()=>{if(E.current!==null)return;const L=()=>{if(!x.current){E.current=null;return}E.current=requestAnimationFrame(L);const D=N.current,O=T.current||{dx:0,dy:0};x.current&&(x.current.style.transform=`translate3d(${D.x-O.dx}px, ${D.y-O.dy}px, 0)`)};E.current=requestAnimationFrame(L)},R=o.useRef(new Map),V=o.useRef(new Map),j=()=>{const L=new Map;return R.current.forEach((D,O)=>{D&&D.getBoundingClientRect&&L.set(O,D.getBoundingClientRect())}),L},M=L=>{const D=j();g(L);try{if(typeof i=="function"){const O=L.filter((P,H)=>P.text===u(p[H])).length;i({shuffled:L,score:O,total:(p||[]).length,__ts:Date.now()})}}catch{}requestAnimationFrame(()=>{const O=j();L.forEach(P=>{const H=D.get(P.id),$=O.get(P.id),Y=R.current.get(P.id);if(!Y||!H||!$)return;const ee=H.top-$.top;ee&&(Y.style.transition="none",Y.style.transform=`translateY(${ee}px)`,requestAnimationFrame(()=>{Y.style.transition="transform 420ms cubic-bezier(.22,.9,.39,1)",Y.style.transform="";const Z=()=>{Y.style.transition="",Y.removeEventListener("transitionend",Z)};Y.addEventListener("transitionend",Z)}))})})},F=(L,D)=>{try{try{D.dataTransfer?.setData("text/plain",String(L))}catch{}try{D.dataTransfer&&(D.dataTransfer.effectAllowed="move")}catch{}try{const O=document.createElement("div");O.style.cssText="position:absolute;top:-9999px;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none;",document.body.appendChild(O),D.dataTransfer?.setDragImage(O,0,0),requestAnimationFrame(()=>{try{document.body.removeChild(O)}catch{}})}catch{}}catch{}_(L);try{const O=h[L],P=document.createElement("div");P.className="order-list__dragging-object order-list__dragging-object--visible",P.textContent=O&&O.text?O.text:"",document.body.appendChild(P),x.current=P;const H=R.current.get(O.id);let $=D.clientX||0,Y=D.clientY||0;try{if(H&&H.getBoundingClientRect){const ue=H.getBoundingClientRect();$=ue.left+ue.width/2,Y=ue.top+ue.height/2}}catch{}const ee=P.getBoundingClientRect(),Z=ee.width/2,ae=ee.height/2;T.current={dx:Z,dy:ae},P.style.transition="none",N.current={x:$,y:Y},P.style.transform=`translate3d(${$-Z}px, ${Y-ae}px, 0)`,requestAnimationFrame(()=>{try{P.style.transition=""}catch{}I()});const _e=ue=>{const q=ue;N.current={x:q.clientX,y:q.clientY},I()};v.current=_e,document.addEventListener("mousemove",_e);const re=ue=>{const q=ue;N.current={x:q.clientX,y:q.clientY},I()};k.current=re,document.addEventListener("dragover",re);try{D.dataTransfer?.setData("text/plain",String(L));try{D.dataTransfer?.setData("application/json",JSON.stringify({idx:L}))}catch{}}catch{}}catch{}},U=(L,D)=>{D.preventDefault();try{D.dataTransfer&&(D.dataTransfer.dropEffect="move")}catch{}try{A.current!==null&&(clearTimeout(A.current),A.current=null);const O=D.currentTarget&&D.currentTarget.closest?D.currentTarget.closest(".order-list__item"):null;if(O&&B.current!==O){if(B.current)try{B.current.classList.remove("drag-over")}catch{}try{O.classList.add("drag-over")}catch{}B.current=O}}catch{}},Q=(L,D)=>{D.preventDefault();const O=D.dataTransfer?.getData("text/plain")||"",P=O?parseInt(O,10):b,H=L;if(typeof P!="number"||isNaN(P)||P===H){_(null),W(),z();return}const $=w2(h,P,H);M($),_(null),z();try{if(typeof s=="function"&&y==="active"){const Y=$.filter((ee,Z)=>ee.text===u(p[Z])).length;s({shuffled:$,score:Y,total:(p||[]).length,__ts:Date.now()})}}catch{}try{requestAnimationFrame(()=>{const Y=document.querySelectorAll(".order-list .order-list__item")[H];if(!Y)return;const ee=Y.querySelector(".order-list__slot")||Y;try{ee.classList.add("pulse"),ee.offsetHeight,ee.classList.add("to-dark");const Z=()=>{ee.classList.remove("pulse","to-dark"),ee.removeEventListener("transitionend",Z)};ee.addEventListener("transitionend",Z)}catch{}})}catch{}W()},z=()=>{if(x.current){try{document.body.removeChild(x.current)}catch{}x.current=null}k.current&&(document.removeEventListener("dragover",k.current),k.current=null),v.current&&(document.removeEventListener("mousemove",v.current),v.current=null),E.current!==null&&(cancelAnimationFrame(E.current),E.current=null)},G=()=>{_(null),W(),z()};o.useEffect(()=>()=>z(),[]);const W=()=>{try{if(A.current!==null&&(clearTimeout(A.current),A.current=null),B.current){try{B.current.classList.remove("drag-over")}catch{}B.current=null}document.querySelectorAll(".order-list .order-list__item").forEach(L=>L.classList.remove("drag-over"))}catch{}};return o.useEffect(()=>{try{const L=Math.max(1,(h||[]).length);h.forEach((D,O)=>{const P=V.current.get(D.id);if(!P)return;let H=50;L>1&&(H=Math.round(O/(L-1)*100));try{P.style.setProperty("--marker-pos",H+"%")}catch{}})}catch{}},[h]),o.useEffect(()=>()=>{z(),A.current!==null&&(clearTimeout(A.current),A.current=null)},[]),n.jsx(Vn,{index:e,stepIndex:t,isLast:a,title:d,children:n.jsx("div",{className:"order-list",children:h.map((L,D)=>{const O=Math.max(1,(h||[]).length),P=O>1?Math.round(D/(O-1)*100):50;return n.jsx("div",{className:"order-list__item",children:n.jsxs("div",{className:"order-list__slot","data-disabled":y==="disabled","aria-disabled":y==="disabled",children:[y!=="disabled"?n.jsx("div",{className:"order-list__marker caption-1",style:{"--marker-pos":P+"%"},ref:H=>{const $=V.current;H?$.set(L.id,H):$.delete(L.id)},children:n.jsx("span",{className:"order-list__slot-number button-1",children:D+1})}):null,n.jsxs("div",{ref:H=>{const $=R.current;H?$.set(L.id,H):$.delete(L.id)},className:`order-list__draggable ${b===D?"dragging":""}`,"data-disabled":y==="disabled","aria-disabled":y==="disabled",tabIndex:y==="disabled"?-1:0,draggable:f,onDragStart:f?H=>F(D,H):void 0,onDragEnter:f?H=>U(D,H):void 0,onDragOver:f?H=>U(D,H):void 0,onDragLeave:f?()=>{try{A.current!==null&&clearTimeout(A.current),A.current=setTimeout(()=>{try{const H=document.querySelectorAll(".order-list .order-list__item");H&&H[D]&&(H[D].classList.remove("drag-over"),B.current===H[D]&&(B.current=null))}catch{}},80)}catch{}}:void 0,onDrop:f?H=>Q(D,H):void 0,onDragEnd:f?G:void 0,children:[n.jsx("span",{className:"order-list__item-text body-2",children:L.text}),f?n.jsxs("span",{className:"order-list__item-buttons",children:[n.jsx(pe,{htmlType:"button",size:32,type:"dot",onClick:()=>C(D,-1),ariaLabel:c("training.up"),icon:"chevron-up",variant:"transparent-gray",width:48,useFaded:"true",disabled:D===0,useBorder:!1,useDisabledInvisible:!0}),n.jsx(pe,{htmlType:"button",size:32,type:"dot",onClick:()=>C(D,1),ariaLabel:c("training.down"),icon:"chevron-down",variant:"transparent-gray",width:48,useFaded:"true",disabled:D===h.length-1,useBorder:!1,useDisabledInvisible:!0})]}):null]})]})},L.id)})})})}const J5=8e3;function Q5(e,t){return new Promise(a=>{let r=!1;const s=()=>{r||(r=!0,a())};e.then(s,s),setTimeout(s,t)})}function Xc({index:e,stepIndex:t,isLast:a=!1,title:r,onDone:s,onChange:i,context:l=[],selectable:c=!1,hideLabel:d=!1,hideAudio:u=!1,maxCards:p}){const{t:m}=be.useTranslation(),h=r??m("training.cardInstructions","\uB0B1\uB9D0 \uCE74\uB4DC\uB97C \uBCF4\uACE0 \uC18C\uB9AC\uB97C \uB4E3\uACE0 \uD655\uC778\uD558\uC138\uC694."),g=o.useMemo(()=>Array.isArray(l)?l:l&&l.items||[],[l]),y=p??3,f=(g||[]).slice(0,y);(g||[]).length>y&&console.warn(`TrainingStepCard: ${g.length} items passed but only ${y} shown`);const w=typeof e=="number"?e:-1,C=typeof t!="number"?"disabled":w<t?"done":w===t?"active":"disabled",[b,_]=o.useState(null),x=o.useRef([]),[k,v]=o.useState(!1),B=o.useRef(null),A=o.useRef(!0);o.useEffect(()=>(A.current=!0,()=>{A.current=!1}),[]);const N=o.useMemo(()=>g.map(V=>V?.id??V?.word??"").join("|"),[g]);o.useEffect(()=>{_(null)},[N]);const E=o.useRef(void 0);o.useEffect(()=>{const V=E.current;typeof V=="number"&&typeof t=="number"&&typeof e=="number"&&V>=e&&t<e&&_(null),E.current=t},[t,e]);const T=o.useCallback((V,j)=>{if(c)return;const M={item:V,index:j,__ts:Date.now()};try{typeof i=="function"&&i(M)}catch{}if(C==="active"&&typeof s=="function")try{s(M)}catch{}},[c,i,C,s]),I=o.useCallback(async()=>{if(k||C==="disabled")return;v(!0);let V=!1;const j=new Promise(M=>{B.current=()=>{V=!0,M()}});try{for(let M=0;M<f.length&&!(!A.current||V);M++){const F=x.current[M];F&&await Promise.race([Q5(F.play(),J5),j])}}finally{B.current=null,v(!1)}},[k,C,f.length]),R=o.useCallback((V,j)=>{if(C!=="active")return;_(j);const M={selectedValue:V.word||V.title||"",selectedIndex:j,item:V,__ts:Date.now()};try{typeof i=="function"&&i(M)}catch{}if(C==="active"&&typeof s=="function")try{s(M)}catch{}},[i,C,s]);return n.jsx(Vn,{index:e,stepIndex:t,isLast:a,title:h,onDone:s,titleProps:{usePlayAllBtn:!u&&f.length>0,onPlayAll:I,playAllActive:k},children:n.jsx("div",{className:"training-step__cards",onClickCapture:V=>{const j=B.current;if(!j)return;const M=V.target;M&&typeof M.closest=="function"&&M.closest(".training-word-card__bottom")&&j()},children:f.length===0?n.jsx("div",{className:"training-step__empty",children:m("training.noCards","\uCE74\uB4DC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")}):f.map((V,j)=>n.jsx(vo,{ref:M=>{x.current[j]=M},item:V,disabled:C==="disabled",onPlayDone:()=>T(V,j),selectable:c,selected:c&&b===j,onSelect:c?()=>R(V,j):void 0,flipDelay:j*120,hideLabel:d,hideAudio:u},V&&V.id||j))})})}const e3=160,t3={\uBCF4\uCCAD\uAE30:"hearingAid",\uC778\uACF5\uC640\uC6B0:"cochlearImplant"};function n3(e,t){const a=t3[e];return a?t(`device.type.${a}`,{defaultValue:e}):e}const Jc=()=>{};function Sn(e){const t=o.useId();if(!("variant"in e)){const{label:C,sub:b,onClick:_,children:x,align:k="horizontal",icon:v,useFullWidth:B=!1}=e,A=N=>{_&&N.target===N.currentTarget&&(N.key==="Enter"||N.key===" ")&&(N.preventDefault(),_())};return n.jsxs("div",{className:De("panel-row",k==="vertical"?"panel-row--vertical":"",B?"panel-row--label-fixed panel-row--fill":"",_?"panel-row--clickable":""),onClick:_,onKeyDown:_?A:void 0,role:_?"button":void 0,tabIndex:_?0:void 0,children:[v!=null&&n.jsx("div",{className:"panel-row__icon",children:v}),C!=null&&n.jsxs("div",{className:"panel-row__left",children:[n.jsx("div",{className:"panel-row__label body-3",children:C}),b&&n.jsx("div",{className:"panel-row__sub caption-1",children:b})]}),n.jsx("div",{className:"panel-row__right",children:x})]})}if(e.variant==="description")return n.jsx("div",{className:"panel-row panel-row--block",children:n.jsx("p",{className:"panel-row__description body-3",children:e.children})});if(e.variant==="empty")return n.jsx("div",{className:"panel-row panel-row--empty body-3",children:e.children});if(e.variant==="loading")return n.jsx("div",{className:"panel-row panel-row--loading",children:n.jsx(Ea,{size:28})});if(e.variant==="custom"&&!e.label)return n.jsx("div",{className:"panel-row panel-row--block",children:e.children});const{variant:a,label:r,sub:s,onClick:i,required:l,error:c,align:d="horizontal",useFullWidth:u=!1,icon:p}=e,m=a==="button"?void 0:i;let h=null;const g=a==="toggle"?`panel-toggle-${t}`:void 0,y=c?`panel-error-${t}`:void 0;if(a==="toggle"){const C=e;h=n.jsx(Fl,{checked:C.checked,onChange:C.onChange,id:g})}else if(a==="segmented"){const C=e;h=n.jsx(xn,{options:C.options,value:C.value,onChange:C.onChange,size:C.size??40,ariaLabel:r})}else if(a==="dropdown"){const C=e,b=C.dropdowns?.length?n.jsx("div",{className:`panel-row__dropdown-group${u?" panel-row__dropdown-group--full":""}`,children:C.dropdowns.map((_,x)=>n.jsx("div",{className:u?"panel-row__dropdown-item--full":void 0,children:n.jsx(en,{options:_.options,value:_.value,onChange:_.onChange,placeholder:_.placeholder,block:u,error:!!c,ariaDescribedBy:y,ariaLabel:_.ariaLabel??([r,_.placeholder].filter(Boolean).join(" ")||void 0)})},x))}):n.jsx(en,{options:C.options??[],value:C.value??"",onChange:C.onChange??Jc,block:u,error:!!c,ariaLabel:r,ariaDescribedBy:y});h=c?n.jsxs("div",{className:`panel-row__dropdown-error-wrap${u?" panel-row__dropdown-error-wrap--full":""}`,children:[b,n.jsx("span",{id:y,className:"caption-1 panel-row__error",role:"alert",children:c})]}):b}else if(a==="button"){const C=e;C.buttons?.length?h=n.jsx("div",{className:"panel-row__button-group",children:C.buttons.map((b,_)=>n.jsx(pe,{htmlType:"button",size:b.btnSize??40,variant:b.btnVariant??"default",disabled:b.disabled,onClick:b.onClick,children:b.label},_))}):h=n.jsx(pe,{htmlType:"button",size:C.btnSize??40,variant:C.btnVariant??"default",disabled:C.disabled,onClick:C.onClick,children:C.buttonLabel})}else if(a==="text"){const C=e;h=n.jsx("span",{className:`panel-row__text body-2${u?" panel-row__text--full":""}`,style:C.valueColor?{color:C.valueColor}:void 0,children:C.value})}else if(a==="input"){const C=e;h=n.jsxs("div",{className:`panel-row__input-wrap${u?" panel-row__input-wrap--full":""}`,children:[n.jsx(zn,{value:C.value,onChange:C.onChange??Jc,onKeyDown:C.onKeyDown,onEnter:C.onEnter,placeholder:C.placeholder,ghostText:C.ghostText,ghostHint:C.ghostHint,inputMode:C.inputMode,readOnly:C.readOnly,disabled:C.disabled,type:C.type,autoComplete:C.autoComplete,maxLength:C.maxLength,showCount:C.showCount,multiline:C.multiline,rows:C.rows,fullWidth:u,error:c,ariaLabel:r,required:l}),C.helperText&&n.jsx("div",{className:"panel-row__helper caption-1",children:C.helperText})]})}else a==="custom"&&(h=e.children);c&&a!=="input"&&a!=="dropdown"&&(h=n.jsxs("div",{className:`panel-row__dropdown-error-wrap${u?" panel-row__dropdown-error-wrap--full":""}`,children:[h,n.jsx("span",{id:y,className:"caption-1 panel-row__error",role:"alert",children:c})]}));const f=a==="input"||a==="dropdown"||(a==="text"||a==="custom")&&u,w=C=>{m&&C.target===C.currentTarget&&(C.key==="Enter"||C.key===" ")&&(C.preventDefault(),m())};return n.jsxs("div",{className:De("panel-row",d==="vertical"?"panel-row--vertical":"",f?"panel-row--label-fixed":"",a==="text"?"panel-row--text":"",m?"panel-row--clickable":""),onClick:m,onKeyDown:m?w:void 0,role:m?"button":void 0,tabIndex:m?0:void 0,children:[p!=null&&n.jsx("div",{className:"panel-row__icon",children:p}),n.jsxs("div",{className:"panel-row__left",children:[g?n.jsxs("label",{htmlFor:g,className:"panel-row__label body-3",children:[r,l&&n.jsx("span",{className:"required-mark",children:"*"})]}):n.jsxs("div",{className:"panel-row__label body-3",children:[r,l&&n.jsx("span",{className:"required-mark",children:"*"})]}),s&&n.jsx("div",{className:"panel-row__sub caption-1",children:s})]}),n.jsx("div",{className:"panel-row__right",children:h})]})}function Qc(e){const t=e.productName||e.brand,a=[e.brand,e.fitType].filter(r=>!!r&&r!==t);return[...new Set(a)].join(" \xB7 ")}function a3({devices:e,onRelease:t,emptyLabel:a}){const{t:r}=be.useTranslation();return n.jsx("div",{className:"panel-row panel-row--device",children:["\uC88C","\uC6B0"].map(s=>{const i=e[s],l=s==="\uC88C"?r("device.direction.left","\uC88C"):r("device.direction.right","\uC6B0");return n.jsxs("div",{className:"panel-row__device-column",children:[n.jsxs("div",{className:"panel-row__device-head",children:[n.jsx("span",{className:"panel-row__device-side body-2b",children:l}),i&&t&&n.jsx(pe,{htmlType:"button",size:32,type:"dot",icon:"x",ariaLabel:`${l} ${r("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C")}`,showTooltipInfo:r("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C"),onClick:()=>t(s)})]}),i?n.jsxs("div",{className:"panel-row__device-info",children:[n.jsxs("span",{className:"panel-row__device-kind",children:[i.device&&n.jsx(ft,{size:"small",variant:ac(i.device),fill:"soft",label:n3(i.device,r)}),Qc(i)&&n.jsx("span",{className:"panel-row__device-detail body-3",children:Qc(i)})]}),n.jsx("span",{className:"panel-row__device-name body-2b",children:i.productName||i.brand}),go(i.wornYear,i.wornMonth,i.wornDay)&&n.jsx("span",{className:"panel-row__device-date caption-1",children:r("customers.device.wornSince",{date:go(i.wornYear,i.wornMonth,i.wornDay)})})]}):n.jsx("span",{className:"panel-row__device-empty body-3",children:a??r("customers.device.notRegistered","\uBBF8\uB4F1\uB85D")})]},s)})})}function sr({title:e,icon:t,disc:a,actions:r,size:s="medium",minHeight:i,maxWidth:l,className:c,scrollable:d,scrollbarGutter:u="auto",compactRows:p=!1,useBorder:m=!0,useBg:h=!0,useRowBorder:g=!0,labelWidth:y,form:f=!1,loading:w,empty:C,children:b}){const _=De("panel",`panel--${s}`,f?"panel--form":"",i!==void 0?"panel--fill":"",m?"":"panel--no-border",h?"":"panel--no-bg",g?"":"panel--no-row-border",p?"panel--compact-rows":"",c),x={};return i!==void 0&&(x.minHeight=i),l!==void 0&&(x.maxWidth=typeof l=="number"?`${l}px`:l),y!==void 0&&(x["--panel-label-width"]=typeof y=="number"?`${y}px`:y),n.jsxs("div",{className:_,style:Object.keys(x).length?x:void 0,children:[(e!=null||a!=null)&&n.jsxs("div",{className:De("panel__header",a!=null?"panel__header--with-disc":""),children:[t&&n.jsx(Ue,{icon:t,label:typeof e=="string"?e:void 0,className:"panel__icon"}),n.jsxs("div",{className:"panel__title-group",children:[e!=null&&n.jsx("h2",{className:`panel__title ${a!=null?"body-3b":"h5b"}`,children:e}),a!=null&&n.jsx("p",{className:"panel__disc caption-1",children:a})]}),r&&n.jsx("div",{className:"panel__actions",children:r})]}),w?n.jsx(Sn,{variant:"loading"}):C!=null&&o.Children.toArray(b).length===0?n.jsx(Sn,{variant:"empty",children:C}):d?n.jsx("div",{className:De("panel__body--scroll",u==="stable"&&"panel__body--gutter-stable"),children:b}):b]})}function r3({cols:e=2,children:t}){return n.jsx("div",{className:"panel-grid",style:{"--panel-grid-cols":e},children:t})}function o3(e){return[{label:e("training.noise.level.none","\uC5C6\uC74C"),value:0},{label:e("training.noise.level.weak","\uC57D\uD568"),value:1},{label:e("training.noise.level.medium","\uBCF4\uD1B5"),value:2},{label:e("training.noise.level.strong","\uAC15\uD568"),value:3},{label:e("training.noise.level.veryStrong","\uB9E4\uC6B0 \uAC15\uD568"),value:4}]}function eu(e){return[{label:e("training.noise.type.default","\uAE30\uBCF8"),value:"defaultNoise",icon:"party-popper"},{label:e("training.noise.type.street","\uAE38\uAC70\uB9AC"),value:"street",icon:"car"},{label:e("training.noise.type.buzz","\uC640\uAE00\uC640\uAE00"),value:"buzz",icon:"message-square-more"},{label:e("training.noise.type.restaurant","\uC2DD\uB2F9"),value:"restaurant",icon:"coffee"}]}o3(At.t.bind(At)),eu(At.t.bind(At));const Ho="none",s3=.5,i3=1.5,l3=.25;function zo({title:e,valueLabel:t,value:a,min:r,max:s,step:i,tickStep:l,size:c,onChange:d}){return n.jsxs(Sn,{variant:"custom",label:e,useFullWidth:!0,children:[n.jsx(Jl,{value:a,onChange:d,min:r,max:s,step:i,size:c,showBgTick:!0,tickStep:l,ariaLabel:e,className:"noise-settings__slider-input"}),n.jsx("div",{className:"noise-settings__value button-1",children:t})]})}function tu({anchorRect:e,onClose:t}){const{t:a}=be.useTranslation(),r=Zt("(max-width: 767px)")?40:24,s=ar(),i=ja(s?.settings??Ma),l=s?.settings.type??"defaultNoise",c=s?.settings.enabled??!0,d=s?.playbackRate??1,u=s?.mainVolume??1,p=Math.round(u*100),m=o.useCallback(f=>{try{s?.setMainVolume(Math.max(0,Math.min(1,f/100)))}catch{}},[s]),h=o.useCallback(f=>{try{s?.setPlaybackRate(f)}catch{}},[s]),g=o.useCallback(f=>{const w=Math.min(Sa,Math.max(0,Math.round(f*10)/10));try{s?.setSettings({noiseRatio:w})}catch{}},[s]),y=o.useCallback(f=>{try{f===Ho?s?.setSettings({enabled:!1}):s?.setSettings({type:f,enabled:!0})}catch{}},[s]);return n.jsx(Qt,{anchorRect:e,offset:12,onClose:t,ariaLabel:a("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),isMobilePopup:!1,closeOnOutsideClick:!1,header:n.jsxs("div",{className:"noise-settings__header",children:[n.jsx("span",{children:a("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815")}),n.jsx(pe,{htmlType:"button",size:40,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,ariaLabel:a("common.close","\uB2EB\uAE30"),onClick:t})]}),children:n.jsxs(sr,{className:"noise-settings",useBorder:!1,labelWidth:72,children:[n.jsx(zo,{title:a("training.playVolumeTitle","\uC804\uCCB4 \uC18C\uB9AC"),valueLabel:`${p}%`,value:p,min:0,max:100,step:10,size:r,onChange:m}),n.jsx(zo,{title:a("training.playSpeedTitle","\uC7AC\uC0DD \uC18D\uB3C4"),valueLabel:`${d.toFixed(2)}x`,value:d,min:s3,max:i3,step:l3,size:r,onChange:h}),n.jsx(Sn,{variant:"custom",label:a("training.noiseTypeTitle","\uC18C\uC74C \uC885\uB958"),useFullWidth:!0,children:n.jsx(xn,{ariaLabel:a("training.noiseTypeTitle","\uC18C\uC74C \uC885\uB958"),size:40,shape:"rounded",options:[{key:Ho,label:a("training.noise.type.none","\uC5C6\uC74C")},...eu(a).map(f=>({key:f.value,label:f.label}))],value:c?l:Ho,onChange:y})}),n.jsx(zo,{title:a("training.noiseRatioTitle","\uC18C\uC74C \uBE44\uC728"),valueLabel:a("training.noiseRatioValue","{{ratio}}\uBC30",{ratio:i.toFixed(1)}),value:i,min:0,max:Sa,step:Fc,size:r,onChange:g})]})})}function nu({useNoiseSettingBtn:e=!1,onSettings:t,onNext:a,onResult:r,stepIndex:s=0,stepCount:i=0,pageIndex:l=0,pageCount:c=1,resultOpen:d=!1}){const{t:u}=be.useTranslation(),[p,m]=o.useState(!1),[h,g]=o.useState(null),[y,f]=o.useState(!1),w=o.useRef(null),C=o.useRef(null),b=ar(),_=c>0,x=_&&l<c-1,k=!_||l>=c-1,v=s===Math.max(0,i);o.useEffect(()=>{e||(m(!1),g(null))},[e]);const B=o.useCallback(()=>{m(!1),g(null)},[]),A=o.useCallback(()=>{if(p){m(!1),g(null);return}const F=w?.current?.getBoundingClientRect();F&&g(F),t?.(),m(!0)},[p,t]),N=o.useCallback(()=>{if(p){m(!1),g(null);return}const F=C?.current?.getBoundingClientRect();F&&g(F),t?.(),m(!0)},[p,t]),E=Zt("(max-width: 767px)"),T=o.useRef(null),[I,R]=o.useState(null),V=o.useCallback(()=>{f(F=>{const U=!F;return R(U?T.current?.getBoundingClientRect()??null:null),U})},[]),j=o.useCallback(()=>{f(!1),R(null)},[]);o.useEffect(()=>{d&&(f(!1),R(null))},[d]);const M=n.jsxs(n.Fragment,{children:[n.jsxs("div",{className:"pp-bottom__meter",children:[n.jsx("span",{className:"pp-bottom__meter-label caption-1",children:u("training.meter.sentence","\uC7AC\uC0DD")}),n.jsx(ho,{analyser:b?.mainAnalyser??null,orientation:"horizontal",length:112,label:"db",labelPos:"left",ariaLabel:u("training.meter.sentence","\uC7AC\uC0DD")})]}),n.jsxs("div",{className:"pp-bottom__meter",children:[n.jsx("span",{className:"pp-bottom__meter-label caption-1",children:u("training.meter.noise","\uC18C\uC74C")}),n.jsx(ho,{analyser:b?.noiseAnalyser??null,orientation:"horizontal",length:112,label:"db",labelPos:"left",ariaLabel:u("training.meter.noise","\uC18C\uC74C")})]})]});return Kc(e&&p,()=>typeof document<"u"?document.querySelector(".noise-settings__header")?.closest(".tooltip-content")??null:null,()=>[w.current,C.current].map(F=>F?.querySelector("button")??null).find(F=>!!F&&F.getClientRects().length>0)??w.current?.querySelector("button")??null),n.jsxs("div",{className:"pp-bottom",children:[n.jsxs("div",{className:"pp-bottom__left",children:[e?n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"pp-bottom__settings--desktop",children:n.jsx("div",{ref:w,className:"pp-bottom__tooltip-trigger","data-tooltip-ignore":!0,children:n.jsx(pe,{htmlType:"button",size:56,type:"bar",icon:"settings",onClick:A,className:p?"is-selected":void 0,"aria-expanded":p,"aria-haspopup":"dialog",ariaLabel:u("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),label:u("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),minWidth:140})})}),n.jsx("div",{className:"pp-bottom__settings--mobile",children:n.jsx("div",{ref:C,className:"pp-bottom__tooltip-trigger","data-tooltip-ignore":!0,children:n.jsx(pe,{htmlType:"button",size:56,type:"dot",shape:"pill",icon:"settings",onClick:N,className:p?"is-selected":void 0,"aria-expanded":p,"aria-haspopup":"dialog",ariaLabel:u("training.settings","\uC124\uC815")})})})]}):null,e&&n.jsx("div",{ref:T,className:"pp-bottom__meter-trigger","data-tooltip-ignore":!0,children:n.jsx(pe,{htmlType:"button",size:40,type:"dot",shape:"pill",icon:"audio-lines",onClick:V,selected:y,"aria-expanded":E?y:void 0,ariaLabel:u("training.meter.toggle","\uC624\uB514\uC624 \uBBF8\uD130 \uD45C\uC2DC")})}),e&&y&&!E&&n.jsx("div",{className:"pp-bottom__meters",children:M})]}),e&&y&&E&&I&&n.jsx(Qt,{anchorRect:I,onClose:j,ariaLabel:u("training.meter.toggle","\uC624\uB514\uC624 \uBBF8\uD130 \uD45C\uC2DC"),children:n.jsx("div",{className:"pp-bottom__meters pp-bottom__meters--floating",children:M})}),n.jsxs("div",{className:"pp-bottom__right",children:[k&&n.jsx(pe,{htmlType:"button",size:56,type:"bar",icon:"check",onClick:typeof r=="function"?r:a,ariaLabel:u("training.viewResult","\uACB0\uACFC\uBCF4\uAE30"),label:u("training.viewResult","\uACB0\uACFC\uBCF4\uAE30"),variant:"main",disabled:!v}),x&&n.jsx(pe,{htmlType:"button",size:56,type:"bar",rightIcon:"chevron-right",align:"right",onClick:a,ariaLabel:u("training.nextQuestion","\uB2E4\uC74C \uBB38\uC81C"),label:u("training.nextQuestion","\uB2E4\uC74C \uBB38\uC81C"),variant:"main",disabled:!v})]}),e&&p&&n.jsx(tu,{anchorRect:h,onClose:B})]})}function au({title:e,subtitle:t,desc:a,depth:r,icon:s,wrapperStyle:i,iconTooltip:l,pageIndex:c,pageCount:d,progressMax:u,progressIndex:p,onBack:m,onClose:h}){const{t:g}=be.useTranslation(),y=Zt("(max-width: 767px)"),f=Number.isInteger(p)?p:c||0,w=Number.isInteger(u)?u:d||0,C=m||h,b=Array.isArray(r)?y?r[r.length-1]:r.join(" / "):r,_=typeof e=="string"?e.trim():e,x=typeof t=="string"?t.trim():t,k=!!(_||x),v=k?_||x:g("common.emptyTrainingName","\uD6C8\uB828 \uC774\uB984\uC774 \uBE44\uC5B4 \uC788\uC2B5\uB2C8\uB2E4."),B=b||(_?t:void 0),A=y&&typeof B=="string"&&(B.includes(" \xB7 ")||B.includes(" / "))?B.split(/\s[·/]\s/).pop():B,N=o.useMemo(()=>{const E=i&&typeof i=="object"?{...i}:{};return!("width"in E)&&!("height"in E)&&(E.width="40px",E.height="40px"),E},[i]);return n.jsxs("header",{className:"pp-title training-popup-title",children:[n.jsxs("div",{className:"pp-title__left",children:[C?n.jsx(pe,{htmlType:"button",size:48,type:"dot",icon:"chevron-left",ariaLabel:g("common.back","\uB4A4\uB85C"),onClick:C,useBorder:!1,iconSize:"large",iconColor:"--color-black",variant:"transparent-gray"}):null,n.jsx("div",{children:s?n.jsx(jl,{icon:s,label:e,tooltip:l,wrapperStyle:N}):null}),n.jsxs("div",{className:"pp-title__text",children:[A?n.jsx("span",{className:"pp-title__depth caption-1",children:A}):null,n.jsx("span",{className:`pp-title__title h2${k?"":" pp-title__title--empty"}`,children:v}),a?n.jsx("span",{className:"pp-title__description caption-1",children:a}):null]})]}),n.jsx(nc,{max:Math.max(0,w??0),index:Math.max(0,f??0)})]})}function c3(){typeof window<"u"&&window.dispatchEvent(new CustomEvent("speechear.popup.close"))}function u3(e){return!e&&e!==0?[]:Array.isArray(e)?e.flatMap(t=>typeof t=="string"?t.split("|").map(a=>a.trim()).filter(Boolean):t||t===0?[String(t)]:[]):typeof e=="string"?e.split("|").map(t=>t.trim()).filter(Boolean):[String(e)]}const ru=(e,t)=>{if(!t)return t;const a=typeof At?.t=="function"?At.t(e,{defaultValue:t}):void 0;return typeof a=="string"&&a?a:t};function ou(e,t,a){const r=e,s=r?.title||r?.name||(Array.isArray(t)?t[t.length-1]:void 0)||a||"\uD6C8\uB828",i=di().find(c=>c.key===(r?.category_0||r?.category_main_code)),l=i?.subs?.find(c=>c.key===(r?.category_1||r?.category_sub_code));return{title:s,label:r?.title||s,depth:t,icon:i?.icon,wrapperStyle:i?.color?{"--t-item-fg":i.color}:void 0,iconTooltip:[i?ru(`topic.${i.key}`,i.label):void 0,l?ru(`topic.sub.${l.key}`,l.label):void 0].filter(Boolean).join(" / ")||void 0}}function Vo(e){return e&&typeof e=="object"&&typeof e.__ts=="number"?e.__ts:0}function d3(e){const t=e;return Array.isArray(t?.items)?t.items:Array.isArray(e)?e:e?[e]:[]}function p3({idPrefix:e,trainingData:t,depth:a,fallbackTitle:r="\uD6C8\uB828",pages:s=[],emptyMessage:i,buildResults:l,metaPatch:c}){const d=ou(t,a,r),u=typeof c=="function"?c(d)||{}:c||{},p=t?.id||t?.title||s.length;return{id:`${e}:${p}`,meta:{...d,...u},pages:s,emptyMessage:i,buildResults:l}}function m3(e){if(typeof e=="string")return e;if(e&&typeof e=="object"){const t=e;return t.context||t.sentence||t.question||""||""}return""}function h3(e){if(e&&typeof e=="object"){const t=e;if(Array.isArray(t.selectedValues))return t.selectedValues;if(t.selectedValue!==void 0)return t.selectedValue;if(t.selectedIndex!==void 0)return t.selectedIndex;if(t.value!==void 0)return t.value}return e}function f3(e,t=[]){if(Array.isArray(e))return e.join(", ");if(typeof e=="number"&&Array.isArray(t))return String(t[e]??"");if(typeof e=="string")return e}function su(e,t){if(!(!e||typeof e!="object"))return e[`step-${t}`]}function C3(e,t,a,r){return su(e,t*a+r)}function g3({payload:e,selected:t,choices:a=[],correctAnswers:r=[]}){if(e&&typeof e=="object"){const s=e;if(Array.isArray(s.selectedValues))return r.every(i=>s.selectedValues.includes(i))&&s.selectedValues.every(i=>r.includes(i));if(typeof s.correct=="boolean")return s.correct}if(r.length){if(typeof t=="number"&&Array.isArray(a)&&a.length)return r.some(s=>String(s)===String(a[t]));if(typeof t<"u")return r.some(s=>String(s)===String(t))}}function b3(e){return e?Array.isArray(e.items)?e.items.map(t=>{const a=t;return typeof t=="string"?{sentence:t}:{sentence:a.context||a.sentence||"",contextCode:a.contextCode||a.context_code}}):Array.isArray(e.sentences)?e.sentences.map(t=>{const a=t;return typeof t=="string"?{sentence:t}:{sentence:a.sentence||a.context||"",contextCode:a.contextCode}}):Array.isArray(e.contexts)?e.contexts:e.contextCode?[{contextCode:e.contextCode}]:[]:[]}const iu=o.createContext(null);function y3(){const e=o.useContext(iu);if(!e)throw new Error("useTrainingPagePopupContext must be used inside TrainingPagePopup");return e}function v3({index:e,stepIndex:t,isLast:a=!1,title:r,choices:s=[],onDone:i,onChange:l}){const{t:c}=be.useTranslation(),d=typeof e=="number"?e:-1,u=typeof t!="number"?"disabled":d<t?"done":d===t?"active":"disabled",[p,m]=o.useState(()=>s.map(()=>null)),h=JSON.stringify(s),g=s.length;o.useEffect(()=>{m(Array.from({length:g},()=>null))},[h]);const y=o.useRef(void 0);o.useEffect(()=>{const b=y.current;typeof b=="number"&&typeof t=="number"&&typeof e=="number"&&b>=e&&t<e&&m(Array.from({length:g},()=>null)),y.current=t},[t,e,g]);const f=o.useMemo(()=>p.filter(b=>b!==null).length+1,[p]),w=o.useCallback(b=>{if(u!=="active")return;const _=p;let x;if(_[b]!=null){const v=_[b];x=_.map(B=>B!==null&&B>=v?null:B)}else x=[..._],x[b]=f;m(x);const k={selectedOrder:x,words:s,__ts:Date.now()};try{typeof l=="function"&&l(k)}catch{}if(_[b]==null&&x.length>0&&x.every(v=>v!==null))try{typeof i=="function"&&i(k)}catch{}},[u,p,f,l,i,s]),C=r??c("training.selectInOrder","\uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uCE74\uB4DC\uB97C \uC120\uD0DD\uD558\uC138\uC694.");return n.jsx(Vn,{index:e,stepIndex:t,isLast:a,title:C,onDone:i,children:n.jsx("div",{className:"training-step__cards",children:s.map((b,_)=>n.jsx(vo,{item:{word:b},disabled:u==="disabled",selectable:!0,selected:p[_]!==null,orderRank:p[_],onSelect:()=>w(_),flipDelay:_*120,hideLabel:!1,hideAudio:!0},`${b}-${_}`))})})}function ir(e){return null}ir.__isTrainingPage=!0;function ia(e,t){const a=y3();return{ctx:a,index:e,stepIndex:a.currentStepIndex,isLast:typeof e=="number"&&typeof t=="number"?e===t-1:!1,onDone:r=>a.handleStepDone(r,e),onChange:r=>a.handleStepChange(r,e)}}function lu({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:s,isLast:i,onDone:l}=ia(e,t);return n.jsx(Fo,{...a,index:r,stepIndex:s,isLast:i,onDone:l})}function cu({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:s,isLast:i,onDone:l,onChange:c}=ia(e,t);return n.jsx(Po,{...a,index:r,stepIndex:s,isLast:i,onDone:l,onChange:c})}function uu({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:s,isLast:i,onDone:l,onChange:c}=ia(e,t);return n.jsx(Io,{...a,index:r,stepIndex:s,isLast:i,onDone:l,onChange:c})}function du({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:s,isLast:i,onDone:l,onChange:c}=ia(e,t);return n.jsx(Oo,{...a,index:r,stepIndex:s,isLast:i,onDone:l,onChange:c})}function pu({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:s,isLast:i,onDone:l,onChange:c}=ia(e,t);return n.jsx(Xc,{...a,index:r,stepIndex:s,isLast:i,onDone:l,onChange:c})}function x3({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:s,isLast:i,onDone:l,onChange:c}=ia(e,t);return n.jsx(v3,{...a,index:r,stepIndex:s,isLast:i,onDone:l,onChange:c})}function Wo(...e){for(const t of e)if(typeof t=="string"){const a=t.trim();if(a.length)return a}else{if(typeof t=="number"||typeof t=="boolean")return String(t);if(Array.isArray(t)&&t.length)return t.join(", ");if(t&&typeof t=="object"){const a=t,r=[a.text,a.label,a.value];for(const s of r){if(typeof s=="string"&&s.trim().length)return s.trim();if(typeof s=="number"||typeof s=="boolean")return String(s)}}}return null}function _3(e){return Wo(e?.question,e?.q,e?.sentence,e?.text,e?.prompt,e?.wording)}function mu(e){if(!e)return;if(typeof e.decision=="boolean")return e.decision;if(typeof e.correct=="boolean")return e.correct;if(typeof e.heard=="boolean")return e.heard;if(typeof e.judgement=="boolean")return e.judgement;const t=Wo(e?.status,e?.result,e?.judge,e?.note);if(t){const a=t.toLowerCase();if(["ok","true","\uB9DE\uC74C","\uC815\uB2F5"].some(r=>a.includes(r)))return!0;if(["ng","false","\uD2C0\uB9BC","\uC624\uB2F5"].some(r=>a.includes(r)))return!1}}function hu(e){const{score:t,contextsLength:a,results:r=[],subtitle:s,onReplay:i,onClose:l,inline:c=!1,pending:d=!1}=e||{},{t:u}=be.useTranslation(),p=o.useId(),m=o.useCallback(()=>!d,[d]);o.useEffect(()=>{const b=a??0;if(t!=null&&b>0&&t/b>.5){const _=window.setTimeout(()=>{window.dispatchEvent(new CustomEvent("party:trigger",{detail:{count:140,strength:1.6,duration:2200}}))},0);return()=>window.clearTimeout(_)}},[t,a]);const h=o.useCallback(b=>{const _=mu(b),x=Wo(b?.wording,b?.label);return _===!0?{variant:"main",label:x??u("training.result.heardWell","\uC798 \uB4E4\uC5C8\uC5B4\uC694")}:_===!1?{variant:"danger",label:x??u("training.result.notHeard","\uBABB \uB4E4\uC5C8\uC5B4\uC694")}:{variant:"disabled",label:x??u("training.result.notJudged","\uBBF8\uD310\uC815")}},[u]),g=a??0,y=t??0,f=o.useMemo(()=>Array.isArray(r)?r:[],[r]),w=o.useMemo(()=>f.map(b=>{const _=b??{},x=_3(_)||u("training.result.noContent","(\uB0B4\uC6A9\uC5C6\uC74C)"),{variant:k,label:v}=h(_),B=Array.isArray(_.corrects)?_.corrects:[],A=B.length?B.join(", "):_.answer!=null&&_.answer!==""?String(_.answer):null,N=typeof _.selectedText=="string"?_.selectedText:null,E=mu(_)===!0;return{problem:x,variant:k,label:v,answer:A,selectedText:N,isCorrect:E}}),[f,h,u]),C=o.useMemo(()=>w.some(b=>b.answer!==null||b.selectedText!==null),[w]);return n.jsx(Dn,{onClose:l,closeOnBackdrop:!1,inline:c,ariaLabel:u("training.result.title","\uD6C8\uB828\uC744 \uBAA8\uB450 \uB9C8\uCCE4\uC2B5\uB2C8\uB2E4."),className:"popup--training-result",beforeClose:m,footerClassName:"trp-result__foot",footer:({animateThen:b,closeWithAnimation:_})=>n.jsxs(n.Fragment,{children:[d&&n.jsx("p",{id:p,className:"trp-actions__reason caption-1",role:"status",children:u("training.result.pendingDone","\uACB0\uACFC\uB97C \uACC4\uC0B0\uD558\uB294 \uC911\uC774\uB77C \uC544\uC9C1 \uC644\uB8CC\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.")}),n.jsxs("div",{className:"trp-actions",children:[n.jsx(pe,{htmlType:"button",size:56,type:"bar",label:u("training.result.replay","\uB2E4\uC2DC\uD558\uAE30"),onClick:()=>b(i)}),n.jsx(pe,{htmlType:"button",size:56,type:"bar",label:u("training.result.done","\uC644\uB8CC"),variant:"main",onClick:_,disabled:d,onDisabledClick:d?()=>{}:void 0,"aria-describedby":d?p:void 0})]})]}),children:()=>n.jsxs("div",{className:"trp-result is-on",children:[n.jsxs("header",{className:"trp-result__head",children:[n.jsx("p",{className:"trp-result__eyebrow caption-1",children:u("training.result.eyebrow","\uD6C8\uB828 \uC644\uB8CC")}),n.jsx("h1",{className:"trp-result__title h2",children:u("training.result.title","\uD6C8\uB828\uC744 \uBAA8\uB450 \uB9C8\uCCE4\uC2B5\uB2C8\uB2E4.")}),s&&n.jsx("p",{className:"trp-result__subtitle body-3",children:s}),n.jsx("div",{className:"trp-score",children:n.jsxs("div",{className:"trp-score__figure","aria-label":u("training.result.scoreAria",{correct:y,total:g}),children:[n.jsx("span",{className:"trp-score__big",children:y}),n.jsx("span",{className:"trp-score__sep",children:"/"}),n.jsx("span",{className:"trp-score__total",children:g})]})})]}),w.length>0&&n.jsx("section",{className:"trp-result__body",children:n.jsxs("div",{className:`result-table${C?" result-table--answer":""}`,role:"table","aria-label":u("training.result.tableAriaLabel","\uBB38\uD56D\uBCC4 \uD310\uC815"),children:[n.jsxs("div",{className:"result-table__head caption-1",role:"row",children:[n.jsx("span",{role:"columnheader",children:u("common.col.problem","\uBB38\uC81C")}),C&&n.jsx("span",{role:"columnheader",children:u("training.result.colAnswerSelected","\uC815\uB2F5 \xB7 \uC120\uD0DD")}),n.jsx("span",{className:"col-right",role:"columnheader",children:u("training.result.colJudge","\uD310\uC815")})]}),w.map((b,_)=>n.jsxs("div",{className:"result-table__row",role:"row",children:[n.jsxs("div",{className:"trp-row__problem",children:[n.jsx("span",{className:"trp-row__no caption-1",children:String(_+1).padStart(2,"0")}),n.jsx("div",{className:"trp-row__q body-2",children:b.problem})]}),C&&n.jsxs("div",{className:"trp-row__answers",children:[b.answer!==null&&n.jsxs("div",{className:"trp-row__answer-line",children:[n.jsx("span",{className:"trp-row__answer-label answer-correct caption-1",children:u("training.result.colAnswer","\uC815\uB2F5")}),n.jsx("span",{className:"trp-row__answer-value body-2",children:b.answer})]}),n.jsxs("div",{className:"trp-row__answer-line",children:[n.jsx("span",{className:`trp-row__answer-label answer-selected caption-1 ${b.isCorrect?"is-correct":"is-wrong"}`,children:u("training.result.colSelected","\uC120\uD0DD")}),n.jsx("span",{className:`trp-row__answer-value body-2 ${b.isCorrect?"is-correct":"is-wrong"}`,children:b.selectedText??"\u2014"})]})]}),n.jsx("div",{className:"trp-row__judge",children:n.jsx(ft,{variant:b.variant,label:b.label,fill:"soft",minWidth:80})})]},_))]})})]})})}function w3(e){o.useEffect(()=>{if(!e)return;const t=()=>typeof document>"u"||document.visibilityState!=="hidden";let a=null,r=null,s=0,i=0;const l=()=>{const p=Date.now();a==null&&(a=p),r==null&&(r=p)},c=()=>{r!=null&&(s+=Date.now()-r,r=null)};t()&&l();const d=()=>{if(c(),a==null||s-i<1e3||i===0&&s<5e3)return;const p=a+i;i=s,B2({trainingType:e,startedAt:new Date(p).toISOString(),endedAt:new Date(a+s).toISOString()})},u=()=>{t()?l():d()};return typeof document<"u"&&document.addEventListener("visibilitychange",u),typeof window<"u"&&window.addEventListener("pagehide",d),()=>{typeof document<"u"&&document.removeEventListener("visibilitychange",u),typeof window<"u"&&window.removeEventListener("pagehide",d),d()}},[e])}function qo(e,t){return e&&e.id||`page-${t??0}`}function Uo(e,t){return e&&e.key||`step-${t??0}`}function lr(){return{pageIndex:0,stepIndex:0,answersByPage:{}}}function k3(e,t){return typeof e?.props=="function"?e.props(t)||{}:e?.props||{}}const A3=300,B3=()=>{try{return typeof window<"u"&&!!window.matchMedia?.("(prefers-reduced-motion: reduce)").matches}catch{return!1}},jn=Object.freeze({}),fu=new Set(["LISTEN_IN_NOISE","SHORT_STORY","LONG_STORY","ORDERING_SENTENCE"]);function Cu(e){const t=e,a=t?.results||t?.answers||[],r=Array.isArray(a)&&a.length>0?a.length:null,s=Array.isArray(a)?a.filter(i=>i?.correct===!0||i?.isCorrect===!0||i?.score===1||i?.heard===!0||i?.judgement===!0).length:null;return{results:a,correct:r!=null?s:null,total:r}}const N3=e=>n.jsx(hu,{score:e.score,contextsLength:e.contextsLength,results:e.results,onReplay:e.onReplay,onClose:e.onClose,pending:e.pending});function E3(e){const{scenario:t,title:a,subTitle:r,depth:s,icon:i,wrapperStyle:l,iconTooltip:c,pageIndex:d,pageCount:u,stepIndex:p,stepCount:m,onBack:h,onComplete:g,onNext:y,onSettings:f,useNoiseSetting:w=!0,children:C,ariaLabel:b,label:_,buildResults:x,onResult:k,typeKey:v,entryPoint:B,dailyTotal:A,itemRef:N,renderResultPopup:E,noiseOverride:T}=e;w3(v&&!fu.has(v)?v:"");const I=o.useRef(0);o.useEffect(()=>{I.current=Date.now()},[]);const{t:R}=be.useTranslation(),V=k,j=!!t,M=t?.id||null,F=t?.meta||{},U=Array.isArray(t?.pages)?t.pages:[],Q=Array.isArray(C)||o.isValidElement(C)&&typeof C!="function"?o.Children.toArray(C).filter(o.isValidElement):[],z=Q.length>0,G=le=>le===ir||le?.__isTrainingPage===!0,W=z&&Q.some(le=>G(le.type)),L=W?Q.filter(le=>G(le.type)).map((le,xe)=>{const K=le.props||{};return{id:`children-page-${xe}`,steps:o.Children.toArray(K.children).filter(o.isValidElement),pageTop:K.pageTop||K.top||null,pageBottom:K.pageBottom||K.bottom||null}}):[{id:"children-page-0",steps:Q}],D=z&&!j&&typeof C!="function",O=D?Math.max(1,L.length):0;o.useEffect(()=>{if(!(typeof document>"u"||!document.body)&&!document.body.classList.contains("ihabdevteam-core-scope"))return document.body.classList.add("ihabdevteam-core-scope"),()=>{document.body.classList.remove("ihabdevteam-core-scope")}},[]),o.useEffect(()=>{if(typeof document>"u"||!document.body)return;const le=document.body;return le.dataset.ihabTrainingPopupCount=String(Number(le.dataset.ihabTrainingPopupCount||"0")+1),le.classList.add("ihab-training-popup-open"),()=>{const xe=Number(le.dataset.ihabTrainingPopupCount||"1")-1;xe>0?le.dataset.ihabTrainingPopupCount=String(xe):(delete le.dataset.ihabTrainingPopupCount,le.classList.remove("ihab-training-popup-open"))}},[]),o.useEffect(()=>{if(!(typeof document>"u"||!document.body))return k4()},[]);const[P,H]=o.useState({...Ma,enabled:!1}),$=o.useRef(P);o.useEffect(()=>{$.current=P},[P]);const Y=o.useRef(T),ee=o.useRef(!1),Z=o.useRef(null);o.useEffect(()=>{let le=!1;const xe=K=>{if(le)return;ee.current=!0;const ce=K?Ta({...Ma,enabled:!1},K):{...Ma},he=Z.current;Z.current=null;const J=he?Ta(ce,he):ce;$.current=J,H(J),he&&!Y.current&&oi(J),Ha(J);const ne=Y.current;if(ne){const Ne=typeof ne=="function"?ne(J):ne,qe=Ta(J,Ne);$.current=qe,H(qe),Ha(qe)}};return S2().then(xe),()=>{le=!0}},[]);const[ae,_e]=o.useState(null),[re,ue]=o.useState(null),q=o.useCallback((le,xe)=>{le==="main"?_e(xe):ue(xe)},[]),oe=o.useRef(null),de=o.useRef(null),ve=o.useCallback(()=>{de.current!==null&&(clearTimeout(de.current),de.current=null);const le=oe.current;oe.current=null,le&&oi(le)},[]);o.useEffect(()=>{if(typeof window>"u")return;const le=()=>{document.visibilityState==="hidden"&&ve()};return window.addEventListener("pagehide",ve),document.addEventListener("visibilitychange",le),()=>{window.removeEventListener("pagehide",ve),document.removeEventListener("visibilitychange",le),ve()}},[ve]);const ge=o.useCallback(le=>{const xe=Ta($.current,le);if($.current=xe,H(xe),!ee.current){Z.current={...Z.current??{},...le},Ha(xe);return}Y.current||(oe.current=xe,de.current!==null&&clearTimeout(de.current),de.current=setTimeout(ve,A3)),Ha(xe)},[ve]),Se=P.mainSpeed,Ce=P.mainVolume,Ee=o.useCallback(le=>ge({mainSpeed:le}),[ge]),Be=o.useCallback(le=>ge({mainVolume:le}),[ge]),Re=o.useMemo(()=>({settings:P,setSettings:ge,registerAnalyser:q,mainAnalyser:ae,noiseAnalyser:re,playbackRate:Se,setPlaybackRate:Ee,mainVolume:Ce,setMainVolume:Be}),[P,ge,q,ae,re,Se,Ee,Ce,Be]),Le=o.useRef(null),[me,ke]=o.useState(0),Me=o.useRef([]),[Te,Ae]=o.useState("center"),[ie,ye]=o.useState(!1),se=o.useRef(!1),Ie=o.useRef(null),ze=o.useCallback(le=>{se.current||(se.current=!0,ye(!0),Ie.current=setTimeout(()=>{try{le()}catch{se.current=!1,ye(!1)}},B3()?0:e3))},[]);o.useEffect(()=>()=>{Ie.current&&clearTimeout(Ie.current)},[]);const Ge=o.useRef(h);o.useEffect(()=>{Ge.current=h}),o.useEffect(()=>{const le=Le.current,xe=document.activeElement;if(Fr(le,xe),le){const K=Array.from(le.querySelectorAll(Cn)).filter(ce=>!ce.closest('[aria-hidden="true"]'))[0];if(K)try{K.focus()}catch{}}return()=>{const K=document.activeElement;if(!K||K===document.body||le&&le.contains(K))try{Or(xe)?.focus?.()}catch{}}},[]),o.useEffect(()=>In(()=>ze(()=>{const le=Ge.current;typeof le=="function"&&le()})),[ze]),Pr(Le,!0);const[Ze,Ye]=o.useState(!1),Ke=o.useRef(!1),[Oe,Pe]=o.useState(null),lt=o.useRef(0),wt=()=>{lt.current+=1,Pe(null)},[Dt,Nt]=o.useState(""),[nt,Je]=o.useState(()=>lr()),at=o.useRef(typeof d=="number"?d:null);o.useEffect(()=>{!j&&!D||(Je(lr()),wt())},[j,M,D]),o.useEffect(()=>{D&&Je(le=>{const xe=Math.max(0,Math.min(le.pageIndex,Math.max(0,O-1)));return xe!==le.pageIndex?{...le,pageIndex:xe,stepIndex:0}:le})},[D,O]);const Qe=D?Math.max(0,Math.min(nt.pageIndex,O-1)):0,We=D?L[Qe]:null,mt=D&&We&&Array.isArray(We.steps)?We.steps:[],He=j?nt.pageIndex:D?Qe:typeof d=="number"?d:0,st=j?U[Math.max(0,Math.min(nt.pageIndex,Math.max(0,U.length-1)))]:null,Ct=j&&st&&Array.isArray(st.steps)?st.steps:[],ut=j?Ct.length:D?mt.length:typeof m=="number"?m:0,vt=j||D?Math.max(0,Math.min(nt.stepIndex,Math.max(0,ut))):typeof p=="number"?p:0,ot=j?U.length:D?O:typeof u=="number"?u:0;o.useLayoutEffect(()=>{const le=at.current;if(typeof He=="number"&&le!==null&&He!==le&&He>le)try{Nt(R("training.problemNotice",{n:He+1}))}catch{}at.current=typeof He=="number"?He:at.current},[He,d,R]),o.useLayoutEffect(()=>{const le=Le.current;if(!le)return;const xe=()=>le.querySelector(".page-popup__scroll");let K=null,ce=null,he=null;const J=dt=>{const kt=xe();if(!kt)return;const qt=kt.scrollHeight<=kt.clientHeight;if(Ae(qt?"center":"top"),dt&&!Ke.current){Ke.current=!0;try{Ye(!0)}catch{}try{qe.disconnect()}catch{}}},ne=()=>{K!==null&&cancelAnimationFrame(K),K=requestAnimationFrame(()=>{ce!==null&&clearTimeout(ce),ce=setTimeout(()=>J(!0),60)})},Ne=()=>{he!==null&&cancelAnimationFrame(he),he=requestAnimationFrame(()=>J(!1))};ne(),window.addEventListener("resize",Ne);const qe=new MutationObserver(ne);qe.observe(le,{childList:!0,subtree:!0,attributes:!0});const tt=setTimeout(()=>{Ke.current||J(!0)},400);return()=>{window.removeEventListener("resize",Ne),K!==null&&cancelAnimationFrame(K),ce!==null&&clearTimeout(ce),he!==null&&cancelAnimationFrame(he),clearTimeout(tt);try{qe.disconnect()}catch{}}},[Le]);const Fe=o.useCallback(le=>{Le.current&&(Le.current._childOnNext=le)},[]),rt=o.useCallback(le=>{Le.current&&(Le.current._childOnResult=le)},[]),bt=o.useCallback((le,xe,K)=>{Je(ce=>{const he=ce.answersByPage[le]||{},J=he[xe],ne=Vo(K),Ne=Vo(J);return J&&Ne>ne?ce:{...ce,answersByPage:{...ce.answersByPage,[le]:{...he,[xe]:K}}}})},[Je]),zt=o.useCallback((le,xe,K)=>{const ce=qo(st,He),he=Uo(le,xe);bt(ce,he,K)},[st,He,bt]),et=o.useCallback((le,xe,K)=>{const ce=qo(st,He),he=Uo(le,xe);bt(ce,he,K),!K?.allowChange&&le?.autoAdvance!==!1&&Je(J=>({...J,stepIndex:Math.max(J.stepIndex,xe+1)}))},[st,He,bt,Je]),Yt=o.useCallback((le,xe)=>{const K=We?.id||`children-page-${He??0}`,ce=typeof xe=="number"?xe:vt??0,he=`step-${ce}`;bt(K,he,le),le?.allowChange||Je(J=>({...J,stepIndex:Math.max(J.stepIndex,ce+1)}))},[We,He,vt,bt,Je]),kn=o.useCallback((le,xe)=>{const K=We?.id||`children-page-${He??0}`,ce=`step-${typeof xe=="number"?xe:vt??0}`;bt(K,ce,le)},[We,He,vt,bt]),Lt=D?{currentPageIndex:He??0,currentStepIndex:vt??0,totalStepsInPage:mt.length,handleStepDone:Yt,handleStepChange:kn}:null,tn=async()=>{const le=typeof t?.buildResults=="function"?await Promise.resolve(t.buildResults({scenario:t,pages:U,flowState:nt,answersByPage:nt.answersByPage})):null;return typeof V=="function"&&await Promise.resolve(V(le))||le},nn=async()=>{const le=We?.id||`children-page-${nt.pageIndex}`,xe=nt.answersByPage[le]||{},K=W?(()=>{const J={};let ne=0;return L.forEach(Ne=>{const qe=nt.answersByPage[Ne.id]||{},tt=Array.isArray(Ne.steps)?Ne.steps.length:0;for(let dt=0;dt<tt;dt+=1){const kt=qe[`step-${dt}`];typeof kt<"u"&&(J[`step-${ne+dt}`]=kt)}ne+=tt}),J})():xe;if(typeof x=="function"){const J=await Promise.resolve(x(K,{pageAnswers:xe,answersByPage:nt.answersByPage,pages:L,currentPageId:le}));return typeof V=="function"&&await Promise.resolve(V(J))||J}const ce=Object.entries(xe).map(([J,ne],Ne)=>({index:Ne,key:J,payload:ne})),he={results:ce,answers:ce,score:0};return typeof V=="function"&&await Promise.resolve(V(he))||he},an=()=>{const le=++lt.current,xe=()=>le!==lt.current;try{if(typeof document<"u"&&document.body){try{document.dispatchEvent(new CustomEvent("speechear-close-tooltips"))}catch{}document.dispatchEvent(new PointerEvent("pointerdown",{bubbles:!0,cancelable:!0})),document.dispatchEvent(new MouseEvent("click",{bubbles:!0,cancelable:!0}))}}catch{}if(j){const he=tn();Pe(jn);const J=he;Promise.resolve(J).then(ne=>{xe()||Pe(ne||{isEmpty:!0})}).catch(ne=>{!xe()&&Pe({isEmpty:!0})});return}if(D){const he=nn();Pe(jn);const J=he;Promise.resolve(J).then(ne=>{xe()||Pe(ne||{isEmpty:!0})}).catch(ne=>{!xe()&&Pe({isEmpty:!0})});return}const K=Le.current&&Le.current._childOnResult,ce=he=>{try{return he?he():void 0}catch{return}};if(typeof K=="function"){const he=ce(K);try{typeof document>"u"?require("url").pathToFileURL(__filename).href:hn&&hn.tagName.toUpperCase()==="SCRIPT"&&hn.src||new URL("components.cjs.js",document.baseURI).href}catch{}he&&typeof he.then!="function"?Pe(he):Pe(he&&typeof he.then=="function"?jn:{});const J=()=>{xe()||Pe(ne=>ne===jn?{}:ne)};Promise.resolve(he).then(ne=>{ne&&!xe()?Pe(ne):J()}).catch(ne=>{J()});return}if(typeof V=="function"){const he=ce(V);try{typeof document>"u"?require("url").pathToFileURL(__filename).href:hn&&hn.tagName.toUpperCase()==="SCRIPT"&&hn.src||new URL("components.cjs.js",document.baseURI).href}catch{}he&&typeof he.then!="function"?Pe(he):Pe(he&&typeof he.then=="function"?jn:{});const J=()=>{xe()||Pe(ne=>ne===jn?{}:ne)};Promise.resolve(he).then(ne=>{try{typeof document>"u"?require("url").pathToFileURL(__filename).href:hn&&hn.tagName.toUpperCase()==="SCRIPT"&&hn.src||new URL("components.cjs.js",document.baseURI).href}catch{}ne&&!xe()?Pe(ne):J()}).catch(ne=>{console.error("viewResults external handler failed",ne),J()});return}},Mn=()=>{if(j){if(typeof He=="number"&&typeof ot=="number"&&He<ot-1){Je(xe=>({...xe,pageIndex:xe.pageIndex+1,stepIndex:0}));return}return an()}if(D){const xe=mt.length;if(typeof vt=="number"&&vt<xe-1){Je(K=>({...K,stepIndex:K.stepIndex+1}));return}if(typeof He=="number"&&typeof ot=="number"&&He<ot-1){Je(K=>({...K,pageIndex:K.pageIndex+1,stepIndex:0}));return}return an()}if(typeof y=="function"){try{y()}catch{}return}const le=Le.current&&Le.current._childOnNext;if(typeof le=="function"){try{le()}catch{}return}},rn=j?F.title||F.label||b||R("common.popup","\uD31D\uC5C5"):a||_||(Array.isArray(s)?s[s.length-1]:void 0)||b||R("common.popup","\uD31D\uC5C5"),Ln=b||rn,$t=j?F.title??F.label??rn:a??_??rn,gt=(le,xe)=>{const K=qo(st,He),ce=Uo(le,xe),he=nt.answersByPage[K]?.[ce],J=k3(le,{page:st,pageIndex:He,step:le,stepIndex:xe,storedPayload:he,answersByPage:nt.answersByPage,flowState:nt}),ne={key:ce,index:xe,stepIndex:vt,isLast:xe===Ct.length-1};switch(le?.type){case"listen":return n.jsx(Fo,{...ne,...J,onDone:Ne=>et(le,xe,Ne)});case"confirm":return n.jsx(Po,{...ne,...J,onDone:Ne=>et(le,xe,Ne),onChange:Ne=>zt(le,xe,Ne)});case"confirmWithText":return n.jsx(Io,{...ne,...J,onDone:Ne=>et(le,xe,Ne),onChange:Ne=>zt(le,xe,Ne)});case"orderList":return n.jsx(Oo,{...ne,...J,onDone:Ne=>et(le,xe,Ne),onChange:Ne=>zt(le,xe,Ne)});default:return null}},on=o.useRef(void 0);o.useEffect(()=>{const le=on.current;if(on.current=He,le===void 0||le===He||!Ja())return;const xe=Le.current;if(!xe)return;const K=document.activeElement;if(!(!K||K===document.body||!xe.contains(K)||K.disabled===!0))return;const ce=xe.querySelector(`.training-steps ${Cn.split(", ").join(", .training-steps ")}`)??Array.from(xe.querySelectorAll(Cn)).find(he=>!he.closest('[aria-hidden="true"]'));try{ce?.focus()}catch{}},[He]);const Xt=j?U.length>0?n.jsx("div",{className:"training-steps",children:Ct.map((le,xe)=>gt(le,xe))},`replay-${me}`):n.jsx("div",{className:`page-popup__content page-popup__content--center${e.contentFull?" page-popup__content--full":""}`,children:n.jsx("div",{className:"pp-empty",children:t?.emptyMessage||R("training.noQuestions","\uBB38\uC81C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")})}):null,St=D?n.jsxs(iu.Provider,{value:Lt,children:[We?.pageTop?n.jsx("div",{className:"training-page-top",children:We.pageTop}):null,n.jsx("div",{className:"training-steps",children:mt.map((le,xe)=>{const K=le;return o.cloneElement(K,{...K.props,_stepIndex:xe,_totalSteps:mt.length,_stepKey:`step-${xe}`,_pageIndex:He})})},`replay-${me}`),We?.pageBottom?n.jsx("div",{className:"training-page-bottom",children:We.pageBottom}):null]}):null,sn=o.useCallback(()=>{let le;if(v){const xe=Oe,{results:K,correct:ce,total:he}=Cu(Oe);N2({items:D2(K),category:fu.has(v)?"sentence":"word",trainingType:v,entryPoint:B??"sentence",itemRef:N??null,correct:ce,total:he,score:typeof xe?.score=="number"?xe.score:null,durationSeconds:Math.max(0,Math.round((Date.now()-I.current)/1e3)),dailyTotal:A??null}),le={correct:ce,total:he,attempt:Me.current.length+1,previousAttempts:[...Me.current]}}wt(),ze(()=>{typeof g=="function"&&g(le),typeof h=="function"&&h()})},[g,h,v,B,A,N,Oe,Pe,ze]),Vt=o.useCallback(()=>Nt(""),[Nt]),Wt=o.useCallback(()=>{ze(()=>{typeof h=="function"&&h()})},[h,ze]),un=n.jsxs("div",{className:`page-popup${ie?" page-popup--closing":""}`,role:"dialog","aria-modal":"true","aria-label":Ln,children:[n.jsxs("div",{ref:Le,className:`page-popup__panel ${Ze?"":"page-popup__panel--measuring"} ${Te==="center"?"page-popup__panel--center":Te==="top"?"page-popup__panel--top":""}`,children:[n.jsx(au,{title:$t,subtitle:j?F.subtitle||F.label:Array.isArray(s)?s.join(" / "):void 0,desc:j?void 0:r,depth:j?F.depth:s,icon:j?F.icon:i,wrapperStyle:j?F.wrapperStyle:l,iconTooltip:j?F.iconTooltip:c,progressMax:ot,progressIndex:He,pageIndex:He,pageCount:ot,onBack:Wt,onClose:Wt}),n.jsx("div",{className:"page-popup__scroll",children:n.jsx("div",{className:`page-popup__content ${Te==="center"?"page-popup__content--center":"page-popup__content--top"}${e.contentFull?" page-popup__content--full":""}`,children:D?St:j?Xt:typeof C=="function"?C({registerOnNext:Fe,registerOnResult:rt,panelRef:Le,setResultOverlay:Pe}):C})}),n.jsx(nu,{onSettings:f,onNext:Mn,onResult:an,useNoiseSettingBtn:!!(j?F.useNoiseSetting??!0:w),stepIndex:vt,stepCount:ut,pageIndex:He,pageCount:ot,resultOpen:!!(Oe&&!Oe.isEmpty)})]}),Oe&&!Oe.isEmpty&&(E??N3)({score:Oe.score,results:Oe.results||Oe.answers||[],contextsLength:Oe.results?Oe.results.length:Oe.answers?Oe.answers.length:0,onReplay:()=>{if(I.current=Date.now(),Oe!==jn){const{correct:le,total:xe}=Cu(Oe);Me.current.push({correct:le,total:xe})}if(wt(),ke(le=>le+1),j){if(Je(lr()),typeof t?.onReplay=="function")try{t.onReplay()}catch{}return}if(D){Je(lr());return}try{const le=Le.current&&Le.current._childOnResult;typeof le=="function"&&le({replay:!0})}catch{}},onClose:sn,pending:Oe===jn}),Oe?.isEmpty&&n.jsx("div",{className:"page-popup page-popup--result-empty",role:"dialog","aria-modal":"true","aria-label":R("training.result.eyebrow","\uD6C8\uB828 \uC644\uB8CC"),children:n.jsxs("div",{className:"page-popup__panel page-popup__panel--center",children:[n.jsx("div",{className:"page-popup__scroll",children:n.jsx("div",{className:`page-popup__content page-popup__content--center${e.contentFull?" page-popup__content--full":""}`,children:n.jsx("div",{className:"page-popup__empty",children:R("training.result.eyebrow","\uD6C8\uB828 \uC644\uB8CC")})})}),n.jsx("div",{className:"page-popup__bottom",children:n.jsx(pe,{htmlType:"button",variant:"main",size:48,onClick:sn,label:R("training.result.done","\uC644\uB8CC")})})]})}),n.jsx(ea,{message:Dt,position:"top",onClose:Vt})]}),dn=n.jsx(jo.Provider,{value:Re,children:un});return typeof document<"u"&&document.body?Ut.createPortal(dn,document.body):dn}const Tn=E3;Tn.Page=ir,Tn.ListenStep=lu,Tn.ConfirmStep=cu,Tn.ConfirmWithTextStep=uu,Tn.OrderListStep=du,Tn.CardStep=pu,Tn.CardOrderStep=x3;function D3({label:e,homonum:t}){const a=Gn()?.(e,t)??"",{imgRef:r,loading:s,hasImage:i,onLoad:l,onError:c}=yo(a);return i?n.jsxs("div",{className:"tooltip-word-image__cell",children:[s&&n.jsx("div",{className:"tooltip-word-image__spinner"}),n.jsx("img",{ref:r,src:a,alt:e,draggable:!1,style:{opacity:s?0:1},onLoad:l,onError:c})]}):n.jsx("div",{className:"tooltip-word-image__cell tooltip-word-image__cell--text h3",children:n.jsx("span",{children:e})})}function gu({words:e,anchorRect:t}){const a=o.useRef(null),[r,s]=o.useState(null);return o.useLayoutEffect(()=>{if(!t||!a.current)return;const{offsetWidth:i,offsetHeight:l}=a.current,c=window.innerWidth;let d=t.left+t.width/2-i/2,u=t.top-l-8;u<8&&(u=t.bottom+8),d=Math.max(8,Math.min(d,c-i-8)),s({left:d,top:u})},[t]),!t||e.length===0?null:Ut.createPortal(n.jsx("div",{ref:a,className:"tooltip-word-image",style:{visibility:r?"visible":"hidden",left:r?.left??0,top:r?.top??-9999},children:n.jsx("div",{className:"tooltip-word-image__cells",children:e.map(i=>n.jsx(D3,{label:i.label,homonum:i.homonum},`${i.label}_${i.homonum??1}`))})}),document.body)}const S3=new Intl.Collator("ko");function j3({titleIcon:e,resultCount:t,resultUnit:a,searchQuery:r,items:s,groups:i,selected:l=[],onSelect:c,maxSelect:d,onClearSelection:u,onPrint:p,onPrintEmpty:m,className:h,emptyHint:g,sectionType:y="page",disc:f,notice:w}){const{t:C,i18n:b}=be.useTranslation(),_=b.language?.startsWith("ko")??!1,{anchorRect:x,openAt:k,close:v}=ya(),[B,A]=o.useState(null),N=o.useCallback(()=>{v(),A(null)},[v]);ob(N,!!B);const E=(r??"").trim(),T=/^[^,[\]\s]+$/.test(E)?E:"",I=T.length>0,R=r===void 0&&t===void 0,V=I?"match":R?"original":"ganada",[j,M]=o.useState(()=>V),[F,U]=o.useState("50"),[Q,z]=o.useState(1),[G,W]=o.useState(I);G!==I&&(W(I),M(V));const L=j==="match"&&!I||j==="original"&&!R?V:j,D=o.useMemo(()=>[...I?[{value:"match",label:C("wordSearch.sort.match",{defaultValue:"\uC2DC\uC791 \uC6B0\uC120"})}]:[],...R?[{value:"original",label:C("wordSearch.sort.original",{defaultValue:"\uBC1B\uC740 \uC21C\uC11C"})}]:[],{value:"ganada",label:C("wordSearch.sort.ganada",{defaultValue:"\uAC00\uB098\uB2E4\uC21C \u2191"})},{value:"ganada_desc",label:C("wordSearch.sort.ganadaDesc",{defaultValue:"\uAC00\uB098\uB2E4\uC21C \u2193"})},{value:"syllable",label:C("wordSearch.sort.syllable",{defaultValue:"\uC74C\uC808 \uC218 \u2191"})},{value:"syllable_desc",label:C("wordSearch.sort.syllableDesc",{defaultValue:"\uC74C\uC808 \uC218 \u2193"})},{value:"grade",label:C("wordSearch.sort.grade",{defaultValue:"\uB4F1\uAE09\uC21C \u2191"})},{value:"grade_desc",label:C("wordSearch.sort.gradeDesc",{defaultValue:"\uB4F1\uAE09\uC21C \u2193"})}],[C,I,R]),O=o.useMemo(()=>["10","25","50","100"].map(Ce=>({value:Ce,label:C("wordSearch.pageSize",{count:Number(Ce),defaultValue:`${Ce}\uAC1C\uC529 \uBCF4\uAE30`})})),[C]),P=Ce=>Ce.words?.[0],H=o.useMemo(()=>{const Ce=[...T].length,Ee=p2(T),Be=new Map;return Re=>{let Le=Be.get(Re);return Le===void 0&&(Le=Ee((Re.words?.[0]?.label??"").slice(0,Ce))?0:1,Be.set(Re,Le)),Le}},[T]),$=o.useCallback((Ce,Ee)=>{const Be=me=>P(me)?.label??"",Re=me=>P(me)?.syllables??[...Be(me)].length,Le=me=>(me.words??[]).reduce((ke,Me)=>{const Te=parseInt(Me.grade??"",10);return Number.isFinite(Te)&&Te<ke?Te:ke},999);switch(L){case"match":return H(Ce)-H(Ee)||S3.compare(Be(Ce),Be(Ee));case"ganada":return Be(Ce).localeCompare(Be(Ee),"ko");case"ganada_desc":return Be(Ee).localeCompare(Be(Ce),"ko");case"syllable":return Re(Ce)-Re(Ee)||Be(Ce).localeCompare(Be(Ee),"ko");case"syllable_desc":return Re(Ee)-Re(Ce)||Be(Ce).localeCompare(Be(Ee),"ko");case"grade":return Le(Ce)-Le(Ee)||Be(Ce).localeCompare(Be(Ee),"ko");case"grade_desc":return Le(Ee)-Le(Ce)||Be(Ce).localeCompare(Be(Ee),"ko");default:return 0}},[L,H]),Y=o.useMemo(()=>s.slice().sort($),[s,$]),ee=Number(F)||10,Z=o.useMemo(()=>(i??[]).flatMap(Ce=>Ce.items.slice().sort($).map(Ee=>({item:Ee,label:Ce.label}))),[i,$]),ae=i?Z.length:Y.length,_e=Math.max(1,Math.ceil(ae/ee)),re=Math.min(Q,_e),ue=o.useMemo(()=>Y.slice((re-1)*ee,re*ee),[Y,re,ee]),q=o.useMemo(()=>{if(!i)return null;const Ce=Z.slice((re-1)*ee,re*ee),Ee=new Map;for(const{item:Be,label:Re}of Ce)Ee.has(Re)||Ee.set(Re,[]),Ee.get(Re).push(Be);return[...Ee.entries()].map(([Be,Re])=>({label:Be,items:Re}))},[i,Z,re,ee]);o.useEffect(()=>{z(1)},[j,F,ae,r]);const oe=ae>0?n.jsxs("div",{className:"word-search-result-block__toolbar",children:[n.jsx(en,{size:40,options:D,value:L,onChange:M,ariaLabel:C("wordSearch.sort.aria",{defaultValue:"\uC815\uB82C"})}),n.jsx(en,{size:40,options:O,value:F,onChange:U,ariaLabel:C("wordSearch.pageSizeAria",{defaultValue:"\uD398\uC774\uC9C0 \uD06C\uAE30"})}),n.jsx(Ya,{page:re,totalPages:_e,onChange:z})]}):void 0,de=Ce=>{c&&c(Ce)},ve=t!==void 0&&a?n.jsxs(n.Fragment,{children:[C("wordSearch.resultTitlePrefix","\uCD1D "),n.jsx("span",{style:{color:"var(--color-main)"},children:t}),C("wordSearch.resultTitleSuffix",{unit:_?v2(a):a})]}):void 0,ge=t!==void 0&&t>0&&d!==void 0&&a?C("wordSearch.resultDisc",{unit:_?_2(a):a,max:d,selected:l.length}):void 0,Se=f??(w?n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"word-search-result-block__notice",children:w}),ge?n.jsx("span",{className:"word-search-result-block__disc",children:ge}):null]}):ge);return n.jsxs(na,{type:y,className:De("word-search-result-block",h),children:[n.jsxs("div",{className:"word-search-result-block__inner",children:[(ve||oe||Se)&&n.jsxs("div",{className:"word-search-result-block__head",children:[n.jsxs("div",{className:"word-search-result-block__head-main",children:[e&&n.jsx(Ue,{icon:e,className:"word-search-result-block__head-icon"}),ve&&n.jsx("span",{className:"word-search-result-block__title h4",children:ve})]}),oe&&n.jsx("div",{className:"word-search-result-block__head-actions",children:oe}),Se&&n.jsx("div",{className:"word-search-result-block__head-disc body-3",children:Se})]}),(i?i.length===0:s.length===0)&&n.jsxs("div",{className:"word-search-result-block__empty-wrap",children:[n.jsx("p",{className:"word-search-result-block__empty body-3",children:C("wordSearch.emptyResult","\uAC80\uC0C9 \uACB0\uACFC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")}),g&&n.jsx("p",{className:"word-search-result-block__empty-hint body-3",children:g})]}),i?(q??[]).map(Ce=>n.jsx("div",{className:"word-search-result-block__group",children:n.jsx("div",{className:"word-search-result-block__items",children:Ce.items.map(Ee=>{const Be=l.includes(Ee.id);return n.jsx("div",{onMouseEnter:Re=>{k(Re.currentTarget),A(Ee.words??[])},onMouseLeave:N,children:n.jsx(pe,{htmlType:"button",size:"word",align:"grid",label:(Ee.words??[]).map(Re=>Re.label),subLabel:(Ee.words??[]).some(Re=>Re.subLabel)?(Ee.words??[]).map(Re=>Re.subLabel):void 0,selected:Be,onClick:()=>de(Ee.id),minWidth:200})},Ee.id)})})},Ce.label)):n.jsx("div",{className:"word-search-result-block__items",children:ue.map(Ce=>{const Ee=l.includes(Ce.id);return n.jsx("div",{onMouseEnter:Be=>{k(Be.currentTarget),A(Ce.words??[])},onMouseLeave:N,children:n.jsx(pe,{htmlType:"button",size:"word",align:"grid",label:(Ce.words??[]).map(Be=>Be.label),subLabel:(Ce.words??[]).some(Be=>Be.subLabel)?(Ce.words??[]).map(Be=>Be.subLabel):void 0,selected:Ee,onClick:()=>de(Ce.id),minWidth:200})},Ce.id)})}),B&&x&&n.jsx(gu,{words:B,anchorRect:x})]}),_e>1&&n.jsx("div",{className:"word-search-result-block__pagination-bottom",children:n.jsx(Ya,{page:re,totalPages:_e,onChange:z})}),(u||p)&&n.jsxs("div",{className:"word-search-result-block__actions",children:[u&&n.jsx(pe,{htmlType:"button",size:"56",type:"bar",label:C("common.resetSelection","\uC120\uD0DD \uCD08\uAE30\uD654"),selected:!1,disabled:l.length===0,onClick:l.length===0?void 0:u}),p&&n.jsx("div",{onClick:l.length===0?m:void 0,children:n.jsx(pe,{htmlType:"button",size:"56",type:"bar",variant:"main",label:C("wordTable.title","\uB2E8\uC5B4 \uD45C \uB9CC\uB4E4\uAE30"),disabled:l.length===0,onClick:l.length===0?void 0:p})})]})]})}function T3(e,t){return t.map(a=>{const r=typeof a=="string"?a:a.label,s=typeof a=="string"?void 0:a.displayLabel;return{label:r,value:e[r]??"",displayLabel:s}})}function M3({sections:e,selectedList:t,count:a,onCountChange:r,maxCount:s=4,minCount:i=1,combinationSections:l,combinationSectionsForSlot:c,onSelect:d,placeholder:u="-",className:p,title:m,titleIcon:h,disc:g,showInfoButton:y=!0,onClearPhoneme:f,onSearch:w,onSearchEmpty:C,searchDisabled:b=!1,searchLabel:_,searchChecking:x=!1,pairMode:k=!1,sectionType:v="page",beforeSearchContent:B,beforeContent:A,afterContent:N,hideCountControl:E=!1,ordinal:T=!1}){const{t:I}=be.useTranslation(),R=o.useMemo(()=>I("wordPairs.infoNotes",{returnObjects:!0}),[I]),V=o.useMemo(()=>Array.from({length:s-i+1},(P,H)=>{const $=i+H;return{key:String($),label:I("wordPairs.count",{n:$})}}),[I,s,i]),j=o.useMemo(()=>I("wordPairs.ordinals",{returnObjects:!0}),[I]),M=o.useCallback(P=>T?I("wordPairs.phonemeOrdinalLabel",{ordinal:j[P-1]??P}):a===1?I("wordPairs.phonemeSingleLabel","\uC74C\uC808"):I("wordPairs.phonemeN",{n:P}),[T,j,a,I]),F=o.useCallback(P=>T?I("wordPairs.phonemeContrastOrdinalLabel",{ordinal:j[P-1]??P}):a===1?I("wordPairs.phonemeContrastSingleLabel","\uB300\uB9BD \uC74C\uC808"):I("wordPairs.phonemeContrast",{n:P}),[T,j,a,I]),U=o.useCallback((P,H)=>H?n.jsxs(n.Fragment,{children:[P,n.jsx("span",{className:"phoneme-select-block__required",children:"*"})]}):P,[]),{anchorRect:Q,toggleAt:z,close:G}=ya(),W=o.useCallback(P=>r(Number(P)),[r]),L=Zt("(max-width: 767px)"),D=o.useCallback(P=>T3(P,e).map(({label:H,value:$,displayLabel:Y})=>{const ee=!!$&&$!=="\uC5C6\uC74C";return n.jsxs("span",{className:De("phoneme-select-block__cell-jamo-part",$?"":"phoneme-select-block__cell-jamo-part--empty",ee?"":"phoneme-select-block__cell-jamo-part--no-label"),children:[n.jsx("span",{className:`phoneme-select-block__cell-jamo-char h1${$==="\uC5C6\uC74C"?" phoneme-select-block__cell-jamo-char--excluded":""}`,children:$==="\uC5C6\uC74C"?"x":$||u}),ee&&n.jsx("span",{className:"phoneme-select-block__cell-jamo-label caption-2",children:Y??H})]},H)}),[e,u]),O=n.jsxs(n.Fragment,{children:[n.jsx("div",{"data-tooltip-ignore":!0,children:n.jsx(pe,{htmlType:"button",size:40,type:L?"dot":void 0,icon:"info",label:L?void 0:I("wordPairs.caution","\uC720\uC758\uC0AC\uD56D"),ariaLabel:I("wordPairs.caution","\uC720\uC758\uC0AC\uD56D"),className:Q?"is-selected":void 0,"aria-expanded":!!Q,"aria-haspopup":"dialog",onClick:P=>z(P.currentTarget)})}),Q&&n.jsx(Fn,{title:I("wordPairs.caution","\uC720\uC758\uC0AC\uD56D"),items:R,anchorRect:Q,onClose:G})]});return n.jsxs(na,{type:v,title:m,icon:h,disc:g,action:y?O:void 0,className:De("phoneme-select-block",p),children:[A,!E&&n.jsx("div",{className:"phoneme-select-block__controls",children:n.jsx(xn,{options:V,value:String(a),onChange:W,size:40,className:"phoneme-select-block__count-control"})}),n.jsx("div",{className:"phoneme-select-block__cells",children:k?n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"phoneme-select-block__cell-group",children:Array.from({length:a}).map((P,H)=>{const $=t[H*2]??{};return n.jsxs("div",{className:"phoneme-select-block__cell",children:[n.jsx("div",{className:"phoneme-select-block__cell-circle",children:n.jsx("div",{className:"phoneme-select-block__cell-jamo",children:D($)})}),n.jsx("span",{className:"phoneme-select-block__cell-index caption-1",children:M(H+1)})]},H)})}),n.jsx("span",{className:"phoneme-select-block__cell-vs h3",children:I("wordPairs.phonemeSelect.vs","\uB300")}),n.jsx("div",{className:"phoneme-select-block__cell-group",children:Array.from({length:a}).map((P,H)=>{const $=t[H*2+1]??{};return n.jsxs("div",{className:"phoneme-select-block__cell",children:[n.jsx("div",{className:"phoneme-select-block__cell-circle",children:n.jsx("div",{className:"phoneme-select-block__cell-jamo",children:D($)})}),n.jsx("span",{className:"phoneme-select-block__cell-index caption-1",children:F(H+1)})]},H)})})]}):t.map((P,H)=>n.jsxs("div",{className:"phoneme-select-block__cell",children:[n.jsx("div",{className:"phoneme-select-block__cell-circle",children:n.jsx("div",{className:"phoneme-select-block__cell-jamo",children:D(P)})}),n.jsx("span",{className:"phoneme-select-block__cell-index caption-1",children:M(H+1)})]},H))}),(l||c)&&n.jsx("div",{className:"phoneme-select-block__panels",children:n.jsx("div",{className:"phoneme-select-block__detail",children:k?n.jsxs("div",{className:"phoneme-select-block__pair-panels",children:[n.jsx("div",{className:"phoneme-select-block__panel-group",children:Array.from({length:a}).map((P,H)=>{const $=t[H*2]??{};return n.jsx(wn,{title:U(M(H+1),H===0),sections:c?c($,H*2):l,selected:$,onSelect:d?.(H*2),align:"newline"},H)})}),n.jsx("div",{className:"phoneme-select-block__panel-group",children:Array.from({length:a}).map((P,H)=>{const $=t[H*2+1]??{};return n.jsx(wn,{title:F(H+1),sections:c?c($,H*2+1):l,selected:$,onSelect:d?.(H*2+1),align:"newline"},H)})})]}):t.map((P,H)=>n.jsx(wn,{title:U(M(H+1),H===0),sections:c?c(P,H):l,selected:P,onSelect:d?.(H),align:"newline"},H))})}),B&&n.jsx("div",{className:"phoneme-select-block__before-search",children:B}),(f||w||x)&&(()=>{const P=t.every(H=>Object.entries(H).every(([$,Y])=>!Y||$==="\uC885\uC131"&&Y==="\uC5C6\uC74C"));return n.jsxs("div",{className:"phoneme-select-block__search-row",onClick:P?C:void 0,children:[f&&n.jsx(pe,{htmlType:"button",size:"56",type:"bar",label:I("wordPairs.resetOptions","\uAC80\uC0C9 \uC635\uC158 \uCD08\uAE30\uD654"),selected:!1,disabled:P,onClick:P?void 0:f}),w?n.jsx(pe,{htmlType:"button",size:"56",type:"bar",variant:"main",icon:x?n.jsx("span",{className:"phoneme-select-block__spinner","aria-hidden":"true"}):void 0,label:_??I("wordSearch.searchButton","\uAC80\uC0C9\uD558\uAE30"),disabled:P||b||x,onDisabledClick:x?()=>{}:void 0,"aria-busy":x||void 0,onClick:w}):x?n.jsxs("div",{className:"phoneme-select-block__checking","aria-busy":"true",children:[n.jsx("div",{className:"phoneme-select-block__spinner"}),n.jsx("span",{className:"button-1 phoneme-select-block__checking-label",children:_??I("wordSearch.searchButton","\uAC80\uC0C9\uD558\uAE30")})]}):null]})})(),N]})}function L3({title:e,sections:t,selected:a,onSelect:r,collapsible:s,defaultCollapsed:i,collapsed:l,onCollapsedChange:c,headerSummary:d,headerAction:u,className:p}){const{t:m}=be.useTranslation();return n.jsx(wn,{className:p,title:e??m("wordSearch.filterTitle","\uB2E8\uC5B4 \uAC80\uC0C9 \uC124\uC815"),sections:t,selected:a,onSelect:r,collapsible:s,defaultCollapsed:i,collapsed:l,onCollapsedChange:c,headerSummary:d,headerAction:u,align:"inline"})}function $3({title:e,headerAction:t,sections:a,selected:r,onSelect:s,className:i}){const{t:l}=be.useTranslation();return a.length===0?null:n.jsx(wn,{className:i,title:e??l("training.filter.phonemeGroup",{defaultValue:"\uD6C8\uB828 \uC74C\uC808"}),headerAction:t,sections:a,selected:r,onSelect:s,align:"newline"})}function R3({title:e,mode:t,onModeChange:a,matchMode:r,onMatchModeChange:s,positionCount:i,onPositionCountChange:l,inputMode:c,onInputModeChange:d,className:u}){const{t:p}=be.useTranslation(),m={searchMode:p("wordPairs.filter.searchModeLabel","\uB300\uB9BD \uBC29\uC2DD"),phonemeOrder:p("wordPairs.filter.phonemeOrder","\uC785\uB825 \uC74C\uC808 \uC704\uCE58"),count:p("wordPairs.filter.countLabel","\uC785\uB825 \uC74C\uC808 \uAC2F\uC218"),inputMode:p("wordPairs.filter.inputModeLabel","\uC785\uB825 \uBC29\uC2DD"),orderAny:p("wordPairs.filter.orderAny","\uBB34\uAD00"),orderMatch:p("wordPairs.filter.orderMatch","\uC77C\uCE58"),include:p("wordPairs.mode.include","\uC74C\uC18C \uD3EC\uD568"),pick:p("wordPairs.mode.pick","\uC74C\uC18C \uB300\uB9BD"),explicit:p("wordPairs.mode.contrast","\uC74C\uC18C \uB300\uB9BD \uC9C0\uC815"),charInput:p("wordPairs.input.char","\uAE00\uC790 \uC120\uD0DD"),pronInput:p("wordPairs.input.pron","\uBC1C\uC74C \uC120\uD0DD")},h=w=>p("wordPairs.count",{n:w}),g=[{label:m.searchMode,items:[m.include,m.pick,m.explicit],display:"segmented",labelAction:n.jsx(Aa,{title:p("wordPairs.mode.infoTitle","\uB300\uB9BD \uBC29\uC2DD"),items:[p("wordPairs.mode.infoInclude","\uC74C\uC18C \uD3EC\uD568 \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uAC00 \uBAA8\uB450 \uB4E4\uC5B4\uAC04 \uB2E8\uC5B4\uC640 \uADF8 \uB300\uB9BD\uC30D\uC744 \uCC3E\uC544\uC694."),p("wordPairs.mode.infoPick","\uC74C\uC18C \uB300\uB9BD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uAC00 \uB300\uB9BD\uC30D \uB450 \uB2E8\uC5B4\uC758 \uC2E4\uC81C \uCC28\uC774\uC810\uC77C \uB54C\uB9CC \uB9E4\uCE6D\uB3FC\uC694."),p("wordPairs.mode.infoContrast","\uC74C\uC18C \uB300\uB9BD \uC9C0\uC815 \u2014 \uAE30\uC900 \uB2E8\uC5B4\uC640 \uB300\uB9BD \uB2E8\uC5B4\uC758 \uC74C\uC18C\uB97C \uAC01\uAC01 \uC9C1\uC811 \uC120\uD0DD\uD574 \uB300\uB9BD\uC30D\uC744 \uCC3E\uC544\uC694.")]})},{label:m.phonemeOrder,items:[m.orderAny,m.orderMatch],display:"segmented",labelAction:n.jsx(Aa,{items:p("wordPairs.filter.phonemeOrderInfo",{returnObjects:!0})})},{label:m.count,items:[h(1),h(2)],display:"segmented"},{label:m.inputMode,items:[m.charInput,m.pronInput],display:"segmented",labelAction:n.jsx(Aa,{title:p("wordPairs.input.infoTitle","\uC785\uB825 \uBC29\uC2DD"),items:[p("wordPairs.input.infoChar","\uAE00\uC790 \uC120\uD0DD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uB85C \uB2E8\uC5B4(\uAE00\uC790 \uAE30\uC900)\uB97C \uCC3E\uC740 \uD6C4, \uB2E8\uC5B4\uC758 \uD45C\uC900 \uBC1C\uC74C \uB300\uB9BD\uC30D\uC744 \uCC3E\uC2B5\uB2C8\uB2E4."),p("wordPairs.input.infoPron","\uBC1C\uC74C \uC120\uD0DD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uB85C \uD45C\uC900 \uBC1C\uC74C \uB300\uB9BD\uC30D\uC744 \uCC3E\uC2B5\uB2C8\uB2E4.")]})}],y={[m.searchMode]:t==="explicit"?m.explicit:t==="pick"?m.pick:m.include,[m.phonemeOrder]:r==="ordered"?m.orderMatch:m.orderAny,[m.count]:h(i),[m.inputMode]:c==="phoneme"?m.pronInput:m.charInput},f=(w,C)=>{C===m.searchMode?a(w===m.explicit?"explicit":w===m.pick?"pick":"include"):C===m.phonemeOrder?s(w===m.orderMatch?"ordered":"unordered"):C===m.count?l(w===h(2)?2:1):C===m.inputMode&&d(w===m.pronInput?"phoneme":"word")};return n.jsx(wn,{className:u,title:e??p("wordPairs.filter.searchOptionsTitle","\uB300\uB9BD \uC124\uC815"),sections:g,selected:y,onSelect:f,align:"inline"})}function P3(e){const{title:t,items:a,columns:r,gridTemplateColumns:s,mobileGridTemplateColumns:i,searchPlaceholder:l,searchFn:c,defaultSortKey:d,defaultSortAsc:u=!0,selectedId:p,selectedIds:m,onSelect:h,onClose:g,pageSizeOptions:y=[10,25,50,100],initialPageSize:f,emptyText:w,countLabel:C,topContent:b,className:_=""}=e,{t:x}=be.useTranslation(),k=l??x("common.search","\uAC80\uC0C9"),v=w??x("common.emptyList","\uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4."),[B,A]=o.useState(""),[N,E]=o.useState(d??r[0]?.key??""),[T,I]=o.useState(u),[R,V]=o.useState(String(f??y[0]??10)),[j,M]=o.useState(1);o.useEffect(()=>{M(1)},[B,R]);const F=c!==null,U=o.useCallback(($,Y)=>{if(!Y)return!0;const ee=Y.toLowerCase();return r.some(Z=>{const ae=$[Z.key];return ae==null?!1:String(ae).toLowerCase().includes(ee)})},[r]),Q=c??U,z=o.useMemo(()=>{const $=F?a.filter(Y=>Q(Y,B)):a;return N?[...$].sort((Y,ee)=>{const Z=Y[N],ae=ee[N];return Z===ae?0:Kr(Z,ae,T)}):$},[a,B,N,T,F,Q]),G=Math.max(1,Math.ceil(z.length/Number(R)));j>G&&M(G);const W=Math.min(j,G),L=z.slice((W-1)*Number(R),W*Number(R)),D=o.useCallback($=>{N===$?I(Y=>!Y):(E($),I(!0)),M(1)},[N]),O=o.useMemo(()=>{if(typeof C=="function"){const $=z.length,Y=C($);if(typeof Y=="string"){const ee=Y.lastIndexOf(String($));if(ee>=0)return{prefix:Y.slice(0,ee),suffix:Y.slice(ee+String($).length)}}return{label:Y}}if(typeof C=="string"&&C.includes("{n}")){const[$,Y]=C.split("{n}");return{prefix:$,suffix:Y}}return{prefix:x("common.totalCountPrefix","\uCD1D "),suffix:x("common.totalCountSuffix","\uAC1C")}},[C,z.length,x]),P=o.useMemo(()=>r.map($=>({label:$.label,onClick:$.sortable!==!1?()=>D($.key):void 0,className:$.className,sortDir:$.sortable!==!1&&N===$.key?T?"asc":"desc":null})),[r,N,T,D]),H=o.useMemo(()=>y.map($=>({value:String($),label:x("common.pageSizeLabel",{n:$})})),[y,x]);return n.jsxs(Dn,{className:`popup-list ${_}`,title:t,onClose:g,children:[b,"label"in O&&n.jsx("p",{className:"toolbar__count body-1",children:O.label}),n.jsx(so,{count:"label"in O?void 0:{value:z.length,prefix:O.prefix,suffix:O.suffix},search:F?{value:B,onChange:A,placeholder:k}:void 0,pageSize:{options:H,value:R,onChange:V},pagination:{page:W,total:G,onChange:M}}),n.jsx(Co,{size:"medium",gridTemplateColumns:s,mobileGridTemplateColumns:i,resizable:!0,fields:P,items:L,onRowClick:h,renderRow:$=>{const Y=m!=null?$.id!=null&&m.has($.id):p!=null&&$.id===p;return r.map(ee=>({content:ee.render?ee.render($):$[ee.key]??"",className:De(ee.className,Y&&"popup-list__row--selected")}))},empty:v})]})}function bu(e){const{title:t,message:a,topContent:r,details:s,children:i,confirmLabel:l,cancelLabel:c,hideCancel:d=!1,extraAction:u,confirmVariant:p="main",confirmDisabled:m=!1,onConfirm:h,closeOnConfirm:g=!0,onClose:y,inline:f,size:w="small",className:C,initialFocus:b="close"}=e,{t:_}=be.useTranslation(),x=o.useRef(null);o.useEffect(()=>{if(f||b==="close")return;const E=x.current?.closest(".popup-panel"),T=Array.from(E?.querySelectorAll(".popup-footer--buttons button")??[]),I=b==="confirm"?T[T.length-1]:d?void 0:T[u?1:0];I&&!I.disabled&&I.focus()},[]);const k=o.useRef(!1),[v,B]=o.useState(!1),A=E=>{let T=!1;return{close:()=>{T=!0,E()},\uB2EB\uC558\uB098:()=>T}},N=async E=>{if(k.current)return;k.current=!0;const T=typeof document<"u"?document.activeElement:null;B(!0);let I=!1;try{I=await E()}catch(R){typeof console<"u"&&console.error(R)}finally{I||(k.current=!1,B(!1),requestAnimationFrame(()=>{const R=document.activeElement;(!R||R===document.body)&&T?.isConnected&&T.focus()}))}};return n.jsxs(Dn,{title:t,onClose:y,closeDisabled:v,inline:f,size:w,className:De("confirm-popup",r!=null&&"confirm-popup--has-top",C),buttons:[...u?[{label:u.label,variant:u.variant??"default",disabled:u.disabled||v,onClick:async({closeWithAnimation:E})=>{await N(async()=>{const T=A(E);await u.onClick(T.close);const I=u.closeOnClick??!0;return I&&E(),I||T.\uB2EB\uC558\uB098()})}}]:[],...d?[]:[{label:c??_("common.cancel","\uCDE8\uC18C"),variant:"default",disabled:v,onClick:({closeWithAnimation:E})=>E()}],{label:l??_("common.confirm","\uD655\uC778"),variant:p,disabled:m||v,onClick:async({closeWithAnimation:E})=>{await N(async()=>{const T=A(E);return await h(T.close),g&&E(),g||T.\uB2EB\uC558\uB098()})}}],children:[r!=null&&n.jsx("div",{className:"confirm-popup__top",children:r}),s&&s.length>0&&n.jsx(sr,{children:s.map((E,T)=>n.jsx(Sn,{label:E.label,children:n.jsx("span",{className:"panel-row__text body-2",children:E.value})},T))}),n.jsx("p",{ref:x,className:"body-2 confirm-popup__message",children:a}),i]})}function I3(e,t,a={}){const{t:r}=be.useTranslation(),[s,i]=o.useState(!1),l=o.useRef(!1),c=o.useCallback(()=>{l.current=!0},[]),d=o.useCallback(()=>l.current?(l.current=!1,!0):e?(i(!0),!1):!0,[e]),u=s?n.jsx(bu,{title:a.title??r("common.discardConfirm.title","\uC785\uB825\uC744 \uCDE8\uC18C\uD560\uAE4C\uC694?"),message:a.message??r("common.discardConfirm.body","\uC800\uC7A5\uD558\uC9C0 \uC54A\uC73C\uBA74 \uC9C0\uAE08\uAE4C\uC9C0 \uC785\uB825\uD55C \uB0B4\uC6A9\uC774 \uC0AC\uB77C\uC9D1\uB2C8\uB2E4."),confirmLabel:a.confirmLabel??r("common.discardConfirm.confirm","\uC785\uB825 \uCDE8\uC18C"),confirmVariant:"danger",onConfirm:()=>{i(!1),t()},onClose:()=>i(!1)}):null;return{beforeClose:d,discardPopup:u,allowClose:c}}function F3({onApply:e,onCancel:t}){const{t:a}=be.useTranslation(),[r,s]=o.useState(""),[i,l]=o.useState(!1),[c,d]=o.useState(null),u=o.useRef(null);o.useEffect(()=>{u.current?.focus()},[]);const p=o.useCallback(async g=>{const y=r.trim();if(y){l(!0),d(null);try{await e(y),g()}catch(f){d(ti(f)),l(!1),requestAnimationFrame(()=>u.current?.focus())}}},[r,e]),m=o.useCallback((g,y)=>{g.key==="Enter"&&!g.nativeEvent.isComposing&&p(y)},[p]),h=g=>{s(g.target.value),d(null)};return n.jsx(Dn,{className:"coupon-input-popup",title:a("usage.couponButton","\uCFE0\uD3F0 \uC785\uB825"),size:"small",onClose:t,closeDisabled:i,buttons:[{label:a("common.cancel","\uCDE8\uC18C"),variant:"default",disabled:i,onClick:({closeWithAnimation:g})=>g()},{label:a("coupons.applyButton","\uC801\uC6A9"),variant:"main",disabled:!r.trim()||i,onClick:({closeWithAnimation:g})=>{p(g)}}],children:({closeWithAnimation:g})=>n.jsxs(n.Fragment,{children:[n.jsx("input",{ref:u,className:"coupon-input-popup__input body-2","aria-label":a("coupons.input.label","\uCFE0\uD3F0 \uCF54\uB4DC"),placeholder:a("coupons.input.placeholder","\uCFE0\uD3F0 \uCF54\uB4DC \uC785\uB825"),value:r,onChange:h,onKeyDown:y=>m(y,g),disabled:i,autoComplete:"off",spellCheck:!1}),c&&n.jsx("p",{className:"coupon-input-popup__error caption-1",role:"alert",children:c})]})})}const yu=["var(--color-main)","var(--color-sub)"],O3=2e3;function H3(e,t){if(!t.startsWith("var("))return t;try{const a=t.slice(4,-1).trim();return getComputedStyle(e).getPropertyValue(a).trim()||null}catch{return null}}function Go({active:e=!1,count:t=40,duration:a=2e3,strength:r=1,onComplete:s,trigger:i=0}){const l=o.useMemo(()=>{const f=Math.floor(t/2),w=t-f,C=(b,_)=>Array.from({length:b}).map((x,k)=>{const v=6+Math.random()*12,B=Math.round(Math.min(18,v*Math.min(1.5,1+r*.4))),A=yu[Math.floor(Math.random()*yu.length)],N=Math.random()*300,E=(360+Math.random()*260)*r*1.2,T=(_==="left"?-95+Math.random()*40:-85-Math.random()*40)*Math.PI/180,I=Math.cos(T)*E,R=Math.sin(T)*E*1.35,V=Math.random()*720-360,j=(1200+Math.random()*3e3)*Math.min(1.6,1+r*.3),M=Math.random()>.7?"50%":"3px";return{id:`${_}-${k}`,side:_,size:B,color:A,delay:N,vx:I,vy:R,angularVel:V,life:j,borderRadius:M}});return[...C(f,"left"),...C(w,"right")]},[t,r]),c=o.useRef(null),d=o.useRef({}),u=o.useRef(null),p=o.useRef(s);o.useEffect(()=>{p.current=s},[s]);const m=o.useRef(null),h=o.useRef(null),g=()=>{if(typeof document>"u")return null;let f=document.querySelector("[data-ihab-effect-root]");return f||(f=document.createElement("div"),f.className="app-effect",f.dataset.ihabEffectRoot="",f.style.position="fixed",f.style.inset="0",f.style.pointerEvents="none",f.style.zIndex="99998",document.body.appendChild(f)),f};if(typeof document<"u"&&h.current==null&&(h.current=g()),o.useEffect(()=>{if(!e)return;if(typeof window<"u"&&window.matchMedia?.("(prefers-reduced-motion: reduce)").matches){const G=setTimeout(()=>p.current?.(),0);return()=>clearTimeout(G)}const f=1200,w=performance.now(),C=h.current&&h.current!==document.body?h.current.getBoundingClientRect():null,b=Math.max(60,(window.innerHeight||800)*.05),_=G=>Math.max(40,(G||window.innerWidth)*.02),x=C?.width||window.innerWidth||375,k=C?.height||window.innerHeight||812,v=G=>{const W=[...G].sort((L,D)=>L-D);return W[Math.floor(W.length/2)]||1},B=v(l.map(G=>Math.abs(G.vy))),A=v(l.map(G=>Math.abs(G.vx))),N=Math.sqrt(2*f*(k*.72+b))/B,E=B*N/f,T=x*.5/(A*E),I=(G,W,L)=>Math.min(L,Math.max(W,G)),R=I(N,.8,2.4),V=I(T,.7,2.2),j=a>0?a/O3:1,M=l.map(G=>({...G,life:G.life*j,vx:G.vx*V,vy:G.vy*R,startTime:w+G.delay,ended:!1})),F=C?{x:C.left-_(C.width),y:C.top+C.height+b}:{x:-_(window.innerWidth),y:window.innerHeight+b},U=C?{x:C.left+C.width+_(C.width),y:C.top+C.height+b}:{x:window.innerWidth+_(window.innerWidth),y:window.innerHeight+b},Q=G=>{let W=!1;for(const L of M){const D=d.current[L.id];if(!D||!D)continue;if(G<L.startTime){D.style.display="none",W=!0;continue}if(!L._inited){const re=L.side==="left"?F.x:U.x,ue=L.side==="left"?F.y:U.y;D.style.left=`${re}px`,D.style.top=`${ue}px`,D.style.transform="translate3d(0px, 0px, 0)",D.style.display="block",D.style.zIndex="100000",typeof L.color=="string"&&L.color.startsWith("var(")&&(D.style.background=H3(D,L.color)??"#FF0060"),L._inited=!0}const O=(G-L.startTime)/1e3;if(O<0)continue;const P=L.life/1e3;if(O>=P){D.style.opacity="0",D.style.display="none",L.ended=!0;continue}W=!0;const H=L.side==="left"?F.x:U.x,$=L.side==="left"?F.y:U.y,Y=H+L.vx*O,ee=$+L.vy*O+.5*f*O*O,Z=(L.angularVel||0)*O,ae=Y-H,_e=ee-$;D.style.transform=`translate3d(${ae}px, ${_e}px, 0) rotate(${Z}deg)`,D.style.opacity=`${Math.max(0,1-O/P)}`}W?u.current=requestAnimationFrame(Q):p.current?.()};u.current=requestAnimationFrame(Q);const z=setTimeout(()=>{try{if((h.current?h.current.querySelectorAll(".confetti"):document.querySelectorAll(".confetti")).length===0&&!document.querySelector(".party-container")){const G=document.createElement("div");G.className="party-container",G.style.position="fixed",G.style.inset="0",G.style.pointerEvents="none",G.style.overflow="visible",G.style.zIndex="2147483647";for(const W of l){const L=document.createElement("span");L.className=`confetti confetti--${W.side}`,L.setAttribute("aria-hidden","true"),L.style.display="none",L.style.position="fixed",L.style.left="0px",L.style.top="0px",L.style.width=`${W.size}px`,L.style.height=`${Math.max(4,W.size*.6)}px`,L.style.background=W.color,L.style.borderRadius=W.borderRadius,L.style.transform="translate3d(0,0,0)",L.style.opacity="0",G.appendChild(L),d.current[W.id]=L}(document.body||h.current).appendChild(G),m.current=G}}catch{}},300);return()=>{if(u.current&&cancelAnimationFrame(u.current),clearTimeout(z),m.current){try{m.current.remove()}catch{}m.current=null}}},[e,a,i,l]),!e)return null;const y=n.jsx("div",{className:"party-container",ref:c,children:l.map(f=>n.jsx("span",{"aria-hidden":!0,ref:w=>{d.current[f.id]=w},className:`confetti confetti--${f.side}`,style:{width:`${f.size}px`,height:`${Math.max(4,f.size*.6)}px`,background:f.color,borderRadius:f.borderRadius}},`${f.id}-${i}`))});return typeof document<"u"?Ut.createPortal(y,h.current||document.body):y}const Ko=e=>typeof e=="number"&&Number.isFinite(e)&&e>0?e:void 0;function z3({trigger:e=0,active:t=!1}){const[a,r]=o.useState(null);o.useEffect(()=>{if(typeof window>"u")return;const i=l=>{const c=l.detail??{};r(d=>({n:(d?.n??0)+1,count:Ko(c.count),strength:Ko(c.strength),duration:Ko(c.duration)}))};return window.addEventListener("party:trigger",i),()=>window.removeEventListener("party:trigger",i)},[]);const s=o.useCallback(()=>r(null),[]);return n.jsxs(n.Fragment,{children:[n.jsx(Go,{active:t,trigger:e}),a&&n.jsx(Go,{active:!0,trigger:a.n,count:a.count,strength:a.strength,duration:a.duration,onComplete:s})]})}function V3({title:e,sub:t,rightAction:a,titleAction:r,badge:s,badgeVariant:i="default",documentTitle:l,onBack:c,backLabel:d,wrap:u=!1}){const{t:p}=be.useTranslation();Wg(typeof e=="string"?e:l??null);const m=d??p("common.back","\uB4A4\uB85C");return n.jsxs("div",{className:u?"page-title page-title--wrap":"page-title",children:[n.jsxs("div",{className:"page-title__main",children:[n.jsxs("div",{className:"page-title__title-row",children:[c&&n.jsx(pe,{htmlType:"button",className:"page-title__back",size:48,type:"dot",icon:"chevron-left",iconSize:"large",useBorder:!1,iconColor:"var(--color-text-primary)",ariaLabel:m,showTooltipInfo:m,onClick:c}),n.jsx("h1",{className:"page-title__title h1",children:e}),s&&n.jsx("div",{className:"page-title__badge",children:n.jsx(ft,{label:s,size:"small",variant:i,fill:"outline"})}),r?n.jsx("div",{className:"page-title__title-action",children:r}):null]}),t&&n.jsx("p",{className:"page-title__sub body-2",children:t})]}),a?n.jsx("div",{className:"page-title__action",children:a}):null]})}function W3(e){return e??""}const vu=o.createContext({words:[],loading:!1});function q3(){return o.useContext(vu)}function U3({words:e,loading:t,error:a,statusMessage:r,localVersion:s,remoteVersion:i,progress:l,clearAndRefetch:c,checkRemoteVersion:d,children:u}){return n.jsx(vu.Provider,{value:{words:e,loading:t,error:a,statusMessage:r,localVersion:s,remoteVersion:i,progress:l,clearAndRefetch:c,checkRemoteVersion:d},children:u})}function G3({items:e,actions:t,columns:a,flat:r=!1,className:s,style:i}){const l=a??e.length;return n.jsx("section",{className:De("summary-strip",r&&"summary-strip--flat",s),style:{"--summary-strip-cols":String(l),...i},children:n.jsxs("div",{className:"summary-strip__row",children:[n.jsx("div",{className:"summary-strip__items",children:e.map((c,d)=>n.jsxs("div",{className:"summary-strip__item",children:[n.jsx("p",{className:"summary-strip__label caption-1",children:c.label}),n.jsx("p",{className:"summary-strip__value body-3b",title:typeof c.value=="string"||typeof c.value=="number"?String(c.value):void 0,children:c.value})]},d))}),t&&n.jsx("div",{className:"summary-strip__actions",children:t})]})})}const K3=(e,t)=>`${e} / ${t}`;function Y3({blocks:e,sectionTitles:t,logo:a,footer:r,pageLabel:s=K3,pageWidth:i,pageHeight:l,margin:c,className:d,style:u}){const{t:p}=be.useTranslation(),m=o.useRef(null),h=o.useRef(null),g=o.useRef(null),y=o.useRef(null),[f,w]=o.useState(null),[C,b]=o.useState(!1);o.useEffect(()=>{const j=m.current;if(!j)return;const M=()=>b(j.scrollWidth>j.clientWidth+1);if(M(),typeof ResizeObserver>"u")return;const F=new ResizeObserver(M);return F.observe(j),()=>F.disconnect()},[f]);const _=e.map(j=>`${j.id}\0${j.section??""}\0${j.group??""}`).join(""),x=f&&f.shape===_?f.pages:null,[k,v]=o.useState(0);o.useEffect(()=>{const j=y.current;if(!j||typeof ResizeObserver>"u")return;const M=new ResizeObserver(()=>v(j.offsetHeight));return M.observe(j),()=>M.disconnect()},[]);const[B,A]=o.useState(0);o.useEffect(()=>{const j=h.current;if(!j||typeof ResizeObserver>"u")return;let M=null;const F=typeof requestAnimationFrame=="function"?z=>requestAnimationFrame(z):z=>setTimeout(z,16),U=typeof cancelAnimationFrame=="function"?cancelAnimationFrame:z=>clearTimeout(z),Q=new ResizeObserver(()=>{M==null&&(M=F(()=>{M=null,A(z=>z+1)}))});return Array.from(j.children).forEach(z=>Q.observe(z)),()=>{Q.disconnect(),M!=null&&U(M)}},[_]),o.useLayoutEffect(()=>{const j=h.current,M=y.current;if(!j||!M)return;const F=P=>P.getBoundingClientRect().height||P.offsetHeight,U=new Map;g.current?.querySelectorAll("[data-chrome-section]").forEach(P=>{U.set(P.dataset.chromeSection??"",F(P))});const Q=P=>F(M)-(U.get(P??"")??0),z=Array.from(j.children).map(P=>F(P)),G=[];e.forEach((P,H)=>{const $=G[G.length-1],Y=$?e[$[0]]:void 0;Y&&P.group!=null&&Y.group===P.group&&Y.section===P.section?$.push(H):G.push([H])});const W=[];let L=[],D=0;const O=()=>{L.length&&W.push(L),L=[],D=0};G.forEach(P=>{const H=P.reduce((Y,ee)=>Y+z[ee],0),$=Q(e[P[0]].section);L.length&&e[L[0]].section!==e[P[0]].section&&O(),H>$?P.forEach(Y=>{L.length&&D+z[Y]>$+.01&&O(),L.push(Y),D+=z[Y]}):(L.length&&D+H>$+.01&&O(),P.forEach(Y=>L.push(Y)),D+=H)}),O(),w(P=>P&&P.shape===_&&JSON.stringify(P.pages)===JSON.stringify(W)?P:{shape:_,pages:W})},[_,k,i,l,c,B]);const N=no,E=N,T=r??n.jsxs(n.Fragment,{children:[n.jsx("img",{src:E,alt:"IHAB",className:"report-doc__logo"}),"\xA9 IHAB, Inc. All rights reserved."]}),I=(j,M,F)=>({header:n.jsxs("div",{className:"report-doc__header",children:[n.jsx("h2",{className:"report-doc__title h3b",children:F!=null&&t?.[F]||null}),a]}),footer:n.jsxs("div",{className:"report-doc__footer caption-1",children:[n.jsx("span",{className:"report-doc__footer-left",children:T}),n.jsx("span",{className:"report-doc__page-no",children:s(j,M)})]})}),R=Array.from(new Set(e.map(j=>j.section??""))),V={...i?{"--report-page-w":i}:null,...l?{"--report-page-h":l}:null,...c?{"--report-margin":c}:null,...u};return n.jsxs("div",{ref:m,className:De("report-doc",d),style:V,tabIndex:C?0:void 0,role:C?"group":void 0,"aria-label":C?p("report.previewRegion","\uBCF4\uACE0\uC11C \uBBF8\uB9AC\uBCF4\uAE30"):void 0,children:[n.jsxs("div",{className:"report-doc__measure","aria-hidden":!0,children:[n.jsx("div",{ref:y,className:"report-doc__ruler"}),n.jsx("div",{ref:g,children:R.map(j=>{const M=I(1,1,j||void 0);return n.jsxs("div",{"data-chrome-section":j,children:[M.header,M.footer]},j)})}),n.jsx("div",{ref:h,className:"report-doc__measure-blocks",children:e.map(j=>n.jsx("div",{children:j.content},j.id))})]}),x&&n.jsx("div",{className:"report-doc__pages",children:x.map((j,M)=>{const{header:F,footer:U}=I(M+1,x.length,e[j[0]].section);return n.jsxs("section",{className:"report-doc__page",children:[F,j.map(Q=>n.jsx("div",{children:e[Q].content},e[Q].id)),U]},M)})})]})}function Z3({title:e,fields:t,columns:a=4,className:r,style:s}){return n.jsxs("div",{className:De("report-info",r),style:{"--report-info-cols":String(a),...s},children:[e&&n.jsx("p",{className:"report-info__title h5b",children:e}),n.jsx("div",{className:"report-info__grid",children:t.map((i,l)=>n.jsxs("div",{className:"report-info__field body-2",children:[n.jsx("span",{className:"report-info__label body-3",children:i.label}),n.jsx("span",{className:"report-info__value",children:i.value})]},l))})]})}const Wn=new Map;let cr=null;const X3=12;function J3(e){for(let t=e.parentElement;t&&t!==document.body;t=t.parentElement){const a=window.getComputedStyle(t);if(a.transform&&a.transform!=="none"||a.filter&&a.filter!=="none"||a.perspective&&a.perspective!=="none"||/paint|layout|strict|content/.test(a.contain||""))return t}return document}function ur(){const e=new Map;for(const t of Wn.keys()){if(!t.isConnected)continue;const a=J3(t),r=e.get(a)??[];r.push(t),e.set(a,r)}for(const t of e.values()){t.sort((r,s)=>r.compareDocumentPosition(s)&Node.DOCUMENT_POSITION_FOLLOWING?-1:1);let a=0;for(const r of t){a>0?r.style.setProperty("--update-alert-stack-offset",`${a}px`):r.style.removeProperty("--update-alert-stack-offset");const s=r.getBoundingClientRect().height;s>0&&(a+=s+X3)}}}function Q3(e){return typeof window>"u"?()=>{}:(Wn.set(e,(Wn.get(e)??0)+1),Wn.get(e)===1&&typeof ResizeObserver<"u"&&(cr??(cr=new ResizeObserver(()=>ur())),cr.observe(e)),ur(),()=>{const t=(Wn.get(e)??1)-1;if(t>0){Wn.set(e,t),ur();return}Wn.delete(e),cr?.unobserve(e),e.style.removeProperty("--update-alert-stack-offset"),ur()})}function e7({title:e,message:t,actionLabel:a,onAction:r,icon:s,onClose:i,className:l=""}){const{t:c}=be.useTranslation(),d=a??c("common.update","\uC5C5\uB370\uC774\uD2B8"),u=o.useRef(null),p=o.useRef(!1);return o.useLayoutEffect(()=>{const m=u.current,h=m?.parentElement?.closest(".update-alert-stack")??m,g=h?Q3(h):null;return()=>{g?.(),p.current&&m&&m.contains(document.activeElement)&&Va(m)}},[]),n.jsxs("div",{ref:u,className:De("update-alert",l),role:"alert",children:[i&&n.jsx("button",{type:"button",className:"update-alert__close",onClick:()=>{p.current=!0,i()},"aria-label":c("common.close","\uB2EB\uAE30"),children:"\xD7"}),n.jsxs("div",{className:"update-alert__top",children:[n.jsx("div",{className:"update-alert__icon",children:s??n.jsx(ls,{size:20,strokeWidth:2})}),n.jsxs("div",{className:"update-alert__body",children:[n.jsx("div",{className:"update-alert__title h4",children:e}),n.jsx("div",{className:"update-alert__message body-3",children:t})]})]}),r&&n.jsx(pe,{htmlType:"button",size:32,variant:"main",shape:"pill",className:"update-alert__action",onClick:r,children:d})]})}function t7({title:e,description:t,topActions:a,children:r,footerLeft:s,footerRight:i,onClick:l,draggable:c,onDragStart:d,onDragEnd:u,className:p}){const m=s!=null||i!=null,h=r!=null&&r!==!1,g=o.useCallback(y=>{l&&y.target===y.currentTarget&&(y.key==="Enter"||y.key===" ")&&(y.preventDefault(),l())},[l]);return n.jsxs("div",{className:De("training-card",l?"training-card--clickable":"",p),onClick:l,onKeyDown:l?g:void 0,role:l?"button":void 0,tabIndex:l?0:void 0,draggable:c,onDragStart:d,onDragEnd:u,children:[n.jsxs("div",{className:"training-card__header",children:[n.jsxs("div",{className:"training-card__title-row",children:[typeof e=="string"?n.jsx("h3",{className:"training-card__title h4",children:e}):e,a!=null&&n.jsx("div",{className:"training-card__top-actions",onClick:y=>y.stopPropagation(),children:a})]}),t!=null?typeof t=="string"?n.jsx("p",{className:"training-card__description body-3",children:t}):t:n.jsx("p",{className:"training-card__description body-3","aria-hidden":"true",children:" "})]}),h&&n.jsx("div",{className:"training-card__body",children:r}),m&&n.jsxs("div",{className:"training-card__footer",children:[s!=null&&n.jsx("div",{className:"training-card__footer-left",children:s}),i!=null&&n.jsx("div",{className:"training-card__meta",children:i})]})]})}function n7({title:e,count:t,collapsed:a=!1,onToggle:r,sort:s,actions:i,empty:l=!1,emptyContent:c,dragOver:d=!1,onDragOver:u,onDragLeave:p,onDrop:m,children:h,className:g}){const{t:y}=be.useTranslation(),f=r!=null,w=De("training-card-group",d&&"training-card-group--dragover",a&&"training-card-group--collapsed",f&&"training-card-group--collapsible",g);return n.jsxs("div",{className:w,onDragOver:u,onDragLeave:p,onDrop:m,children:[n.jsxs("header",{className:"training-card-group__header",children:[f&&n.jsx(pe,{htmlType:"button",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:a?"chevron-right":"chevron-down",ariaLabel:a?y("common.expand","\uD3BC\uCE58\uAE30"):y("common.collapse","\uC811\uAE30"),className:"training-card-group__chevron","aria-expanded":!a,onClick:r}),typeof e=="string"?n.jsx("span",{className:"training-card-group__title h5b",children:e}):e,t!==void 0&&n.jsx("span",{className:"training-card-group__count body-3b",children:t}),(s||i!=null)&&n.jsxs("span",{className:"training-card-group__actions",onClick:C=>C.stopPropagation(),children:[s&&n.jsx(en,{size:40,options:s.options,value:s.value,placeholder:s.placeholder,onChange:s.onChange}),i]})]}),!a&&(l?n.jsx("div",{className:"training-card-group__empty body-3",children:c}):n.jsx("div",{className:"training-card-group__grid",children:h}))]})}const a7="speechear:saved_word_tables";function r7(e){if(typeof e!="object"||e===null)return!1;const t=e;return typeof t.id=="string"&&typeof t.name=="string"&&Array.isArray(t.items)}function o7(){try{const e=localStorage.getItem(a7);if(!e)return[];const t=JSON.parse(e);return Array.isArray(t)?t.filter(r7):[]}catch{return[]}}function xu(e){return{label:e.word,subLabel:e.pronunciation,colloquialLabel:e.colloquialPronunciation,homonum:e.homonum,grade:e.grade,syllables:[...e.word].length,pos:e.pos,wordType:e.wordType}}function Yo(e){return e.map(t=>t.homonum!=null?`${t.word}#${t.homonum}`:t.word).join("|")}function s7(e){const t=new Set;return e.map(a=>{let r=a.id;for(let s=2;t.has(r);s++)r=`${a.id}~${s}`;return t.add(r),r===a.id?a:{...a,id:r}})}function i7({title:e,titleIcon:t,disc:a,filterTitle:r,filterCollapsible:s,filterDefaultCollapsed:i,filterHeaderSummary:l,items:c,onSaveComplete:d,onLoad:u,onRemoveItem:p,onReset:m,resetLabel:h,saveButtonLabel:g,secondarySaveButtonLabel:y,onReorder:f,showCellCount:w,onAddItem:C,className:b,renderSavePopup:_,renderWordSearch:x,hideControls:k,saveOnly:v,tableName:B,nameValue:A,onNameChange:N,descriptionValue:E,onDescriptionChange:T,namePlaceholder:I,descriptionPlaceholder:R,existingNames:V,editingName:j,onCancel:M,initialItemsPerPage:F,renderCellAction:U,actionsLeftExtra:Q}){const{t:z}=be.useTranslation(),G=h??z("wordPrint.clearAllSelection","\uBAA8\uB450 \uC120\uD0DD \uD574\uC81C"),W=c===void 0,L=!!N,[D,O]=o.useState([]),P=(A??"").trim(),H=P||(I??"").trim(),$=(E??"").trim()||(R??"").trim(),Y=(V??[]).map(J=>J.trim().toLowerCase()),ee=[j?.trim().toLowerCase(),...D].filter(J=>!!J),Z=[...Y];for(const J of ee){const ne=Z.indexOf(J);ne!==-1&&Z.splice(ne,1)}const ae=P!==""&&Z.includes(P.toLowerCase()),[_e,re]=o.useState(Array(4).fill(null)),[ue,q]=o.useState(4),[oe,de]=o.useState(null),ve=_e.slice(0,ue),[ge,Se]=o.useState("landscape"),[Ce,Ee]=o.useState(["\uC774\uBBF8\uC9C0","\uB2E8\uC5B4","\uD45C\uC900 \uBC1C\uC74C"]),[Be,Re]=o.useState("\uD45C\uC2DC"),[Le,me]=o.useState(!0),[ke,Me]=o.useState(!0),Te=o.useRef(null),Ae=o.useRef([]),[ie,ye]=o.useState(F==="all"?Number.POSITIVE_INFINITY:F??8),[se,Ie]=o.useState("right"),[ze,Ge]=o.useState(!1),[Ze,Ye]=o.useState(!1),{toastMessage:Ke,toastType:Oe,showWarning:Pe,clearToast:lt}=il("warning"),wt=o.useCallback(()=>de(null),[de]);C&&!W&&!w&&fn("word-table-block-add-without-cell-count",'[WordTableBlock] \uD45C\uC2DC \uBAA8\uB4DC\uC5D0\uC11C onAddItem \uC740 showCellCount \uC640 \uD568\uAED8 \uC918\uC57C "\uCD94\uAC00\uD558\uAE30" \uCE78\uC774 \uC0DD\uAE34\uB2E4.');const[Dt,Nt]=o.useState(()=>Math.max(c?.length??1,1)),nt=W?ue:w?Math.max(Dt,c?.length??1,1):Math.max(c?.length??0,1),{width:Je,height:at}=aa[ge],Qe=!W&&!w,We=c?.length??0,mt=Math.min(ie,Math.max(We,1)),He=Qe?mt:nt,st=Qe?pc(c??[],He):null,Ct=!!st&&st.length>1,ut=W?ve.some(J=>J!==null&&J.length>1):(c??[]).some(J=>(J.words??[]).length>1),vt=B?.trim()||`${ci(Ca())} ${ut?z("wordTable.printFileNamePair","\uB300\uB9BD\uC30D\uD45C"):z("wordTable.printFileNameSingle","\uB2E8\uC5B4\uD45C")}`,ot=o.useCallback(()=>Ct?Ae.current.filter(J=>J!==null):Te.current?[Te.current]:[],[Ct]),{print:Fe,openNewWindow:rt,downloadHtml:bt}=Bo({getElements:ot,paperW:Je,paperH:at,fileName:vt,onPopupBlocked:()=>{Pe(z("wordTable.popupBlocked","\uD31D\uC5C5\uC774 \uCC28\uB2E8\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uBE0C\uB77C\uC6B0\uC800 \uC124\uC815\uC5D0\uC11C \uD31D\uC5C5\uC744 \uD5C8\uC6A9\uD574 \uC8FC\uC138\uC694."))}}),zt=J=>{q(J),re(ne=>ne.length>=J?ne:[...ne,...Array(J-ne.length).fill(null)]),de(null)},et=J=>{re(ne=>{const Ne=[...ne];return Ne[J]=null,Ne}),oe===J&&de(null)},Yt=J=>{if(oe===null)return;const ne=oe;re(qe=>{const tt=[...qe];return tt[ne]=J.length>0?J:null,tt});const Ne=ve.findIndex((qe,tt)=>tt>ne&&qe===null);de(Ne!==-1?Ne:null)},kn=W?ve.some(J=>J?.some(ne=>!!ne.colloquialPronunciation)):(c??[]).some(J=>(J.words??[]).some(ne=>!!ne.colloquialLabel)),Lt=o.useMemo(()=>Gn()?W?_e.slice(0,ue).flatMap(J=>(J??[]).map(ne=>[ne.word,ne.homonum])):(c??[]).flatMap(J=>(J.words??[]).map(ne=>[ne.label,ne.homonum])):[],[W,_e,ue,c]),[tn,nn]=o.useState(!1);o.useEffect(()=>{if(Lt.length===0)return;let J=!1;return Promise.all(Lt.map(([ne,Ne])=>Xs(ne,Ne))).then(ne=>{J||nn(ne.some(Boolean))},()=>{}),()=>{J=!0}},[Lt]);const an=Lt.length>0&&tn,Mn=o.useMemo(()=>[...W||w?[{label:z("wordTable.filter.columns","\uCE78 \uC218"),items:Vy.map(J=>({value:`${J}\uCE78`,displayLabel:z("wordTable.filter.column",{count:J})})),display:"segmented"}]:[],...Qe&&(c?.length??0)>0?[Nc(z,{hasPairs:ut,itemCount:We})]:[],...Ct?[Dc(z)]:[]],[z,W,w,Qe,c?.length,ut,We,Ct]),rn={...W||w?{[z("wordTable.filter.columns","\uCE78 \uC218")]:`${nt}\uCE78`}:{},...Qe&&(c?.length??0)>0?{[z(ut?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord")]:`${mt}\uAC1C`}:{},...Ct?{[z("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")]:Sc[se]}:{}},Ln=(J,ne)=>{ne===z("wordTable.filter.columns","\uCE78 \uC218")?W?zt(parseInt(J)):Nt(parseInt(J)):ne===z(ut?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord")?ye(Ec(parseInt(J),We)):ne===z("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")&&Ie(jc(J))},$t=W?s7(ve.filter(J=>J!==null&&J.length>0).map(J=>({id:Yo(J),words:J.map(xu)}))):c??[],gt=()=>{W&&re(J=>J.length>ue?J.slice(0,ue):J)},on=(J=!1)=>{if(Ye(J),L&&d){const ne=H.trim().toLowerCase();ne&&O(Ne=>Ne.includes(ne)?Ne:[...Ne,ne]),d(H,$t,$||void 0,J),gt();return}if(v&&d){d("",$t,void 0,J),gt();return}if(d){Ge(!0);return}bt()},[Xt,St]=o.useState(!1),[sn,Vt]=o.useState(""),Wt=sn.trim(),un=Wt!==""&&Y.includes(Wt.toLowerCase()),dn=()=>{Vt(H?z("wordTable.save.copyName",{name:H,defaultValue:"{{name}} (\uBCF5\uC0AC)"}):""),St(!0)},le=()=>{!Wt||un||!d||(d(Wt,$t,$||void 0,!0),gt(),St(!1))},xe=$t.length===0,K=xe||L&&(H===""||ae),ce=()=>{if(xe){Pe(z("wordTable.emptyItems","\uB2E8\uC5B4\uB97C 1\uAC1C \uC774\uC0C1 \uCD94\uAC00\uD574\uC8FC\uC138\uC694."));return}if(L&&H===""){Pe(z("wordTable.save.nameRequired","\uD45C \uC774\uB984\uC744 \uC785\uB825\uD574 \uC8FC\uC138\uC694."));return}L&&ae&&Pe(z("wordTable.save.duplicateName","\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4."))},he=n.jsx(ra,{items:$t,orientation:ge,contentTypes:Ce,cutLine:Be,showOutline:Le,showDivLine:ke,count:nt});return n.jsxs(n.Fragment,{children:[n.jsxs(na,{type:"page",icon:t,title:e,disc:a,className:De("word-table-block",b),children:[Xt&&n.jsx(Dn,{size:"small",title:y??z("wordTable.saveAsNewButton","\uB2E4\uB978 \uC774\uB984\uC73C\uB85C \uC800\uC7A5"),onClose:()=>St(!1),footer:({closeWithAnimation:J})=>n.jsxs(n.Fragment,{children:[n.jsx(pe,{htmlType:"button",size:48,type:"bar",label:z("common.cancel","\uCDE8\uC18C"),onClick:J}),n.jsx(pe,{htmlType:"button",size:48,type:"bar",variant:"main",label:z("common.save","\uC800\uC7A5"),disabled:!Wt||un,onClick:le})]}),children:n.jsx(zn,{label:z("wordTable.save.nameLabel","\uC774\uB984"),value:sn,onChange:Vt,placeholder:z("wordTable.save.placeholder","\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC81C\uBAA9\uC744 \uC785\uB825\uD558\uC138\uC694."),maxLength:40,size:48,fullWidth:!0,autoFocus:!0,onEnter:le,error:un?z("wordTable.save.duplicateName","\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4."):void 0})}),ze&&d&&_?.({defaultName:typeof e=="string"?e:z("wordTable.defaultName","\uB2E8\uC5B4 \uD45C"),preview:he,previewW:Je,previewH:at,items:$t,existingNames:o7().map(J=>J.name),saveAsNew:Ze,onSave:(J,ne)=>{d(J,$t,ne,Ze),gt(),Ge(!1)},onCancel:()=>Ge(!1)}),(W||C)&&oe!==null&&x?.({cellIndex:oe,onConfirm:W?Yt:J=>{if(C){const ne=J[0];if(ne){const Ne=new Set((c??[]).map(tt=>tt.id));let qe=Yo([ne]);for(let tt=2;Ne.has(qe);tt++)qe=`${Yo([ne])}~${tt}`;C({id:qe,words:[xu(ne)]})}}de(null)},onClose:wt}),!k&&n.jsx(wo,{title:r,collapsible:s,defaultCollapsed:i,headerSummary:l,hasImage:an,hasColloquial:kn,contentTypes:Ce,orientation:ge,showOutline:Le,cutLine:Be,showDivLine:ke,setters:{setContentTypes:Ee,setOrientation:Se,setShowOutline:me,setCutLine:Re,setShowDivLine:Me},showCutLine:(Qe?He:nt)>1,showDivLine2:ut,middleSections:Mn,extraSelected:rn,onExtraSelect:Ln}),Ct&&st?n.jsx("div",{className:"word-table-block__pages",children:st.map((J,ne)=>n.jsx(ra,{orientation:ge,contentTypes:Ce,cutLine:Be,showOutline:Le,showDivLine:ke,count:He,items:J,onRemoveItem:p,onReorder:f&&((Ne,qe)=>f(Ne+ne*He,qe+ne*He)),renderCellAction:U&&((Ne,qe)=>U(Ne+ne*He,qe)),contentRef:Ne=>{Ae.current[ne]=Ne},pageNumber:{current:ne+1,total:st.length},pageNumberPosition:se},ne))}):n.jsx(ra,{orientation:ge,contentTypes:Ce,cutLine:Be,showOutline:Le,showDivLine:ke,count:nt,items:W?void 0:c??[],editCells:W?ve:void 0,activeCell:oe,onActivateCell:W||C?de:void 0,onRemoveCell:W?et:void 0,onRemoveItem:W?void 0:p,onReorder:W?void 0:f,renderCellAction:W?void 0:U,showFillerAdd:!!C,contentRef:Te}),L&&!k&&n.jsxs(sr,{size:"medium",labelWidth:64,useBorder:!1,useRowBorder:!1,className:"word-table-block__meta",children:[n.jsx(Sn,{variant:"custom",label:z("wordTable.save.nameLabel","\uC774\uB984"),required:!0,align:"vertical",useFullWidth:!0,children:n.jsx(zn,{required:!0,value:A??"",onChange:N,placeholder:I?I+z("wordTable.save.autoFillHint"," (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)"):z("wordTable.save.placeholder","\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC81C\uBAA9\uC744 \uC785\uB825\uD558\uC138\uC694."),ariaLabel:z("wordTable.save.nameLabel","\uC774\uB984"),maxLength:40,size:48,fullWidth:!0,error:ae?z("wordTable.save.duplicateName","\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4."):void 0,onKeyDown:J=>{(J.key==="Tab"&&!J.shiftKey||J.key===" ")&&!(A??"").trim()&&(I??"").trim()&&(J.preventDefault(),N?.(I??""))}})}),n.jsx(Sn,{variant:"custom",label:z("wordTable.save.descriptionLabel","\uC124\uBA85"),align:"vertical",useFullWidth:!0,children:n.jsx(zn,{value:E??"",onChange:T,placeholder:R?R+z("wordTable.save.autoFillHint"," (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)"):z("wordTable.save.descriptionPlaceholder","\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC124\uBA85\uC744 \uC785\uB825\uD558\uC138\uC694."),ariaLabel:z("wordTable.save.descriptionLabel","\uC124\uBA85"),maxLength:200,multiline:!0,rows:2,fullWidth:!0,onKeyDown:J=>{(J.key==="Tab"&&!J.shiftKey||J.key===" ")&&!(E??"").trim()&&(R??"").trim()&&(J.preventDefault(),T?.(R??""))}})})]})]}),!k&&n.jsxs("div",{className:"word-table-block__actions",children:[n.jsxs("div",{className:"word-table-block__actions-left",children:[!v&&m&&n.jsx(pe,{htmlType:"button",size:40,type:"bar",label:G,onClick:m}),!v&&Q,!v&&u&&n.jsx(pe,{htmlType:"button",size:40,type:"bar",label:z("wordTable.load","\uBD88\uB7EC\uC624\uAE30"),onClick:u}),!v&&n.jsx(pe,{htmlType:"button",size:40,type:"bar",label:z("wordTable.openNewWindow","\uC0C8 \uCC3D\uC73C\uB85C \uBCF4\uAE30"),onClick:rt})]}),n.jsxs("div",{className:"word-table-block__actions-right",children:[M&&n.jsx(pe,{htmlType:"button",size:"56",type:"bar",label:z("common.cancel","\uCDE8\uC18C"),onClick:M}),!v&&n.jsx(pe,{htmlType:"button",size:"56",type:"bar",label:z("wordTable.print","\uC778\uC1C4\uD558\uAE30"),onClick:Fe}),y&&n.jsx(pe,{htmlType:"button",size:"56",type:"bar",label:y,onClick:()=>L?dn():on(!0),disabled:xe,onDisabledClick:()=>{Pe(z("wordTable.emptyItems","\uB2E8\uC5B4\uB97C 1\uAC1C \uC774\uC0C1 \uCD94\uAC00\uD574\uC8FC\uC138\uC694."))}}),n.jsx(pe,{htmlType:"button",size:"56",type:"bar",variant:"main",label:g??z("wordTable.saveButton","\uC800\uC7A5\uD558\uAE30"),onClick:()=>on(!1),disabled:K,onDisabledClick:ce})]})]}),n.jsx(ea,{message:Ke,type:Oe,onClose:lt})]})}function _u({items:e,className:t}){const a=e.length,r=a<=3?1:2,s=Math.ceil(a/r)||1,i=r*s;return n.jsx("div",{className:De("word-table-thumb",t),style:{gridTemplateColumns:`repeat(${r}, 1fr)`},children:Array.from({length:i},(l,c)=>{const d=e[c];return d?n.jsx("div",{className:"word-table-thumb__cell",children:(d.words?.length?d.words:[{label:d.id}]).map((u,p)=>n.jsxs(o.Fragment,{children:[p>0&&n.jsx("span",{className:"word-table-thumb__divider"}),n.jsx("span",{className:"word-table-thumb__word body-3",children:u.label})]},p))},c):n.jsx("div",{className:"word-table-thumb__cell word-table-thumb__cell--empty"},c)})})}function l7({items:e,name:t,description:a,createdAt:r,published:s,publishedLabel:i,shared:l,sharedLabel:c,isNew:d,publisherName:u,publishedAt:p,likeCount:m,downloadCount:h,onPublisherClick:g,selected:y,onClick:f,onMore:w,titleNode:C,className:b}){const{t:_}=be.useTranslation(),x=C!=null,k=u!=null||p!=null||m!=null||h!=null,v=B=>{B.target===B.currentTarget&&!x&&(B.key==="Enter"||B.key===" ")&&(B.preventDefault(),f?.())};return n.jsxs("div",{className:De("word-table-button",y?"word-table-button--selected":"",k?"":"word-table-button--no-footer",b),role:"button",tabIndex:0,"aria-label":t,onClick:x?void 0:f,onKeyDown:v,children:[d&&n.jsx("span",{className:"word-table-button__new-dot","aria-label":_("myWordTable.newBadge","\uC0C8\uB85C \uB9CC\uB4E0 \uD45C")}),n.jsx(_u,{items:e,className:"word-table-button__thumb"}),n.jsxs("div",{className:"word-table-button__info",children:[n.jsxs("div",{className:"word-table-button__info-text",children:[C??n.jsx("div",{className:"word-table-button__title h4",children:t}),a&&n.jsx("div",{className:"word-table-button__desc body-3",children:a})]}),w&&!x&&n.jsx(pe,{htmlType:"button",className:"word-table-button__more",size:32,type:"dot",variant:"transparent-gray",useBorder:!1,icon:"ellipsis",ariaLabel:_("common.moreFor",{name:t}),onClick:B=>{B.stopPropagation(),w(B)}})]}),(r||s||l)&&n.jsxs("div",{className:"word-table-button__meta-row",children:[n.jsx("span",{className:"word-table-button__meta caption-1",children:r?li(r,_):""}),n.jsxs("span",{className:"word-table-button__badges",children:[s&&n.jsx(ft,{className:"word-table-button__badge",size:"small",variant:"main",fill:"soft",iconLeft:"book-marked",label:i??_("myWordTable.publishedBadge","\uBC1C\uD589\uB428")}),l&&n.jsx(ft,{className:"word-table-button__badge",size:"small",fill:"soft",iconLeft:"link",label:c??_("myWordTable.sharedBadge","\uACF5\uC720 \uC911")})]})]}),k&&n.jsxs("div",{className:"word-table-button__footer",children:[n.jsxs("span",{className:"word-table-button__store-by",children:[u&&n.jsx("button",{className:"training-card__publisher body-4",type:"button",onClick:B=>{B.stopPropagation(),g?.()},children:u}),p&&n.jsx("span",{className:"training-card__date body-4",children:li(p,_)})]}),n.jsxs("span",{className:"word-table-button__store-stats",children:[m!=null&&n.jsx(ft,{size:"small",fill:"soft",variant:"like",iconLeft:"heart",label:String(m)}),h!=null&&n.jsx(ft,{size:"small",fill:"soft",variant:"main",iconLeft:"download",label:String(h)})]})]})]})}/**
|
|
1009
|
+
`).map((l,c,d)=>n.jsxs(o.Fragment,{children:[l,c<d.length-1&&n.jsx("br",{})]},c))})}),n.jsxs("div",{className:"site-footer__links",children:[n.jsxs("div",{className:"site-footer__column",children:[n.jsx("div",{className:"site-footer__column-title footer-title",children:i("footer.site.title","\uC0AC\uC774\uD2B8")}),n.jsxs("ul",{children:[n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://www.ihab.co.kr/",target:"_blank",rel:"noopener noreferrer",children:"IHAB"})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://speechear.ihab.co.kr/",target:"_blank",rel:"noopener noreferrer",children:i("footer.site.malgwi","\uB9D0\uADC0")})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://ihab-offcial-web.vercel.app/product/sound-localization",target:"_blank",rel:"noopener noreferrer",children:i("footer.site.soundDirection","\uC18C\uB9AC\uBC29\uD5A5\uC131\uC2DC\uC2A4\uD15C")})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://ihab-offcial-web.vercel.app/product/vr-sound-localization",target:"_blank",rel:"noopener noreferrer",children:i("footer.site.vrSoundDirection","VR\uC18C\uB9AC\uBC29\uD5A5\uC131\uC2DC\uC2A4\uD15C")})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://ihab-offcial-web.vercel.app/product/hearing-test-pro",target:"_blank",rel:"noopener noreferrer",children:i("footer.site.hearingTest","\uCCAD\uB825\uD14C\uC2A4\uD2B8 \uD504\uB85C")})})]})]}),n.jsxs("div",{className:"site-footer__column",children:[n.jsx("div",{className:"site-footer__column-title footer-title",children:i("footer.sns.title","SNS")}),n.jsxs("ul",{children:[n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://blog.naver.com/ihab_official",target:"_blank",rel:"noopener noreferrer",children:i("footer.sns.naverBlog","\uB124\uC774\uBC84 \uBE14\uB85C\uADF8")})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://www.instagram.com/ihab.official.yt/",target:"_blank",rel:"noopener noreferrer",children:"Instagram"})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://www.youtube.com/@%EC%95%84%EC%9D%B4%ED%95%B4%EB%B8%8C-%EA%B3%B5%EC%8B%9D%EC%B1%84%EB%84%90",target:"_blank",rel:"noopener noreferrer",children:"Youtube"})})]})]}),n.jsxs("div",{className:"site-footer__column",children:[n.jsx("div",{className:"site-footer__column-title footer-title",children:i("footer.policy.title","\uC815\uCC45")}),n.jsxs("ul",{children:[n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"#",onClick:l=>{e&&(l.preventDefault(),e())},children:i("footer.policy.terms","\uC774\uC6A9\uC57D\uAD00")})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"#",onClick:l=>{t&&(l.preventDefault(),t())},children:i("footer.policy.privacy","\uAC1C\uC778\uC815\uBCF4 \uCC98\uB9AC\uBC29\uCE68")})})]})]})]})]}),n.jsx("hr",{className:"site-footer__rule"}),n.jsxs("div",{className:"site-footer__bottom",children:[n.jsx("div",{className:"site-footer__brand",children:n.jsx("img",{src:no,alt:"IHAB",className:"site-footer__logo"})}),n.jsxs("div",{className:"site-footer__meta",children:[n.jsxs("div",{children:[n.jsx("span",{className:"footer-title",children:i("footer.ceo","\uB300\uD45C")}),n.jsx("span",{className:"footer-meta caption-1",children:i("footer.ceoName","\uD55C\uC9C0\uD61C")})]}),n.jsxs("div",{children:[n.jsx("span",{className:"footer-title",children:i("footer.address","\uC8FC\uC18C")}),n.jsx("span",{className:"footer-meta caption-1",children:i("footer.addressValue","\uAC15\uC6D0\uB3C4 \uCD98\uCC9C\uC2DC \uC2DC\uCCAD\uAE38 32 \uD574\uCC2C\uBE4C\uB529 3\uCE35 302\uD638")})]}),n.jsxs("div",{children:[n.jsx("span",{className:"footer-title",children:i("footer.support","\uACE0\uAC1D\uC13C\uD130")}),n.jsxs("span",{className:"footer-meta caption-1",children:[r," \xA0 ",s]})]})]})]}),n.jsx("div",{className:"site-footer__copyright footer-copyright caption-1",children:"\xA9 IHAB, Inc. All rights reserved."})]})})}function N5({logo:e,logoAlt:t="",logoHref:a,links:r=[],actions:s,className:i,containerClassName:l,renderLink:c,menuLabel:d}){const{t:u}=be.useTranslation(),p=d??{open:u("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),close:u("header.menuClose","\uBA54\uB274 \uB2EB\uAE30")},[m,f]=o.useState(!1),g=o.useId(),y=o.useRef(null);o.useEffect(()=>{if(!m)return;const C=In(()=>{const v=document.getElementById(g);v&&v.contains(document.activeElement)&&y.current?.focus(),f(!1)}),b=typeof window<"u"&&window.matchMedia?window.matchMedia("(min-width: 961px)"):null,x=v=>{v.matches&&f(!1)};return b&&(b.matches&&f(!1),b.addEventListener?.("change",x)),()=>{C(),b?.removeEventListener?.("change",x)}},[m,g]);const h=l?`${l} landing-header__inner`:"landing-header__inner",w=(C,b)=>c?c(C,{onClick:b}):n.jsx("a",{href:C.href,onClick:b,"aria-current":C.current?"page":void 0,children:C.label});return n.jsxs("header",{className:i?`landing-header ${i}`:"landing-header",children:[n.jsxs("div",{className:h,children:[e!=null&&(()=>{const C=typeof e=="string"?n.jsx("img",{src:e,alt:t,className:"landing-header__logo"}):e;return a?n.jsx("a",{href:a,className:"landing-header__brand",children:C}):n.jsx("div",{className:"landing-header__brand",children:C})})(),r.length>0&&n.jsx("nav",{className:"landing-header__links",children:r.map((C,b)=>n.jsx("span",{children:w(C)},`${b}:${C.href}`))}),n.jsxs("div",{className:"landing-header__actions",children:[s,r.length>0&&n.jsx("button",{ref:y,type:"button",onClick:()=>f(C=>!C),"aria-expanded":m,"aria-controls":g,"aria-label":m?p.close:p.open,className:m?"landing-header__toggle landing-header__toggle--open":"landing-header__toggle",children:n.jsxs("span",{className:"landing-header__burger",children:[n.jsx("span",{}),n.jsx("span",{}),n.jsx("span",{})]})})]})]}),r.length>0&&n.jsx("nav",{id:g,hidden:!m,className:"landing-header__drawer",children:n.jsx("div",{className:l??void 0,children:r.map((C,b)=>n.jsx("span",{className:"landing-header__drawer-item",children:w(C,()=>f(!1))},`${b}:${C.href}`))})})]})}function E5({children:e,action:t,onClick:a,className:r}){const s=a?"bottom-sticky__inner bottom-sticky__inner--clickable":"bottom-sticky__inner";return n.jsx("div",{className:r?`bottom-sticky ${r}`:"bottom-sticky",children:n.jsxs("div",{className:s,onClick:a,...oc(a),children:[n.jsx("div",{className:"bottom-sticky__content",children:e}),t]})})}const sa=9,D5=e=>Math.round(Math.min(sa,Math.max(0,e))/sa*100),S5=e=>e/100*sa,Sa=2,Fc=.1,j5=e=>Math.min(Sa,Math.max(0,e)),T5=.1,M5=e=>Math.round(e*1e6)/1e6;function ja(e){const{noiseRatio:t}=e;if(typeof t=="number"&&Number.isFinite(t))return j5(t);const a=Math.min(sa,Math.max(0,Number(e.level)||0))/sa,r=Number(e.mainVolume);return r>0?a>0?M5(Math.min(Sa,Math.max(T5,a/r))):0:1}const Oc=e=>Math.min(1,Math.max(0,Number(e.mainVolume)||0));function Hc(e){return Oc(e)}function Do(e){return Oc(e)*ja(e)}function So(e,t=qs()){const a=Number.isFinite(t)&&t>0?t:1;return Math.min(1,Do(e)/a)}function Ta(e,t){const a={...e,...t??{}};return t&&"level"in t&&typeof t.noiseRatio!="number"&&(a.noiseRatio=ja({level:a.level,mainVolume:a.mainVolume})),a}const Ma={enabled:!0,type:"defaultNoise",level:4.5,noiseRatio:1,speed:1,mainVolume:1,mainSpeed:1},jo=o.createContext(null);function ar(){return o.useContext(jo)}const To=e=>`${X0()}/${e}`,zc=e=>Array.from({length:10},(t,a)=>To(`${e}-${String(a+1).padStart(2,"0")}.mp3`)),rr={get defaultNoise(){return To("noise1.mp3")},get street(){return zc("noise2")},get restaurant(){return zc("noise3")},get buzz(){return To("noise4.mp3")}};function L5(e){const t=Math.floor(Math.random()*10);switch(e){case"defaultNoise":return rr.defaultNoise;case"street":return rr.street[t];case"restaurant":return rr.restaurant[t];case"buzz":return rr.buzz;default:return null}}function $5({noisePlayer:e,audioRef:t,playbackStateRef:a}){const r=o.useRef(e?.registerAnalyser);r.current=e?.registerAnalyser;const s=o.useRef(null),[i,l]=o.useState(null),c=o.useRef(null),d=o.useRef(null),u=o.useRef(null),p=o.useRef(null),m=o.useRef(0),f=o.useRef(null),g=o.useCallback(()=>{p.current!==null&&(cancelAnimationFrame(p.current),p.current=null),f.current!==null&&(clearTimeout(f.current),f.current=null)},[]),y=o.useCallback((x,v=250)=>{const A=s.current;if(!A)return;const k=d.current;if(k){d.current=null;try{A.pause()}catch{}A.src=k,A.load()}if(!A.src)return;m.current+=1,g();try{Dr(),Pa(A).then(E=>{if(s.current===A)try{r.current?.("noise",E)}catch{}})}catch{}const N=A.paused?0:Ia(A);A.paused&&Nn(A,0),A.play().catch(()=>{});const _=performance.now(),B=()=>{const E=Math.min(1,(performance.now()-_)/v);try{Nn(A,N+(x-N)*E)}catch{}E<1?p.current=requestAnimationFrame(B):p.current=null};p.current=requestAnimationFrame(B)},[g]),h=o.useCallback((x=250,v)=>{const A=s.current;if(!A||A.paused){v?.();return}const k=++m.current;g();const N=performance.now(),_=Ia(A),B=()=>{const E=Math.min(1,(performance.now()-N)/x);try{Nn(A,_*(1-E))}catch{}if(E<1)p.current=requestAnimationFrame(B);else{p.current=null,f.current!==null&&(clearTimeout(f.current),f.current=null);try{A.pause()}catch{}v?.()}};p.current=requestAnimationFrame(B),f.current=setTimeout(()=>{if(f.current=null,m.current===k){p.current!==null&&(cancelAnimationFrame(p.current),p.current=null);try{A.paused||(Nn(A,0),A.pause(),v?.())}catch{}}},x+150)},[g]);o.useEffect(()=>{const x=document.createElement("audio");return x.loop=!0,x.crossOrigin="anonymous",s.current=x,()=>{g();try{x.pause(),x.src=""}catch{}s.current=null,c.current=null,d.current=null}},[g]);const w=e?So(e.settings):0,C=!!e?.settings.enabled&&w>0;o.useEffect(()=>{if(!C)return;let x=0;const v=setInterval(()=>{const A=s.current;if(!A||A.paused){x=0;return}const k=t.current;if(k&&!k.paused&&!k.ended||a.current==="playing"){x=0;return}x+=1,x>=2&&(x=0,h())},400);return()=>clearInterval(v)},[h,C,t,a]),o.useEffect(()=>{const x=()=>{const v=s.current;if(document.hidden){if(v&&!v.paused){g();try{v.pause()}catch{}}return}if(!v||!v.paused)return;const A=t.current,k=!!A&&!A.paused&&!A.ended||a.current==="playing",N=u.current;k&&N?.enabled&&N.volume>0&&y(N.volume)};return document.addEventListener("visibilitychange",x),()=>document.removeEventListener("visibilitychange",x)},[g,y,t,a]),o.useEffect(()=>{u.current=e?{enabled:e.settings.enabled,volume:w,type:e.settings.type}:null},[e,e?.settings.enabled,w,e?.settings.type]);const b=o.useRef(null);return o.useEffect(()=>()=>{b.current?.(),b.current=null},[]),o.useEffect(()=>{const x=e?.settings,v=s.current;if(!v)return;const A=x?So(x):0;if(!x||!x.enabled||A===0){h();return}if(c.current!==x.type){const k=L5(x.type);k&&(c.current=x.type,l(k),d.current=k,h(150,()=>{if(d.current!==k)return;d.current=null,v.src=k,v.load();const N=t.current;if(N&&!N.paused){b.current?.();const _=()=>{v.removeEventListener("canplay",_),b.current===B&&(b.current=null);const E=t.current,P=u.current;E&&!E.paused&&!E.ended&&P?.enabled&&P.volume>0&&y(P.volume)},B=()=>v.removeEventListener("canplay",_);b.current=B,v.addEventListener("canplay",_)}}))}else{const k=t.current,N=!!k&&!k.paused&&!k.ended||a.current==="playing";if(N&&d.current)y(A);else if(N&&v.paused&&v.src)y(A);else if(!v.paused)if(!N)h();else{g();const _=Ia(v),B=performance.now(),E=()=>{const P=Math.min(1,(performance.now()-B)/150);try{Nn(v,_+(A-_)*P)}catch{}P<1?p.current=requestAnimationFrame(E):p.current=null};p.current=requestAnimationFrame(E)}}},[e?.settings,e?.settings.enabled,w,e?.settings.type,g,y,h,t,a,u]),o.useEffect(()=>{const x=s.current;if(x)try{x.playbackRate=Math.min(1.25,Math.max(.75,e?.settings.speed??1))}catch{}},[e?.settings.speed]),{noiseAudioRef:s,activeNoiseUrl:i,noiseSettingsRef:u,cancelNoiseFade:g,fadeInNoise:y,fadeOutNoise:h}}function R5({ttsText:e,playbackRate:t,mainVolume:a,fillRef:r,waveProgressRef:s,setProgress:i,setPlaybackState:l,setStateLocal:c,fadeInNoise:d,fadeOutNoise:u,noiseSettingsRef:p,onDoneRef:m,handleEndRef:f}){const g=o.useRef(null),y=o.useRef(0),h=o.useRef(null),w=o.useRef(0),C=o.useRef(!1);o.useEffect(()=>()=>{w.current++;try{if(h.current&&(cancelAnimationFrame(h.current),h.current=null),C.current&&window.speechSynthesis){try{window.speechSynthesis.cancel()}catch{}C.current=!1}}catch{}},[]);const b=(A,k=1)=>{try{const N=(A||"").trim().split(/\s+/).filter(Boolean).length||Math.max(1,(A||"").length);return Math.max(700,Math.round(N*300/Math.max(.25,k)))}catch{return 1200}},x=o.useCallback(A=>{if(typeof window>"u"||!window.speechSynthesis){try{typeof m.current=="function"&&m.current(!1)}catch{}return}const k=window.speechSynthesis,N=++w.current;try{try{k.cancel()}catch{}const _=A??e,B=Array.isArray(_)?_.filter(j=>!!j):[_||""];B.length===0&&B.push("");const E=Math.max(.3,Math.min(3,t));y.current=B.reduce((j,M)=>j+b(M,E||1),0),g.current=performance.now(),i(0),l("playing"),c("playMode");const P=p.current;P?.enabled&&(P?.volume??0)>0&&d(P.volume);const H=()=>{try{const j=g.current||performance.now(),M=performance.now()-j,I=y.current||1200,G=Math.min(1,M/I);try{r.current&&(r.current.style.left=`${G*100}%`),s.current&&s.current.style.setProperty("--progress",String(G))}catch{}G<1&&(h.current=requestAnimationFrame(H))}catch{}},S=()=>{if(N===w.current)try{h.current&&(cancelAnimationFrame(h.current),h.current=null),i(1),l("stopped");try{f.current?.()}catch{try{typeof m.current=="function"&&m.current(!0)}catch{}}}catch{}},V=j=>{const M=new SpeechSynthesisUtterance(B[j]);try{M.rate=E}catch{}try{M.volume=Math.max(0,Math.min(1,a))}catch{}M.onend=()=>{if(N===w.current){if(j<B.length-1){try{V(j+1)}catch{S()}return}S()}},M.onerror=()=>{S()},M.onstart=()=>{if(!(j>0))try{h.current&&(cancelAnimationFrame(h.current),h.current=null),h.current=requestAnimationFrame(H)}catch{}},C.current=!0,k.speak(M)};try{V(0)}catch{try{typeof m.current=="function"&&m.current(!0)}catch{}}}catch{try{typeof m.current=="function"&&m.current(!0)}catch{}}},[e,t,a,d,r,s,i,l,c,p,m,f]),v=o.useCallback(()=>{w.current++;try{if(window.speechSynthesis)try{window.speechSynthesis.cancel()}catch{}h.current&&(cancelAnimationFrame(h.current),h.current=null),u(),g.current=null}catch{}l("stopped"),c("active"),i(0)},[u,l,c,i]);return{startTTS:x,stopTTS:v}}async function P5(e,t,a){let r=null;try{const s=window.AudioContext||window.webkitAudioContext;r=new s;const i=await r.decodeAudioData(e.slice(0)),l=i.numberOfChannels>0?i.getChannelData(0):null;if(!l)return null;const c=a&&a>0?Math.min(l.length,Math.floor(a*i.sampleRate)):l.length,d=Math.max(t,c),u=Math.floor(d/t)||1;return new Array(t).fill(0).map((p,m)=>{const f=m*u,g=Math.min(f+u,d);let y=0;for(let h=f;h<g;h++){const w=Math.abs(l[h]);w>y&&(y=w)}return y})}catch{return null}finally{try{r?.close?.()}catch{}}}async function Vc(e,t,a){try{const r=await fetch(e);if(r.ok===!1)return null;const s=await r.arrayBuffer();return await P5(s,t,a)}catch(r){try{const s=ti(r)}catch{}return null}}const Wc=45,I5=74,F5=2;function La(e){const t=Math.min(2,Math.max(0,Number(e)||0));return t<=1?t*45:45+(t-1)*29}function Mo(e){return La(e)/45}const qc=4;function O5(e){const{src:t,segments:a,progress:r=0,waveProgressRef:s,noiseSrc:i,noiseRatio:l=0,noiseSpeed:c=1,totalDuration:d=0,mainVolume:u=1,onReadyChange:p,showSoundWaveForm:m=!0}=e,f=o.useRef(null),g=o.useRef(null),[y,h]=o.useState(null),[w,C]=o.useState(!1),[b,x]=o.useState(null),[v,A]=o.useState(2),[k,N]=o.useState(0),[_,B]=o.useState(null),[E,P]=o.useState(!1),[H,S]=o.useState(!1),V=3,j=3,M=1,I=300,G=o.useRef(0),Q=o.useCallback(()=>{const ue=f.current,U=g&&g.current?g.current:ue?ue.closest(".audio-player__wave"):null,oe=U?U.getBoundingClientRect():ue?ue.getBoundingClientRect():null,de=oe?oe.width:0,ve=oe?Math.max(100,oe.width):320,ge=oe?oe.height:0,Se=Math.max(M,Math.min(I,Math.floor((ve+j)/(V+j)))),Ce=Se*V,Ee=Math.max(0,Se-1),Be=Math.max(0,Ee>0?(ve-Ce)/Ee:j);return{bars:Se,gap:Be,height:ge,width:de}},[]),z=o.useRef(void 0),q=o.useRef(null),W=o.useCallback(async(ue,U,{quiet:oe=!1}={})=>{const de=++G.current,ve=()=>G.current===de;try{if(oe||C(!1),z.current=ue,!ue){ve()&&h(null);return}let ge=U;if(!ge)try{for(let Ee=0;Ee<4&&!(f.current||g.current);Ee++)await new Promise(Be=>requestAnimationFrame(Be));await new Promise(Ee=>requestAnimationFrame(Ee));const Ce=Q();Ce.height>0&&N(Ce.height),ge=Ce.bars,A(Ce.gap)}catch{ge=120}q.current=ge;const Se=await Vc(ue,ge);if(!ve())return;if(!Se){h(null),C(!1);return}h(Se),x(ge),C(!0)}catch{if(!ve())return;h(null),C(!1)}},[C,h,N,A,x,Q]);o.useEffect(()=>{const ue=g.current;if(!ue||typeof ResizeObserver>"u")return;let U=null;const oe=new ResizeObserver(()=>{U!==null&&cancelAnimationFrame(U),U=requestAnimationFrame(()=>{U=null;try{const de=Q();if(de.width<=0||(de.height>0&&N(de.height),q.current===null||de.bars===q.current))return;const ve=z.current;A(de.gap),ve?W(ve,de.bars,{quiet:!0}).catch(()=>{}):q.current=de.bars}catch{}})});return oe.observe(ue),()=>{oe.disconnect(),U!==null&&cancelAnimationFrame(U)}},[Q,W]),o.useEffect(()=>{const ue=a&&a[0]&&a[0].src||t||a&&a.length===1&&a[0]&&a[0].src;W(typeof ue=="string"?ue:void 0).catch(()=>{}),S(!1)},[t,a,W]),o.useEffect(()=>{let ue=!1;if(P(!1),!i||!b){B(null);return}const U=d>0?d*(c||1):void 0;return Vc(i,b,U).then(oe=>{ue||(B(oe),oe||P(!0))}).catch(()=>{ue||(B(null),P(!0))}),()=>{ue=!0}},[i,b,d,c]);const L=Math.max(0,Math.min(1,u)),D=o.useMemo(()=>y&&y.length&&Math.max(...y)||1,[y]),F=b||40,R=o.useMemo(()=>Array.from({length:F}).map((ue,U)=>{const oe=y&&y[U]!=null?y[U]:null,de=oe==null?null:Math.min(1,oe/D*L),ve=de!=null&&k>0&&La(de)<=qc,ge=de==null?.15:ve?0:Mo(de),Se=F>1?U/(F-1):0;return n.jsx("div",{className:ve?"audio-player__bar audio-player__bar--hidden":"audio-player__bar",style:{"--val":ge,"--i":U,"--mix":Se}},U)}),[F,y,D,L,k]),O={"--progress":String(Math.max(0,Math.min(1,r)))},$=i?Math.max(1,l):1,Y={"--bar-gap":`${v}px`,"--wave-h":`${La($)}px`,"--wave-h1":`${Wc}px`},ee=L*Math.max(0,l)/qs(),Z=w&&(i?!!_||E:!0);o.useEffect(()=>{Z&&S(!0)},[Z]);const ae=H?w:Z;o.useEffect(()=>{p?.(ae)},[ae,p]);const _e=b||40,re=o.useMemo(()=>Array.from({length:_e}).map((ue,U)=>{const oe=_&&_[U]!=null?_[U]:null,de=oe==null?0:oe/D*ee,ve=k>0&&La(de)<=qc,ge=ve?0:Mo(de),Se=_e>1?U/(_e-1):0;return n.jsx("div",{className:ve?"audio-player__bar audio-player__bar--hidden":"audio-player__bar",style:{"--val":ge,"--i":U,"--mix":Se}},U)}),[_e,_,D,ee,k]);return n.jsxs("div",{className:"audio-player__wave",ref:g,style:Y,children:[i&&n.jsx("div",{className:`audio-player__wave-noise ${Z?"is-ready":""}`,"aria-hidden":"true",children:re}),m&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:`audio-player__wave-inner audio-player__wave-unplayed ${ae?"is-ready":""}`,ref:f,children:R}),n.jsx("div",{className:`audio-player__wave-inner audio-player__wave-played ${ae?"is-ready":""}`,ref:s,style:O,children:R})]})]})}const H5={idle:"\uB300\uAE30",resolving:"\uB9AC\uC18C\uC2A4 \uB9E4\uD551 \uC911\u2026",checking_exists:"\uD30C\uC77C \uC874\uC7AC \uD655\uC778\u2026",getting_signed_url:"\uC11C\uBA85 URL \uC870\uD68C\u2026",downloading:"\uB2E4\uC6B4\uB85C\uB4DC \uC911\u2026",measuring_duration:"\uC624\uB514\uC624 \uAE38\uC774 \uCE21\uC815\u2026",ready:"\uC900\uBE44 \uC644\uB8CC",error:"\uC624\uB958 \uBC1C\uC0DD"};function Lo(e,t){return new Promise((a,r)=>{const s=document.createElement("audio");let i=!1;const l=()=>{try{s.src=""}catch{}},c=()=>{if(i)return;i=!0;const u=isFinite(s.duration)&&s.duration||0;l(),a(u)},d=u=>{i||(i=!0,l(),t.rejectOnError?r(new Error(u)):a(0))};s.addEventListener("loadedmetadata",c),s.addEventListener("error",()=>d("audio load failed")),setTimeout(()=>d("audio load timeout"),t.timeoutMs),s.src=e})}const z5=2e3;function Uc(e,t=z5){return new Promise(a=>{let r=!1;const s=()=>{r||(r=!0,a())};e.addEventListener("canplay",s,{once:!0}),e.addEventListener("error",s,{once:!0}),setTimeout(s,t)})}function V5({showSoundWaveForm:e,showNoiseWaveForm:t,timeoutMs:a=2500}){const r=o.useRef(!1),s=o.useRef([]),i=o.useCallback(d=>{if(r.current=d,!d||!s.current.length)return;const u=s.current;s.current=[];for(const p of u)p(!0)},[]),l=o.useCallback(()=>{r.current=!1},[]),c=o.useCallback(()=>!e&&!t||r.current?Promise.resolve(!0):new Promise(d=>{const u=m=>{clearTimeout(p),s.current=s.current.filter(f=>f!==u),d(m)},p=setTimeout(()=>u(!0),a);s.current.push(u)}),[e,t,a]);return o.useEffect(()=>()=>{const d=s.current;s.current=[];for(const u of d)u(!1)},[]),{onReadyChange:i,waitForReady:c,markNotReady:l}}function W5(){const e=o.useRef([]),t=o.useCallback(s=>(e.current.push(s),s),[]),a=o.useCallback(s=>{const i=new Set([...s].filter(Boolean));e.current=e.current.filter(l=>{if(i.has(l))return!0;try{URL.revokeObjectURL(l)}catch{}return!1})},[]),r=o.useCallback(()=>{a([])},[a]);return o.useEffect(()=>()=>{for(const s of e.current)try{URL.revokeObjectURL(s)}catch{}e.current=[]},[]),{track:t,keepOnly:a,revokeAll:r}}function q5({offsetY:e=8}={}){const t=o.useRef(null),[a,r]=o.useState(null),s=o.useCallback(()=>r(null),[]),i=o.useCallback(()=>{try{const l=t.current?.getBoundingClientRect();if(!l)return;r({left:l.left,right:l.right,width:l.width,height:l.height,x:l.x,top:l.top+e,bottom:l.bottom+e,y:l.y+e,toJSON:l.toJSON.bind(l)})}catch{}},[e]);return o.useEffect(()=>{if(a)return document.addEventListener("mousedown",s),()=>document.removeEventListener("mousedown",s)},[a,s]),{ref:t,rect:a,show:i,hide:s}}function U5({currentTime:e,sources:t,index:a,audioDuration:r}){const s=a||0,i=Array.isArray(t)&&t.length>0?t[s]:void 0,l=i?i.duration||r||0:r||0;if(!(l>0))return 0;const c=Number.isFinite(e)?e:0;return Math.max(0,Math.min(1,c/l))}function G5(e,t){if(!Array.isArray(e))return null;const a=t||0;return a<e.length-1?a+1:null}function K5({ended:e,completedByEnd:t}){return!!e||!!t}function Y5(e){return e.map((t,a)=>({src:t.src,label:String(a+1),color:void 0,duration:t.duration||0}))}function Z5(e){return e.reduce((t,a)=>t+(a.duration||0),0)}function X5(e,t,a){const r=Array.isArray(e)?e:e?[e]:[],s=[];for(const i of r)if(i){if(typeof i=="object"&&i!==null&&"src"in i&&i.src){const l=i;s.push({code:l.code??null,src:l.src});continue}if(typeof i=="string"&&(i.startsWith("http")||i.includes("/"))){s.push({code:null,src:i});continue}if(typeof i=="string"||typeof i=="number"){const l=String(i),c=a(l,t);c&&s.push({code:l,resolvedPath:c})}}return s}function J5(e){if(!e)return 0;const t=e.duration;if(Number.isFinite(t)&&t>0)return t;if(t===0)return 0;try{const a=e.seekable;if(a&&a.length>0){const r=a.end(a.length-1);if(Number.isFinite(r)&&r>0)return r}}catch{}return null}function Q5({audioRef:e,fillRef:t,waveProgressRef:a,sourcesRef:r,currentIndexRef:s}){const i=o.useRef(null),l=o.useCallback(()=>{i.current!==null&&(cancelAnimationFrame(i.current),i.current=null)},[]),c=o.useCallback(()=>{if(i.current!==null)return;const u=()=>{try{const p=e.current,m=Array.isArray(r.current)?r.current[s.current||0]:void 0,f=m&&Number.isFinite(m.duration)&&(m.duration??0)>0?0:J5(p),g=t.current;if(f===null)try{g&&g.style.visibility!=="hidden"&&(g.style.visibility="hidden")}catch{}else{const y=U5({currentTime:p&&typeof p.currentTime=="number"?p.currentTime:0,sources:r.current,index:s.current,audioDuration:f});try{g&&(g.style.visibility&&(g.style.visibility=""),g.style.left=`${y*100}%`)}catch{}try{a.current?.style.setProperty("--progress",String(y))}catch{}}}catch{}i.current=requestAnimationFrame(u)};i.current=requestAnimationFrame(u)},[e,t,a,r,s]),d=o.useCallback(u=>{l();try{t.current&&(t.current.style.visibility="",t.current.style.left=`${u*100}%`)}catch{}try{a.current?.style.setProperty("--progress",String(u))}catch{}},[l,t,a]);return o.useEffect(()=>l,[l]),{start:c,stop:l,settleTo:d}}function $o({btnLabel:e,soundSrc:t,bucketPath:a,onDone:r,disabled:s=!1,ttsText:i=null,className:l,showSoundWaveForm:c=!0,showNoiseWaveForm:d=!0}){const{t:u}=be.useTranslation(),p=e,m=ar(),f=o.useRef(m?.registerAnalyser);o.useEffect(()=>{f.current=m?.registerAnalyser});const g=o.useRef(null),y=o.useRef(null),h=o.useRef(null),w=W5(),C=o.useRef(null),b=o.useRef(!1),x=o.useRef(0),v=o.useRef(null),{ref:A,rect:k,show:N,hide:_}=q5();o.useEffect(()=>()=>{f.current?.("main",null),f.current?.("noise",null)},[]);const[B,E]=o.useState(!1),[P,H]=o.useState("idle"),[S,V]=o.useState("stopped"),j=o.useRef("stopped");o.useEffect(()=>{j.current=S},[S]);const[M,I]=o.useState(0),[G,Q]=o.useState("active"),z=o.useRef(!1);o.useEffect(()=>{if(G!=="playMode"||!z.current)return;z.current=!1;const K=typeof document<"u"?document.activeElement:null;if(K&&K!==document.body)return;const ce=h.current?.querySelectorAll("button")[1];try{ce?.focus()}catch{}},[G]);const[q,W]=o.useState(null),[L,D]=o.useState(null),[F,R]=o.useState(0),[O,$]=o.useState(!1),[Y,ee]=o.useState(0),Z=m?.playbackRate??1,ae=m?.mainVolume??1,_e=m?Do(m.settings):0,re=m?Hc(m.settings):ae,[ue,U]=o.useState("idle"),[oe,de]=o.useState(""),[ve]=o.useState("top"),ge=o.useRef(null),Se=o.useRef(0),Ce=o.useRef(null),{start:Ee,stop:Be,settleTo:Re}=Q5({audioRef:g,fillRef:y,waveProgressRef:Ce,sourcesRef:ge,currentIndexRef:Se}),{onReadyChange:Le,waitForReady:me,markNotReady:ke}=V5({showSoundWaveForm:c,showNoiseWaveForm:d}),Me=o.useRef(null),Te=o.useRef(s),Ae=o.useRef(r),ie=o.useRef(null),ye=o.useRef(!1),[se,Ie]=o.useState(!1),ze=o.useCallback(K=>{ye.current=K,Ie(K)},[]),Ge=o.useRef(null),{activeNoiseUrl:Ze,noiseSettingsRef:Ye,fadeInNoise:Ke,fadeOutNoise:Oe}=$5({noisePlayer:m,audioRef:g,playbackStateRef:j}),{startTTS:Pe,stopTTS:lt}=R5({ttsText:i,playbackRate:Z,mainVolume:re,fillRef:y,waveProgressRef:Ce,setProgress:I,setPlaybackState:V,setStateLocal:Q,fadeInNoise:Ke,fadeOutNoise:Oe,noiseSettingsRef:Ye,onDoneRef:Ae,handleEndRef:Ge});o.useEffect(()=>{mt.current=lt});const wt=K=>{if(typeof window>"u"||!window.speechSynthesis){try{de(u("training.ttsUnavailable","\uC774 \uAE30\uAE30\uC5D0\uC11C\uB294 \uC74C\uC131\uC744 \uB4E4\uB824\uC904 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4."))}catch{}Pe(K);return}ut("tts"),Pe(K)},Dt=Array.isArray(t)?t.filter(Boolean):t?[t]:[],Nt=(!Dt||Dt.length===0)&&!!i,nt=Array.isArray(q)&&q.length>0?q:Array.isArray(L)&&L.length>0?L:null,Je=Math.max(Array.isArray(nt)?nt.length:0,Dt.length),at=o.useRef(!0);o.useEffect(()=>(at.current=!0,()=>{at.current=!1}),[]);const Qe=o.useRef(0),We=()=>{Qe.current+=1,x.current+=1},mt=o.useRef(null),He=o.useRef(null),st=o.useRef(null),Ct=o.useRef(null);Ct.current||(Ct.current=()=>{st.current=null;const K=g.current;if(He.current==="audio"&&K&&!K.paused){Qe.current+=1,x.current+=1;try{K.pause()}catch{}at.current&&V("paused")}else if(He.current==="tts")try{mt.current?.()}catch{}});const ut=K=>{He.current=K,st.current=Ga(Ct.current)},vt=()=>{st.current?.(),st.current=null};o.useEffect(()=>()=>{Ct.current&&Ka(Ct.current)},[]);const ot=o.useCallback(async(K,ce=3,he=50)=>{const J=Qe.current;for(let ne=0;ne<ce;ne++){if(!at.current||J!==Qe.current)return!1;try{return ut("audio"),await K.play(),!0}catch(Ne){if((Ne instanceof Error||typeof Ne=="object"&&Ne&&"name"in Ne?Ne.name:void 0)==="AbortError"){if(J!==Qe.current)return!1;await new Promise(qe=>setTimeout(qe,he));continue}try{de(u("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}return!1}}try{de(u("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}return!1},[u]),Fe=o.useCallback(()=>{const K=g.current;if(!K)return;const ce=()=>{V("playing"),Q("playMode"),$(!0),Ee();try{Dr(),Pa(K).then(Ne=>{if(at.current)try{f.current?.("main",Ne)}catch{}})}catch{}const ne=Ye.current;ne?.enabled&&(ne?.volume??0)>0&&Ke(ne.volume)},he=()=>{K5({ended:!!K?.ended,completedByEnd:ye.current})||(V("paused"),Be(),Oe())},J=()=>{try{const ne=ge.current,Ne=G5(ne,Se.current);if(Ne!==null){Se.current=Ne,R(Ne),$(!0);const qe=ne?.[Ne]&&ne[Ne].src;if(qe&&K){K.src=qe,K.load(),ot(K).catch(()=>{});return}}}catch{}V("stopped"),I(1);try{if(K)try{K.currentTime=0}catch{}}catch{}Be(),$(!1),Oe();try{!Te.current&&Ge.current&&Ge.current()}catch{}};return K.addEventListener("play",ce),K.addEventListener("pause",he),K.addEventListener("ended",J),()=>{try{K.removeEventListener("play",ce),K.removeEventListener("pause",he),K.removeEventListener("ended",J),Be()}catch{}}},[Ke,Oe,ot,Ye,Ee,Be]);o.useEffect(()=>Fe(),[Fe]),o.useEffect(()=>{Te.current=s},[s]),o.useEffect(()=>{Ae.current=r},[r]),o.useEffect(()=>{if(s||G!=="active")return;const K=v.current;if(!K)return;let ce=null;const he=requestAnimationFrame(()=>{try{const J=K.getTotalLength();if(!J)return;const ne=J*.2;K.style.strokeDasharray=`${J-ne} ${ne}`;const Ne="triFlow_"+Math.random().toString(36).slice(2);ce=document.createElement("style"),ce.textContent=`@keyframes ${Ne}{from{stroke-dashoffset:0}to{stroke-dashoffset:-${J}}}`,document.head.appendChild(ce),K.style.animation=`${Ne} 2.4s linear infinite`}catch{}});return()=>{cancelAnimationFrame(he),ce?.remove()}},[G,s]),o.useEffect(()=>{ge.current=q},[q]),o.useEffect(()=>{Se.current=F},[F]),o.useEffect(()=>{const K=h.current,ce=C.current;if(!K||!ce)return;let he=null;const J=32,ne=60,Ne=()=>{try{const tt=Array.from(K.querySelectorAll(":scope > .button"));let dt=0;tt.forEach(mn=>{if(mn===ce)return;const dr=mn.getBoundingClientRect();dt+=dr.width});const kt=K.getBoundingClientRect().width,qt=Math.max(0,Math.floor(kt-dt-8)),Rt=Je;if(!Rt||qt<=0){Array.from(ce.children).forEach(mn=>{try{mn.style.width=""}catch{}});return}let pn=Math.floor(qt/Rt);pn>ne&&(pn=ne),pn<J&&(pn=Math.max(J,Math.floor(qt/Rt))),Array.from(ce.querySelectorAll(".button")).forEach(mn=>{try{mn.style.width=`${pn}px`}catch{}})}catch{}},qe=requestAnimationFrame(Ne);try{he=new ResizeObserver(()=>{requestAnimationFrame(Ne)}),he.observe(K),he.observe(ce),window.addEventListener("resize",Ne)}catch{}return()=>{try{cancelAnimationFrame(qe)}catch{}try{he&&(he.disconnect(),he=null)}catch{}try{window.removeEventListener("resize",Ne)}catch{}}},[q,L,Je]),o.useEffect(()=>()=>{try{Me.current&&(clearTimeout(Me.current),Me.current=null),ie.current&&(clearTimeout(ie.current),ie.current=null)}catch{}},[]);const rt=(K,ce)=>{W(K),ee(ce),ke(),D(Y5(K)),ge.current=K},bt=async(K,ce)=>{ze(!1),b.current=!1,K.src=ce,K.load(),await Uc(K),await me()!==!1&&(E(!1),await ot(K),Q("playMode"),R(0),$(!0))},zt=async(K,ce=!1)=>{const he=g.current;E(!0),H("measuring_duration");try{const J=await Lo(K,{timeoutMs:1e4,rejectOnError:!0});rt([{src:K,objectUrl:null,duration:J}],J),H("ready"),ce&&he&&await bt(he,K)}finally{b.current=!1,E(!1)}},et=async(K,ce=!1)=>{const he=g.current;E(!0),H("measuring_duration");try{const J=await Promise.all(K.map(Ne=>Lo(Ne,{timeoutMs:1e4})));if(!at.current)return;const ne=K.map((Ne,qe)=>({src:Ne,objectUrl:null,duration:J[qe]||0}));rt(ne,Z5(ne)),H("ready"),ce&&he&&ne.length>0&&await bt(he,ne[0].src)}finally{b.current=!1,E(!1)}},Yt=async(K=!1,ce=!0)=>{const he=g.current,J=t?Array.isArray(t)?t:[t]:[];if(!J||J.length===0||!J.some(Boolean))return!1;if(b.current)return null;b.current=!0,ce&&E(!0),H("resolving");try{const ne=X5(t,a,zs),Ne=[];let qe=0;for(const tt of ne){let dt=tt.src??null,kt=null;if(!dt&&tt.resolvedPath){try{H("getting_signed_url"),dt=await Vs(tt.resolvedPath)}catch{dt=null}if(!at.current)return!1;if(!dt)try{H("downloading");const Rt=await Ws(tt.resolvedPath);if(!at.current)return!1;if(Rt){const pn=Rt instanceof Blob?Rt:new Blob([Rt]);kt=w.track(URL.createObjectURL(pn)),dt=kt}}catch{H("error");try{de(u("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4.")),Q("active")}catch{}}}if(!dt)continue;let qt=0;try{H("measuring_duration"),qt=await Lo(dt,{timeoutMs:3e3})}catch{qt=0}if(!at.current){if(kt)try{URL.revokeObjectURL(kt)}catch{}for(const Rt of Ne)if(Rt.objectUrl)try{URL.revokeObjectURL(Rt.objectUrl)}catch{}return!1}qe+=qt||0,Ne.push({...tt,src:dt,objectUrl:kt,duration:qt})}if(rt(Ne,qe),Ne.length>0&&K&&he){const tt=Ne[0];ze(!1);try{w.keepOnly(Ne.map(dt=>dt.objectUrl))}catch{}if(H("ready"),b.current=!1,tt.src&&he)try{if(he.src=tt.src,he.load(),await Uc(he),await me()===!1)return!1;ce&&E(!1),he&&await ot(he)}catch{ce&&E(!1)}else ce&&E(!1);Q("playMode"),R(0),$(!0)}return Ne.length>0}finally{b.current=!1,ce&&E(!1),H(ne=>ne==="ready"?"ready":"idle")}},kn=async()=>{const K=g.current;if(!(!K&&!Nt)){if(Nt){const ce=window.speechSynthesis;if(G==="active"){const he=Br(),J=Array.isArray(i)?i.filter(Boolean):i?[i]:[];if(he&&J.length>0){Q("load"),E(!0),H("resolving"),b.current=!0;try{const ne=await Promise.all(J.map(Ne=>Promise.resolve(he(Ne))));ne.length>1?await et(ne,!0):await zt(ne[0],!0)}catch{b.current=!1,E(!1),Q("active"),wt(J.length>0?J:void 0)}return}wt(J.length>0?J:void 0);return}if(G==="playMode"){const he=!!ce&&(ce.speaking||ce.paused)&&!(K&&(K.currentSrc||K.getAttribute("src")));if(K&&!he){if(K.paused){if(ye.current){await Lt();return}await ot(K),V("playing")}else We(),K.pause(),V("paused");return}try{if(ce&&ce.paused)try{ut("tts"),ce.resume(),V("playing")}catch{}else try{ce.pause(),V("paused")}catch{}}catch{}}return}if(G==="active"){if(s&&Array.isArray(ge.current)&&ge.current.length>0){const he=ge.current[0];try{if(he.src&&K)try{K.src=he.src,K.load(),K&&await ot(K)}catch{}Q("playMode"),R(0),$(!0);return}catch{}}Q("load");let ce;try{ce=await Yt(!0)}catch{ce=!1}if(ce===!1&&at.current){try{de(u("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}Q("active")}return}if(G!=="load"&&(G==="playMode"||G==="active"))try{if(K&&K.paused){if(ye.current){await Lt();return}K&&await ot(K),V("playing")}else K&&(We(),K.pause(),V("paused"))}catch(ce){(ce instanceof Error||typeof ce=="object"&&ce&&"name"in ce)&&ce.name}}},Lt=async()=>{const K=g.current;if(K)try{const ce=ge.current;if(Array.isArray(ce)&&ce.length>1){await $t(0);return}ze(!1);try{K.currentTime=0}catch{}K&&await ot(K),V("playing"),Q("playMode")}catch{}},nn=()=>{if(We(),vt(),Nt){lt();return}const K=g.current;try{if(K){try{K.pause()}catch{}try{K.currentTime=0}catch{}}}catch{}Oe(),V("stopped"),Q("active"),I(0),$(!1)},an=async(K,{sameSegment:ce=!1}={})=>{const he=++x.current,J=g.current,ne=ge.current?.[K]?.src;try{if(ze(!1),R(K),$(!0),Se.current=K,!ne||!J||(ce||ke(),J.src=ne,J.load(),!ce&&await me()===!1)||he!==x.current||(await ot(J),he!==x.current))return;V("playing"),Q("playMode")}catch{}},rn=async()=>{const K=ge.current,ce=Se.current||0;if(!K||ce<=0){await Lt();return}await an(ce-1)},Mn=async()=>{const K=ge.current,ce=Se.current||0;if(!K||ce>=K.length-1){nn();return}await an(ce+1)},on=()=>{if(ye.current)return;const K=200,ce=340;ze(!0),We(),vt();try{I(1)}catch{}Re(1);try{U("hold")}catch{}try{const he=g.current,J=Nt&&!!he?.src;if(!Nt||J){if(he){he.pause();try{he.currentTime=0}catch{}}}else lt();Oe()}catch{}try{V("stopped")}catch{}if($(!1),!Te.current)try{ie.current&&(clearTimeout(ie.current),ie.current=null),ie.current=setTimeout(()=>{try{U("out")}catch{}ie.current=setTimeout(()=>{try{typeof Ae.current=="function"&&Ae.current(!0)}catch{}try{U("idle")}catch{}ie.current=null},ce)},K)}catch{}};o.useEffect(()=>{Ge.current=on});const Ln=o.useCallback(()=>de(""),[]),$t=async K=>{(ge.current||[])[K]&&await an(K,{sameSegment:K===Se.current})},gt=S==="playing",sn=o.useMemo(()=>{if(!L||L.length<=1)return L;const K=L[F];return K?[K]:L},[L,F]),Xt=s===!0;o.useEffect(()=>{try{const K=g.current;K&&typeof K.playbackRate=="number"&&(K.playbackRate=Z||1)}catch{}},[Z]);const St=o.useRef({raf:null,timer:null});o.useEffect(()=>{const K=g.current;if(!K)return;const ce=Math.max(0,Math.min(1,re)),he=St.current,J=()=>{he.raf!==null&&(cancelAnimationFrame(he.raf),he.raf=null),he.timer!==null&&(clearTimeout(he.timer),he.timer=null)};J();const ne=Ia(K);if(K.paused||Math.abs(ne-ce)<.001||typeof requestAnimationFrame!="function"){try{Nn(K,ce)}catch{}return}const Ne=performance.now(),qe=()=>{const tt=Math.min(1,(performance.now()-Ne)/150);try{Nn(K,ne+(ce-ne)*tt)}catch{}he.raf=tt<1?requestAnimationFrame(qe):null};return he.raf=requestAnimationFrame(qe),he.timer=setTimeout(()=>{J();try{Nn(K,ce)}catch{}},200),J},[re]);const ln=ue==="hold",Vt=ue==="out",Wt=G==="playMode"&&!B&&!se||ln||Vt,un=S!=="stopped"||ln||Vt,dn=S==="paused",le=Math.max(0,Math.min(100,(M||0)*100)),xe=De("audio-player__fill",Wt?"is-visible":"",un?"is-expanded":"",dn?"is-paused":"",Vt?"is-out":"");return n.jsxs("div",{className:`audio-player ${Xt?"is-disabled":""}${l?` ${l}`:""}`,role:"group","aria-label":typeof p=="string"?p:void 0,children:[n.jsxs("div",{className:`audio-player__panel ${gt?"is-playing":""} ${B?"is-loading":""} ${G!=="default"?"is-revealed":""}`,children:[B?n.jsxs("div",{className:"audio-player__loading",role:"status","aria-live":"polite",children:[n.jsx("span",{className:"audio-player__loading-spinner","aria-hidden":"true"}),n.jsx("span",{className:"audio-player__loading-text",children:u(`training.audioStatus.${P}`,{defaultValue:H5[P]})})]}):null,G==="active"?n.jsx("button",{className:"audio-player__button",type:"button",disabled:Xt,onClick:()=>{z.current=Ja(),_(),kn()},"aria-label":typeof p=="string"?p:u("training.listen","\uB4E3\uAE30"),onMouseEnter:N,onMouseLeave:_,onFocus:N,onBlur:_,children:n.jsx("span",{ref:A,className:"audio-player__button-triangle-wrap",children:n.jsx("svg",{className:"audio-player__button-triangle",viewBox:"0 0 24 24","aria-hidden":"true",children:n.jsx("path",{ref:v,d:"M13.2 7.7 L16.5 9.85 Q20.2 12 16.5 14.15 L10 18.3 Q7 19.7 7 16.3 L7 7.7 Q7 4.3 10 5.7 L13.2 7.7"})})})}):null,k&&n.jsx(gn,{anchorRect:k,text:typeof p=="string"&&p?p:u("training.listenLabel","\uBB38\uC7A5 \uB4E3\uAE30"),offset:8}),n.jsxs("div",{className:`audio-player__play ${G==="playMode"||gt?"is-visible":""}`,inert:!(G==="playMode"||gt)||void 0,children:[n.jsxs("div",{ref:h,className:"audio-player__buttons",children:[n.jsx(pe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"skip-back",onClick:rn,ariaLabel:u("training.prev","\uC774\uC804"),width:"60px",variant:"transparent-white","aria-hidden":"true",tabIndex:-1,disabled:G!=="playMode"}),n.jsx(pe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:gt?"pause":"play",onClick:kn,ariaLabel:u("common.playPause","\uC7AC\uC0DD / \uBA48\uCDA4"),"aria-pressed":gt,width:"60px",variant:"transparent-white",disabled:G!=="playMode"}),n.jsx(pe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"square",onClick:nn,ariaLabel:u("training.stop","\uC815\uC9C0"),width:"60px",variant:"transparent-white","aria-hidden":"true",tabIndex:-1,disabled:G!=="playMode"}),Je>1?n.jsx("div",{ref:C,className:"audio-player__source-buttons",children:Array.from({length:Je}).map((K,ce)=>n.jsx(pe,{htmlType:"button",size:32,type:"dot",shape:"pill",useBorder:!1,label:String(ce+1),onClick:()=>{try{$t(ce)}catch{}},ariaLabel:u("training.sourcePlay",{n:ce+1}),variant:"transparent-white",selected:O&&F===ce,disabled:G!=="playMode"||!(Array.isArray(q)&&q[ce]),showTooltipInfo:!0},ce))}):null,!Array.isArray(q)||q.length<=1?n.jsx(pe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"repeat",onClick:Lt,ariaLabel:u("common.replay","\uB2E4\uC2DC\uB4E3\uAE30"),width:"60px",variant:"transparent-white",disabled:G!=="playMode"}):null,n.jsx(pe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"skip-forward",onClick:Mn,ariaLabel:u("training.next","\uB2E4\uC74C"),width:"60px",variant:"transparent-white","aria-hidden":!0,tabIndex:-1,disabled:G!=="playMode"}),n.jsx(pe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"check",onClick:on,ariaLabel:u("common.done","\uC644\uB8CC"),width:"60px",variant:"transparent-white",disabled:G!=="playMode"})]}),n.jsxs("div",{className:"audio-player__slider",children:[n.jsx("div",{className:xe,ref:y,style:{left:`${le}%`},"aria-hidden":"true"}),(c||d)&&n.jsx(O5,{segments:sn,progress:M,totalDuration:Y,waveProgressRef:Ce,showSoundWaveForm:c,noiseSrc:d&&m?.settings.enabled&&_e>0?Ze:null,noiseRatio:m?ja(m.settings):0,noiseSpeed:m?.settings.speed??1,mainVolume:ae,onReadyChange:Le})]})]}),n.jsx("audio",{ref:g,crossOrigin:"anonymous",preload:"auto"})]}),!c&&n.jsxs("p",{className:"audio-player__no-waveform caption-1",children:[n.jsx(Ue,{icon:"triangle-alert",size:14}),u("training.noSoundWaveform","\uC18C\uB9AC \uBE44\uAD50 \uBB38\uC81C\uB294 \uC6E8\uC774\uBE0C\uD3FC\uC744 \uD45C\uD604\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.")]}),n.jsx(ea,{message:oe,position:ve,onClose:Ln})]})}function or(e){const{t}=be.useTranslation(),{text:a,label:r,anchorRect:s=null,onClose:i,closeOnOutsideClick:l=!0,isMobilePopup:c=!1}=e||{},[d,u]=o.useState(()=>{try{return localStorage.getItem("tooltip-theme")||"light"}catch{return"light"}});o.useEffect(()=>{try{localStorage.setItem("tooltip-theme",d)}catch{}},[d]);const{increase:p,decrease:m,canIncrease:f,canDecrease:g,fontSize:y,lineHeight:h}=Qi({storageKey:"tooltip-fontScale"}),w=o.useCallback(()=>u(A=>A==="dark"?"light":"dark"),[]),C=o.useCallback(A=>{try{A.stopPropagation()}catch{}try{typeof i=="function"&&i()}catch{}},[i]),b=Array.isArray(a)?a:typeof a>"u"||a===null?[]:[a],x={fontSize:`${y}px`,lineHeight:`${h}px`,"--tt-line-height":`${h}px`,"--tt-marker-size":"28px"},v=n.jsxs("div",{className:`tooltip-textbox__root ${d==="dark"?"is-dark":""}`,children:[n.jsxs("div",{className:"tooltip-textbox__box",children:[r&&n.jsx("div",{className:"tooltip-textbox__label body-2b",children:r}),n.jsx("div",{className:"tooltip-textbox__text body-1",style:x,children:b.map((A,k)=>n.jsxs("div",{className:"tooltip-textbox__line",children:[b.length>1?n.jsx("div",{className:"tooltip-textbox__marker",children:n.jsx("span",{className:"tooltip-textbox__line-number button-1",children:k+1})}):null,n.jsx("span",{className:"tooltip-textbox__line-text",children:A})]},k))})]}),n.jsxs("div",{className:"tooltip-textbox__buttons",children:[n.jsx(pe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"minus",onClick:m,ariaLabel:t("training.fontSizeDecrease","\uAE00\uC790 \uD06C\uAE30 \uAC10\uC18C"),variant:d==="dark"?"transparent-white":"transparent-gray",disabled:!g}),n.jsx(pe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"plus",onClick:p,ariaLabel:t("training.fontSizeIncrease","\uAE00\uC790 \uD06C\uAE30 \uC99D\uAC00"),variant:d==="dark"?"transparent-white":"transparent-gray",disabled:!f}),n.jsx(pe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:d==="dark"?"moon":"sun-medium",onClick:w,ariaLabel:t("training.toggleBackground","\uBC30\uACBD \uC804\uD658"),variant:d==="dark"?"transparent-white":"transparent-gray"}),n.jsx(pe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"x",onClick:C,ariaLabel:t("common.close","\uB2EB\uAE30"),variant:d==="dark"?"transparent-white":"transparent-gray"})]})]});return s?n.jsx(Qt,{anchorRect:s,className:`tooltip-textbox ${d==="dark"?"is-dark":""}`,onClose:i,closeOnOutsideClick:l,isMobilePopup:c,ariaLabel:r||t("tooltip.textbox","\uBCF8\uBB38"),children:v}):n.jsx("div",{className:`tooltip-textbox ${d==="dark"?"is-dark":""}`,children:v})}function Gc({state:e="disabled"}){const{t}=be.useTranslation();return n.jsxs("div",{className:`ts-bullet ts-bullet--${e}`,"aria-hidden":!0,children:[n.jsx("div",{className:"bullet__dot",children:n.jsx(Ue,{icon:"chevron-right",label:t("training.next","\uB2E4\uC74C"),className:"bullet__icon",imgClassName:"bullet__icon-img",maskClassName:"bullet__icon-mask",svgClassName:"bullet__icon-svg",wrapperStyle:{},size:20})}),n.jsx("div",{className:"ts-bullet__line"})]})}function Kc(e,t,a){const r=o.useRef(t),s=o.useRef(a);o.useEffect(()=>{r.current=t,s.current=a}),o.useEffect(()=>{if(!e||typeof document>"u")return;let i=null,l=10;const c=()=>{i=null;const d=r.current(),u=d?Array.from(d.querySelectorAll(Cn)).find(p=>!p.closest('[aria-hidden="true"]')):void 0;if(u){try{u.focus()}catch{}if(document.activeElement===u)return}--l>0&&(i=requestAnimationFrame(c))};return i=requestAnimationFrame(c),()=>{i!==null&&cancelAnimationFrame(i);const d=document.activeElement;if(!d||d===document.body||!document.contains(d)||d.closest(".tooltip-content")){const u=s.current();if(u)try{u.focus()}catch{}}}},[e])}function Yc({title:e,children:t,className:a="",state:r="disabled",usePreviewTextBtn:s=!1,onPreviewTextBtn:i,previewText:l=null,useFaded:c,usePlayAllBtn:d=!1,onPlayAll:u,playAllActive:p=!1}){const{t:m}=be.useTranslation(),f=Zt("(max-width: 767px)"),g=`training-step__title h4 ${c&&r==="disabled"?"training-step__title--faded":""} ${a}`.trim(),y=`training-step__title-row training-step__title-row--${r}`.trim(),h=o.useRef(null),[w,C]=o.useState(!1),[b,x]=o.useState(null),[v,A]=o.useState(null);Kc(w&&!!b,()=>{if(typeof document>"u")return null;const E=Array.from(document.querySelectorAll(".tooltip-content"));for(let P=E.length-1;P>=0;P--)if(E[P].querySelector(".tooltip-textbox__root"))return E[P];return null},()=>h.current?.querySelector("button")??null);const k=o.useRef(i);o.useEffect(()=>{k.current=i});const N=o.useMemo(()=>l==null?"":typeof l=="string"||typeof l=="number"?String(l):Array.isArray(l)&&l.every(E=>typeof E=="string"||typeof E=="number")?l.join(""):"",[l]),_=o.useCallback(()=>{C(!1),x(null),A(null)},[]);o.useEffect(()=>{if(!w)return;let E;try{typeof k.current=="function"&&(E=k.current())}catch{}if(E===!1){_();return}A(typeof E<"u"&&E!==null?E:null)},[N]);const B=o.useCallback(()=>{let E;try{typeof i=="function"&&(E=i())}catch{}if(E!==!1){if(A(typeof E<"u"&&E!==null?E:l),!h.current){C(P=>!P);return}if(w)C(!1),x(null),A(null);else{const P=h.current.getBoundingClientRect();x(P),C(!0)}}},[i,l,w]);return n.jsxs("div",{className:y,children:[n.jsx("p",{className:g,children:n.jsx("span",{className:"training-step__title-text",children:e??t})}),s||d?n.jsxs("div",{className:"title-controls",children:[n.jsxs("div",{className:"title-buttons",children:[d&&n.jsx(pe,{htmlType:"button",size:32,type:f?"dot":"bar",icon:"play-circle",label:f?void 0:m("training.playAll","\uBAA8\uB450 \uB4E3\uAE30"),ariaLabel:m("training.playAll","\uBAA8\uB450 \uB4E3\uAE30"),selected:p,onClick:u,variant:r==="disabled"?"disabled":"default",disabled:r==="disabled"||p,onDisabledClick:p&&r!=="disabled"?()=>{}:void 0}),s&&n.jsx("div",{ref:h,children:n.jsx(pe,{htmlType:"button",size:32,type:f?"dot":"bar",icon:"eye",label:f?void 0:m("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),ariaLabel:m("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),onClick:B,className:w?"is-selected":void 0,"aria-expanded":w,"aria-haspopup":"dialog",variant:r==="disabled"?"disabled":"default",disabled:!l&&typeof i!="function"})})]}),w&&n.jsx(or,{text:v??l,label:m("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),anchorRect:b,onClose:_,closeOnOutsideClick:!1,isMobilePopup:!0})]}):null]})}function Ro(e,t){return typeof t!="number"||typeof e!="number"?"disabled":e<t?"done":e===t?"active":"disabled"}function Vn({index:e,stepIndex:t,isLast:a=!1,title:r="",titleProps:s={},children:i,className:l="",onDone:c=void 0,useTitleFaded:d=void 0}){const{t:u}=be.useTranslation(),[p,m]=o.useState(()=>Ro(e,t));o.useEffect(()=>{const A=Ro(e,t);if(A!==p){const k=setTimeout(()=>m(A),0);return()=>clearTimeout(k)}},[e,t,p]);const f=o.useCallback((...A)=>{Ro(e,t)==="done"||p==="done"||typeof c=="function"&&c(...A)},[e,t,p,c]),[g,y]=o.useState(!1),[h,w]=o.useState({text:"",label:"\uBB38\uC7A5 \uB4E3\uAE30",anchorRect:null,backdrop:!1,alignX:null,alignY:null}),C=o.useCallback(A=>{if(!A)return null;try{const k=A;if(typeof A=="object"&&(k.currentTarget||k.target)&&(k.nativeEvent||k.type)){const B=k.currentTarget??k.target;if(B&&typeof B.getBoundingClientRect=="function")return B.getBoundingClientRect()}if(A instanceof DOMRect)return A;const N=A;if(N&&typeof N.getBoundingClientRect=="function")return N.getBoundingClientRect();const _=A?.current;return _&&typeof _.getBoundingClientRect=="function"?_.getBoundingClientRect():null}catch{return null}},[]),b=o.useCallback((A,{text:k="",label:N="\uBB38\uC7A5 \uB4E3\uAE30",backdrop:_=!1,alignX:B="center",alignY:E="top"}={})=>{const P=C(A);w({text:k,label:N,anchorRect:P,backdrop:_,alignX:B,alignY:E}),y(!0)},[C]),x=o.useCallback(()=>{y(!1),w(A=>({...A,anchorRect:null}))},[]),v=o.Children.map(i,A=>{if(o.isValidElement(A)){const k=A;if(typeof k.type=="string")return k;const N=k.props??{},_=typeof N.onDone=="function"?N.onDone:f,B=typeof N.disabled=="boolean";let E=p==="disabled";return B&&(E=!!N.disabled),o.cloneElement(k,{onDone:_,disabled:E,showTooltip:b,hideTooltip:x})}return A});return n.jsxs("div",{className:`training-step training-step--${p} ${a?"training-step--last":""} ${l}`,"aria-current":p==="active",children:[n.jsx(Gc,{state:p}),n.jsxs("div",{className:"training-step__content",children:[n.jsx(Yc,{state:p,title:r,...s,useFaded:d}),v]}),g?n.jsx(Qt,{anchorRect:h.anchorRect,backdrop:h.backdrop,onClose:x,ariaLabel:u("tooltip.textbox","\uBCF8\uBB38"),children:n.jsx(or,{text:h.text,onClose:x})}):null]})}function Zc({context:e,state:t="disabled",theme:a="light"}){const{t:r}=be.useTranslation(),[s,i]=o.useState("disabled"),[l,c]=o.useState(()=>{try{return localStorage.getItem("tooltip-theme")||a}catch{return a}});o.useEffect(()=>{try{localStorage.setItem("tooltip-theme",l)}catch{}},[l]);const d=()=>c(S=>S==="dark"?"light":"dark"),{increase:u,decrease:p,canIncrease:m,canDecrease:f,fontSize:g,lineHeight:y}=Qi({storageKey:"textbox_fontScale"}),[h,w]=o.useState(""),C=o.useRef(null),b=o.useRef(!1),x=o.useCallback(()=>{b.current=Ja()&&!!C.current&&C.current.contains(document.activeElement),i("active")},[]),v=o.useCallback(()=>w(""),[]),A=S=>{try{w(S)}catch{}},k=typeof navigator<"u"&&/Mobi|Android/i.test(navigator.userAgent||"");o.useEffect(()=>{if(t!=="disabled"){const S=setTimeout(()=>i(t),0);return()=>clearTimeout(S)}},[t]);const N=o.useMemo(()=>e&&typeof e=="object"?String(e.sentence??e.text??""):typeof e=="string"?e:"",[e]),[_,B]=o.useState(N);_!==N&&(B(N),i("disabled"));const E=t==="disabled"?s:t,P=E==="disabled"?"training-text-box--disabled":E==="active"?"training-text-box--active":E==="done"?"training-text-box--done":"",H=o.useMemo(()=>({fontSize:`${g}px`,lineHeight:`${y}px`}),[g,y]);return o.useEffect(()=>{if(E==="disabled"||!b.current)return;b.current=!1;const S=document.activeElement;S&&S!==document.body||C.current?.querySelector(".training-text-box__buttons button")?.focus()},[E]),n.jsxs("div",{ref:C,className:`training-text-box ${P} ${E!=="disabled"&&l==="dark"?"is-dark":""}`,children:[E==="disabled"&&n.jsx("div",{className:"training-text-box__preview",children:n.jsx(pe,{htmlType:"button",size:48,type:"bar",onClick:x,icon:"eye",ariaLabel:r("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),label:r("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),useBorder:!1})}),n.jsx("div",{className:"training-text-box__area","aria-hidden":E==="disabled",children:n.jsx("span",{className:"training-text-box__inner h3",style:H,children:N})}),E!=="disabled"&&n.jsxs("div",{className:"training-text-box__buttons","aria-hidden":E==="disabled",children:[n.jsx(pe,{htmlType:"button",size:32,type:"dot",onClick:p,onDisabledClick:()=>A(r("training.fontSizeMin","\uAE00\uC528 \uD06C\uAE30\uAC00 \uCD5C\uC18C\uC785\uB2C8\uB2E4.")),ariaLabel:r("training.fontSizeDecrease","\uAE00\uC790 \uD06C\uAE30 \uAC10\uC18C"),icon:"minus",variant:l==="dark"?"transparent-white":"transparent-gray",disabled:!f,useBorder:!1,showTooltipInfo:!0,...!k&&{width:"60px"}}),n.jsx(pe,{htmlType:"button",size:32,type:"dot",onClick:u,onDisabledClick:()=>A(r("training.fontSizeMax","\uAE00\uC528 \uD06C\uAE30\uAC00 \uCD5C\uB300\uC785\uB2C8\uB2E4.")),ariaLabel:r("training.fontSizeIncrease","\uAE00\uC790 \uD06C\uAE30 \uC99D\uAC00"),icon:"plus",variant:l==="dark"?"transparent-white":"transparent-gray",disabled:!m,useBorder:!1,showTooltipInfo:!0,...!k&&{width:"60px"}}),n.jsx(pe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:l==="dark"?"moon":"sun-medium",onClick:d,ariaLabel:r("training.toggleBackground","\uBC30\uACBD \uC804\uD658"),variant:l==="dark"?"transparent-white":"transparent-gray"})]}),n.jsx(ea,{message:h,position:"top",onClose:v})]})}function Po({index:e,stepIndex:t,isLast:a=!1,title:r,useTitleFaded:s,onDone:i,onChange:l,answer:c,wrongAnswers:d,choices:u,multiSelect:p=!1,correctCount:m=0,useDisabledCovered:f=!1,choiceIcons:g,shuffleChoices:y=!0}){const{t:h}=be.useTranslation(),w=r??h("training.selectConfirm","\uBB38\uC81C\uB97C \uBCF4\uACE0 \uD574\uB2F9\uD558\uB294 \uB0B4\uC6A9\uC744 \uC120\uD0DD\uD558\uC138\uC694."),C=typeof e=="number"?e:-1,b=typeof t!="number"?"disabled":C<t?"done":C===t?"active":"disabled",x=Array.isArray(u)&&u.length?u:typeof c<"u"?[c].concat(Array.isArray(d)?d:[]):void 0,v=d?d.join("||"):"",A=u?u.join("||"):"",[k,N]=o.useState(()=>Array.isArray(x)?y?fa(x):x.slice():void 0);o.useEffect(()=>{Array.isArray(x)&&x.length?N(y?fa(x):x.slice()):N(void 0)},[c,v,A,y]);const[_,B]=o.useState(null),[E,P]=o.useState(()=>new Set);o.useEffect(()=>{B(null),P(new Set)},[A,c,v]);const H=o.useRef(void 0);o.useEffect(()=>{const j=H.current;typeof j=="number"&&typeof t=="number"&&typeof e=="number"&&j>=e&&t<e&&(B(null),P(new Set)),H.current=t},[t,e]);const S=o.useCallback(j=>{if(b!=="active")return;const M=k?.[j];if(M==null)return;const I=M,G=b==="active"||b==="done";if(p){const Q=new Set(E),z=Q.has(I);z?Q.delete(I):Q.add(I),P(Q),typeof l=="function"&&l({selectedValues:[...Q],__ts:Date.now()}),G&&(typeof m=="number"&&m>0?Q.size>=m:!z)&&typeof i=="function"&&b==="active"&&i({selectedValues:[...Q],__ts:Date.now()})}else B(I),typeof l=="function"&&l({selectedIndex:j,selectedValue:I,__ts:Date.now()}),G&&typeof i=="function"&&b==="active"&&i({selectedIndex:j,selectedValue:I,__ts:Date.now()})},[k,b,p,l,i,m,E]),V=`training-step__buttons${Array.isArray(k)&&k.length>3?" training-step__buttons--wrap-3":""}`;return n.jsx(Vn,{index:e,stepIndex:t,isLast:a,title:w,useTitleFaded:s,children:n.jsx("div",{className:V,children:Array.isArray(k)&&k.length>0?k.map((j,M)=>n.jsx(pe,{htmlType:"button",size:56,type:"bar",onClick:()=>S(M),ariaLabel:String(j),label:j,useLabel:!0,icon:g?g[String(j)]:void 0,variant:"default",disabled:b==="disabled",selected:p?E.has(j):_===j,useDisabledCovered:f,minWidth:0},String(j))):null})})}function Io({index:e,stepIndex:t,isLast:a=!1,title:r,onDone:s,onChange:i,context:l,demoSelected:c}){const{t:d}=be.useTranslation(),u=r??d("training.confirmTitle","\uBB38\uC7A5\uC744 \uD655\uC778\uD558\uACE0 \uC798 \uB4E4\uB838\uB294\uC9C0 \uC120\uD0DD\uD558\uC138\uC694."),p=typeof e=="number"?e:-1,m=typeof t!="number"?"disabled":p<t?"done":p===t?"active":"disabled",f=l&&typeof l=="object"?l.sentence||"":typeof l=="string"?l:"",g=l&&typeof l=="object"?l.choices:void 0,[y,h]=o.useState(c??null),w=`${String(f)}\0${JSON.stringify(g??null)}`,[C,b]=o.useState(w);C!==w&&(b(w),c==null&&h(null));const[x,v]=o.useState(c);Object.is(x,c)||(v(c),h(c??null));const A=o.useRef(void 0);o.useEffect(()=>{const B=A.current;typeof B=="number"&&typeof t=="number"&&typeof e=="number"&&B>=e&&t<e&&c==null&&h(null),A.current=t},[t,e,c]);const k=o.useCallback(B=>{const E=typeof B=="object"&&B!==null?Object.assign({},B,{__ts:Date.now()}):{value:B,__ts:Date.now()};typeof i=="function"&&i(E),m==="active"&&typeof s=="function"&&s(E)},[i,m,s]),N=o.useCallback(()=>{m==="active"&&(h(!1),k(!1))},[k,m]),_=o.useCallback(()=>{m==="active"&&(h(!0),k(!0))},[k,m]);return n.jsxs(Vn,{index:e,stepIndex:t,isLast:a,title:u,onDone:s,useTitleFaded:!1,children:[n.jsx(Zc,{context:l,state:m}),n.jsx("div",{className:"training-step__buttons",children:Array.isArray(g)&&g.length>0?g.slice(0,6).map((B,E)=>n.jsx(pe,{htmlType:"button",size:56,type:"bar",onClick:()=>{m==="active"&&(h(E),k&&k(E))},disabled:m==="disabled",ariaLabel:String(B),label:B,variant:m,selected:y===E},E)):n.jsxs(n.Fragment,{children:[n.jsx(pe,{htmlType:"button",size:56,type:"bar",onClick:N,disabled:m==="disabled",icon:"x",ariaLabel:d("training.notHeard","\uC548 \uB4E4\uB838\uC5B4\uC694."),label:d("training.notHeard","\uC548 \uB4E4\uB838\uC5B4\uC694."),variant:"default",selected:y===!1}),n.jsx(pe,{htmlType:"button",size:56,type:"bar",onClick:_,disabled:m==="disabled",icon:"circle",ariaLabel:d("training.heardWell","\uC798 \uB4E4\uB838\uC5B4\uC694."),label:d("training.heardWell","\uC798 \uB4E4\uB838\uC5B4\uC694."),variant:"default",selected:y===!0})]})})]})}function Fo({index:e,stepIndex:t,isLast:a=!1,title:r,onDone:s,btnLabel:i,soundSrc:l,bucketPath:c,usePreviewTextBtn:d,previewText:u=null,onPreviewTextBtn:p,disabled:m,_pageIndex:f,showSoundWaveForm:g,showNoiseWaveForm:y}){const{t:h}=be.useTranslation(),w=r??h("training.listenTitle","\uC81C\uC2DC\uD558\uB294 \uBB38\uC7A5\uC744 \uB4E4\uC5B4\uC8FC\uC138\uC694."),C=m??(typeof t=="number"&&typeof e=="number"?e>t:!1);return n.jsx(Vn,{index:e,stepIndex:t,isLast:a,title:w,onDone:s,titleProps:{usePreviewTextBtn:d,previewText:u,onPreviewTextBtn:p},children:n.jsx($o,{soundSrc:l,ttsText:l?null:u??w,bucketPath:c,btnLabel:i||h("training.listenButton","\uBB38\uC7A5 \uB4E3\uAE30"),disabled:C,className:"training-step__listen-sticky",showSoundWaveForm:g,showNoiseWaveForm:y},`audio-p${f??0}-s${e}`)})}const e3=[];function Oo({index:e,stepIndex:t,isLast:a=!1,title:r,onDone:s,onChange:i,context:l=e3}){const{t:c}=be.useTranslation(),d=r??c("training.orderListDefault","\uBB38\uC7A5\uC744 \uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uBC30\uCE58\uD558\uC138\uC694."),u=L=>typeof L=="string"?L:L&&(L.context||L.sentence||L.question||"")||"",[p,m]=o.useState(Array.isArray(l)?l:[]),[f,g]=o.useState(()=>(p||[]).map((L,D)=>({id:D,text:u(L)}))),y=o.useMemo(()=>typeof t!="number"||typeof e!="number"?"disabled":e<t?"done":e===t?"active":"disabled",[t,e]),h=y!=="disabled",w=o.useRef(void 0);o.useEffect(()=>{if(w.current===l)return;w.current=l;const L=Array.isArray(l)?l:[];m(L);const D=(F=>{const R=(F||[]).map((ee,Z)=>({id:Z,text:u(ee)}));if(R.length<=1)return R;const O=(ee,Z)=>{if(ee.length!==Z.length)return!1;for(let ae=0;ae<ee.length;ae++)if(ee[ae].text!==Z[ae].text)return!1;return!0};let $=fa(R),Y=0;for(;O($,R)&&Y<20;)$=fa(R),Y+=1;return $})(L);g(D);try{if(typeof i=="function"){const F=D.filter((R,O)=>R.text===u(L[O])).length;i({shuffled:D,score:F,total:(L||[]).length,initial:!0,__ts:Date.now()})}if(typeof s=="function"&&y==="active"){const F=D.filter((R,O)=>R.text===u(L[O])).length;s({shuffled:D,score:F,total:(L||[]).length,initial:!0,__ts:Date.now()})}}catch{}},[l]);const C=(L,D)=>{const F=[...f],R=L+D;if(R<0||R>=F.length)return;const O=F[R];F[R]=F[L],F[L]=O,M(F);try{if(typeof s=="function"&&y==="active"){const $=F.filter((Y,ee)=>Y.text===u(p[ee])).length;s({shuffled:F,score:$,total:(p||[]).length,__ts:Date.now()})}}catch{}},[b,x]=o.useState(null),v=o.useRef(null),A=o.useRef(null),k=o.useRef(null),N=o.useRef(null),_=o.useRef(null),B=o.useRef({x:0,y:0}),E=o.useRef(null),P=o.useRef({dx:0,dy:0}),H=()=>{if(E.current!==null)return;const L=()=>{if(!v.current){E.current=null;return}E.current=requestAnimationFrame(L);const D=B.current,F=P.current||{dx:0,dy:0};v.current&&(v.current.style.transform=`translate3d(${D.x-F.dx}px, ${D.y-F.dy}px, 0)`)};E.current=requestAnimationFrame(L)},S=o.useRef(new Map),V=o.useRef(new Map),j=()=>{const L=new Map;return S.current.forEach((D,F)=>{D&&D.getBoundingClientRect&&L.set(F,D.getBoundingClientRect())}),L},M=L=>{const D=j();g(L);try{if(typeof i=="function"){const F=L.filter((R,O)=>R.text===u(p[O])).length;i({shuffled:L,score:F,total:(p||[]).length,__ts:Date.now()})}}catch{}requestAnimationFrame(()=>{const F=j();L.forEach(R=>{const O=D.get(R.id),$=F.get(R.id),Y=S.current.get(R.id);if(!Y||!O||!$)return;const ee=O.top-$.top;ee&&(Y.style.transition="none",Y.style.transform=`translateY(${ee}px)`,requestAnimationFrame(()=>{Y.style.transition="transform 420ms cubic-bezier(.22,.9,.39,1)",Y.style.transform="";const Z=()=>{Y.style.transition="",Y.removeEventListener("transitionend",Z)};Y.addEventListener("transitionend",Z)}))})})},I=(L,D)=>{try{try{D.dataTransfer?.setData("text/plain",String(L))}catch{}try{D.dataTransfer&&(D.dataTransfer.effectAllowed="move")}catch{}try{const F=document.createElement("div");F.style.cssText="position:absolute;top:-9999px;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none;",document.body.appendChild(F),D.dataTransfer?.setDragImage(F,0,0),requestAnimationFrame(()=>{try{document.body.removeChild(F)}catch{}})}catch{}}catch{}x(L);try{const F=f[L],R=document.createElement("div");R.className="order-list__dragging-object order-list__dragging-object--visible",R.textContent=F&&F.text?F.text:"",document.body.appendChild(R),v.current=R;const O=S.current.get(F.id);let $=D.clientX||0,Y=D.clientY||0;try{if(O&&O.getBoundingClientRect){const ue=O.getBoundingClientRect();$=ue.left+ue.width/2,Y=ue.top+ue.height/2}}catch{}const ee=R.getBoundingClientRect(),Z=ee.width/2,ae=ee.height/2;P.current={dx:Z,dy:ae},R.style.transition="none",B.current={x:$,y:Y},R.style.transform=`translate3d(${$-Z}px, ${Y-ae}px, 0)`,requestAnimationFrame(()=>{try{R.style.transition=""}catch{}H()});const _e=ue=>{const U=ue;B.current={x:U.clientX,y:U.clientY},H()};k.current=_e,document.addEventListener("mousemove",_e);const re=ue=>{const U=ue;B.current={x:U.clientX,y:U.clientY},H()};A.current=re,document.addEventListener("dragover",re);try{D.dataTransfer?.setData("text/plain",String(L));try{D.dataTransfer?.setData("application/json",JSON.stringify({idx:L}))}catch{}}catch{}}catch{}},G=(L,D)=>{D.preventDefault();try{D.dataTransfer&&(D.dataTransfer.dropEffect="move")}catch{}try{_.current!==null&&(clearTimeout(_.current),_.current=null);const F=D.currentTarget&&D.currentTarget.closest?D.currentTarget.closest(".order-list__item"):null;if(F&&N.current!==F){if(N.current)try{N.current.classList.remove("drag-over")}catch{}try{F.classList.add("drag-over")}catch{}N.current=F}}catch{}},Q=(L,D)=>{D.preventDefault();const F=D.dataTransfer?.getData("text/plain")||"",R=F?parseInt(F,10):b,O=L;if(typeof R!="number"||isNaN(R)||R===O){x(null),W(),z();return}const $=w2(f,R,O);M($),x(null),z();try{if(typeof s=="function"&&y==="active"){const Y=$.filter((ee,Z)=>ee.text===u(p[Z])).length;s({shuffled:$,score:Y,total:(p||[]).length,__ts:Date.now()})}}catch{}try{requestAnimationFrame(()=>{const Y=document.querySelectorAll(".order-list .order-list__item")[O];if(!Y)return;const ee=Y.querySelector(".order-list__slot")||Y;try{ee.classList.add("pulse"),ee.offsetHeight,ee.classList.add("to-dark");const Z=()=>{ee.classList.remove("pulse","to-dark"),ee.removeEventListener("transitionend",Z)};ee.addEventListener("transitionend",Z)}catch{}})}catch{}W()},z=()=>{if(v.current){try{document.body.removeChild(v.current)}catch{}v.current=null}A.current&&(document.removeEventListener("dragover",A.current),A.current=null),k.current&&(document.removeEventListener("mousemove",k.current),k.current=null),E.current!==null&&(cancelAnimationFrame(E.current),E.current=null)},q=()=>{x(null),W(),z()};o.useEffect(()=>()=>z(),[]);const W=()=>{try{if(_.current!==null&&(clearTimeout(_.current),_.current=null),N.current){try{N.current.classList.remove("drag-over")}catch{}N.current=null}document.querySelectorAll(".order-list .order-list__item").forEach(L=>L.classList.remove("drag-over"))}catch{}};return o.useEffect(()=>{try{const L=Math.max(1,(f||[]).length);f.forEach((D,F)=>{const R=V.current.get(D.id);if(!R)return;let O=50;L>1&&(O=Math.round(F/(L-1)*100));try{R.style.setProperty("--marker-pos",O+"%")}catch{}})}catch{}},[f]),o.useEffect(()=>()=>{z(),_.current!==null&&(clearTimeout(_.current),_.current=null)},[]),n.jsx(Vn,{index:e,stepIndex:t,isLast:a,title:d,children:n.jsx("div",{className:"order-list",children:f.map((L,D)=>{const F=Math.max(1,(f||[]).length),R=F>1?Math.round(D/(F-1)*100):50;return n.jsx("div",{className:"order-list__item",children:n.jsxs("div",{className:"order-list__slot","data-disabled":y==="disabled","aria-disabled":y==="disabled",children:[y!=="disabled"?n.jsx("div",{className:"order-list__marker caption-1",style:{"--marker-pos":R+"%"},ref:O=>{const $=V.current;O?$.set(L.id,O):$.delete(L.id)},children:n.jsx("span",{className:"order-list__slot-number button-1",children:D+1})}):null,n.jsxs("div",{ref:O=>{const $=S.current;O?$.set(L.id,O):$.delete(L.id)},className:`order-list__draggable ${b===D?"dragging":""}`,"data-disabled":y==="disabled","aria-disabled":y==="disabled",tabIndex:y==="disabled"?-1:0,draggable:h,onDragStart:h?O=>I(D,O):void 0,onDragEnter:h?O=>G(D,O):void 0,onDragOver:h?O=>G(D,O):void 0,onDragLeave:h?()=>{try{_.current!==null&&clearTimeout(_.current),_.current=setTimeout(()=>{try{const O=document.querySelectorAll(".order-list .order-list__item");O&&O[D]&&(O[D].classList.remove("drag-over"),N.current===O[D]&&(N.current=null))}catch{}},80)}catch{}}:void 0,onDrop:h?O=>Q(D,O):void 0,onDragEnd:h?q:void 0,children:[n.jsx("span",{className:"order-list__item-text body-2",children:L.text}),h?n.jsxs("span",{className:"order-list__item-buttons",children:[n.jsx(pe,{htmlType:"button",size:32,type:"dot",onClick:()=>C(D,-1),ariaLabel:c("training.up"),icon:"chevron-up",variant:"transparent-gray",width:48,useFaded:"true",disabled:D===0,useBorder:!1,useDisabledInvisible:!0}),n.jsx(pe,{htmlType:"button",size:32,type:"dot",onClick:()=>C(D,1),ariaLabel:c("training.down"),icon:"chevron-down",variant:"transparent-gray",width:48,useFaded:"true",disabled:D===f.length-1,useBorder:!1,useDisabledInvisible:!0})]}):null]})]})},L.id)})})})}const t3=8e3;function n3(e,t){return new Promise(a=>{let r=!1;const s=()=>{r||(r=!0,a())};e.then(s,s),setTimeout(s,t)})}function Xc({index:e,stepIndex:t,isLast:a=!1,title:r,onDone:s,onChange:i,context:l=[],selectable:c=!1,hideLabel:d=!1,hideAudio:u=!1,maxCards:p}){const{t:m}=be.useTranslation(),f=r??m("training.cardInstructions","\uB0B1\uB9D0 \uCE74\uB4DC\uB97C \uBCF4\uACE0 \uC18C\uB9AC\uB97C \uB4E3\uACE0 \uD655\uC778\uD558\uC138\uC694."),g=o.useMemo(()=>Array.isArray(l)?l:l&&l.items||[],[l]),y=p??3,h=(g||[]).slice(0,y);(g||[]).length>y&&console.warn(`TrainingStepCard: ${g.length} items passed but only ${y} shown`);const w=typeof e=="number"?e:-1,C=typeof t!="number"?"disabled":w<t?"done":w===t?"active":"disabled",[b,x]=o.useState(null),v=o.useRef([]),[A,k]=o.useState(!1),N=o.useRef(null),_=o.useRef(!0);o.useEffect(()=>(_.current=!0,()=>{_.current=!1}),[]);const B=o.useMemo(()=>g.map(V=>V?.id??V?.word??"").join("|"),[g]);o.useEffect(()=>{x(null)},[B]);const E=o.useRef(void 0);o.useEffect(()=>{const V=E.current;typeof V=="number"&&typeof t=="number"&&typeof e=="number"&&V>=e&&t<e&&x(null),E.current=t},[t,e]);const P=o.useCallback((V,j)=>{if(c)return;const M={item:V,index:j,__ts:Date.now()};try{typeof i=="function"&&i(M)}catch{}if(C==="active"&&typeof s=="function")try{s(M)}catch{}},[c,i,C,s]),H=o.useCallback(async()=>{if(A||C==="disabled")return;k(!0);let V=!1;const j=new Promise(M=>{N.current=()=>{V=!0,M()}});try{for(let M=0;M<h.length&&!(!_.current||V);M++){const I=v.current[M];I&&await Promise.race([n3(I.play(),t3),j])}}finally{N.current=null,k(!1)}},[A,C,h.length]),S=o.useCallback((V,j)=>{if(C!=="active")return;x(j);const M={selectedValue:V.word||V.title||"",selectedIndex:j,item:V,__ts:Date.now()};try{typeof i=="function"&&i(M)}catch{}if(C==="active"&&typeof s=="function")try{s(M)}catch{}},[i,C,s]);return n.jsx(Vn,{index:e,stepIndex:t,isLast:a,title:f,onDone:s,titleProps:{usePlayAllBtn:!u&&h.length>0,onPlayAll:H,playAllActive:A},children:n.jsx("div",{className:"training-step__cards",onClickCapture:V=>{const j=N.current;if(!j)return;const M=V.target;M&&typeof M.closest=="function"&&M.closest(".training-word-card__bottom")&&j()},children:h.length===0?n.jsx("div",{className:"training-step__empty",children:m("training.noCards","\uCE74\uB4DC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")}):h.map((V,j)=>n.jsx(vo,{ref:M=>{v.current[j]=M},item:V,disabled:C==="disabled",onPlayDone:()=>P(V,j),selectable:c,selected:c&&b===j,onSelect:c?()=>S(V,j):void 0,flipDelay:j*120,hideLabel:d,hideAudio:u},V&&V.id||j))})})}const a3=160,r3={\uBCF4\uCCAD\uAE30:"hearingAid",\uC778\uACF5\uC640\uC6B0:"cochlearImplant"};function o3(e,t){const a=r3[e];return a?t(`device.type.${a}`,{defaultValue:e}):e}const Jc=()=>{};function Sn(e){const t=o.useId();if(!("variant"in e)){const{label:C,sub:b,onClick:x,children:v,align:A="horizontal",icon:k,useFullWidth:N=!1}=e,_=B=>{x&&B.target===B.currentTarget&&(B.key==="Enter"||B.key===" ")&&(B.preventDefault(),x())};return n.jsxs("div",{className:De("panel-row",A==="vertical"?"panel-row--vertical":"",N?"panel-row--label-fixed panel-row--fill":"",x?"panel-row--clickable":""),onClick:x,onKeyDown:x?_:void 0,role:x?"button":void 0,tabIndex:x?0:void 0,children:[k!=null&&n.jsx("div",{className:"panel-row__icon",children:k}),C!=null&&n.jsxs("div",{className:"panel-row__left",children:[n.jsx("div",{className:"panel-row__label body-3",children:C}),b&&n.jsx("div",{className:"panel-row__sub caption-1",children:b})]}),n.jsx("div",{className:"panel-row__right",children:v})]})}if(e.variant==="description")return n.jsx("div",{className:"panel-row panel-row--block",children:n.jsx("p",{className:"panel-row__description body-3",children:e.children})});if(e.variant==="empty")return n.jsx("div",{className:"panel-row panel-row--empty body-3",children:e.children});if(e.variant==="loading")return n.jsx("div",{className:"panel-row panel-row--loading",children:n.jsx(Ea,{size:28})});if(e.variant==="custom"&&!e.label)return n.jsx("div",{className:"panel-row panel-row--block",children:e.children});const{variant:a,label:r,sub:s,onClick:i,required:l,error:c,align:d="horizontal",useFullWidth:u=!1,icon:p}=e,m=a==="button"?void 0:i;let f=null;const g=a==="toggle"?`panel-toggle-${t}`:void 0,y=c?`panel-error-${t}`:void 0;if(a==="toggle"){const C=e;f=n.jsx(Fl,{checked:C.checked,onChange:C.onChange,id:g})}else if(a==="segmented"){const C=e;f=n.jsx(xn,{options:C.options,value:C.value,onChange:C.onChange,size:C.size??40,ariaLabel:r})}else if(a==="dropdown"){const C=e,b=C.dropdowns?.length?n.jsx("div",{className:`panel-row__dropdown-group${u?" panel-row__dropdown-group--full":""}`,children:C.dropdowns.map((x,v)=>n.jsx("div",{className:u?"panel-row__dropdown-item--full":void 0,children:n.jsx(tn,{options:x.options,value:x.value,onChange:x.onChange,placeholder:x.placeholder,block:u,error:!!c,ariaDescribedBy:y,ariaLabel:x.ariaLabel??([r,x.placeholder].filter(Boolean).join(" ")||void 0)})},v))}):n.jsx(tn,{options:C.options??[],value:C.value??"",onChange:C.onChange??Jc,block:u,error:!!c,ariaLabel:r,ariaDescribedBy:y});f=c?n.jsxs("div",{className:`panel-row__dropdown-error-wrap${u?" panel-row__dropdown-error-wrap--full":""}`,children:[b,n.jsx("span",{id:y,className:"caption-1 panel-row__error",role:"alert",children:c})]}):b}else if(a==="button"){const C=e;C.buttons?.length?f=n.jsx("div",{className:"panel-row__button-group",children:C.buttons.map((b,x)=>n.jsx(pe,{htmlType:"button",size:b.btnSize??40,variant:b.btnVariant??"default",disabled:b.disabled,onClick:b.onClick,children:b.label},x))}):f=n.jsx(pe,{htmlType:"button",size:C.btnSize??40,variant:C.btnVariant??"default",disabled:C.disabled,onClick:C.onClick,children:C.buttonLabel})}else if(a==="text"){const C=e;f=n.jsx("span",{className:`panel-row__text body-2${u?" panel-row__text--full":""}`,style:C.valueColor?{color:C.valueColor}:void 0,children:C.value})}else if(a==="input"){const C=e;f=n.jsxs("div",{className:`panel-row__input-wrap${u?" panel-row__input-wrap--full":""}`,children:[n.jsx(zn,{value:C.value,onChange:C.onChange??Jc,onKeyDown:C.onKeyDown,onEnter:C.onEnter,placeholder:C.placeholder,ghostText:C.ghostText,ghostHint:C.ghostHint,inputMode:C.inputMode,readOnly:C.readOnly,disabled:C.disabled,type:C.type,autoComplete:C.autoComplete,maxLength:C.maxLength,showCount:C.showCount,multiline:C.multiline,rows:C.rows,fullWidth:u,error:c,ariaLabel:r,required:l}),C.helperText&&n.jsx("div",{className:"panel-row__helper caption-1",children:C.helperText})]})}else a==="custom"&&(f=e.children);c&&a!=="input"&&a!=="dropdown"&&(f=n.jsxs("div",{className:`panel-row__dropdown-error-wrap${u?" panel-row__dropdown-error-wrap--full":""}`,children:[f,n.jsx("span",{id:y,className:"caption-1 panel-row__error",role:"alert",children:c})]}));const h=a==="input"||a==="dropdown"||(a==="text"||a==="custom")&&u,w=C=>{m&&C.target===C.currentTarget&&(C.key==="Enter"||C.key===" ")&&(C.preventDefault(),m())};return n.jsxs("div",{className:De("panel-row",d==="vertical"?"panel-row--vertical":"",h?"panel-row--label-fixed":"",a==="text"?"panel-row--text":"",m?"panel-row--clickable":""),onClick:m,onKeyDown:m?w:void 0,role:m?"button":void 0,tabIndex:m?0:void 0,children:[p!=null&&n.jsx("div",{className:"panel-row__icon",children:p}),n.jsxs("div",{className:"panel-row__left",children:[g?n.jsxs("label",{htmlFor:g,className:"panel-row__label body-3",children:[r,l&&n.jsx("span",{className:"required-mark",children:"*"})]}):n.jsxs("div",{className:"panel-row__label body-3",children:[r,l&&n.jsx("span",{className:"required-mark",children:"*"})]}),s&&n.jsx("div",{className:"panel-row__sub caption-1",children:s})]}),n.jsx("div",{className:"panel-row__right",children:f})]})}function Qc(e){const t=e.productName||e.brand,a=[e.brand,e.fitType].filter(r=>!!r&&r!==t);return[...new Set(a)].join(" \xB7 ")}function s3({devices:e,onRelease:t,emptyLabel:a}){const{t:r}=be.useTranslation();return n.jsx("div",{className:"panel-row panel-row--device",children:["\uC88C","\uC6B0"].map(s=>{const i=e[s],l=s==="\uC88C"?r("device.direction.left","\uC88C"):r("device.direction.right","\uC6B0");return n.jsxs("div",{className:"panel-row__device-column",children:[n.jsxs("div",{className:"panel-row__device-head",children:[n.jsx("span",{className:"panel-row__device-side body-2b",children:l}),i&&t&&n.jsx(pe,{htmlType:"button",size:32,type:"dot",icon:"x",ariaLabel:`${l} ${r("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C")}`,showTooltipInfo:r("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C"),onClick:()=>t(s)})]}),i?n.jsxs("div",{className:"panel-row__device-info",children:[n.jsxs("span",{className:"panel-row__device-kind",children:[i.device&&n.jsx(ft,{size:"small",variant:ac(i.device),fill:"soft",label:o3(i.device,r)}),Qc(i)&&n.jsx("span",{className:"panel-row__device-detail body-3",children:Qc(i)})]}),n.jsx("span",{className:"panel-row__device-name body-2b",children:i.productName||i.brand}),go(i.wornYear,i.wornMonth,i.wornDay)&&n.jsx("span",{className:"panel-row__device-date caption-1",children:r("customers.device.wornSince",{date:go(i.wornYear,i.wornMonth,i.wornDay)})})]}):n.jsx("span",{className:"panel-row__device-empty body-3",children:a??r("customers.device.notRegistered","\uBBF8\uB4F1\uB85D")})]},s)})})}function sr({title:e,icon:t,disc:a,actions:r,size:s="medium",minHeight:i,maxWidth:l,className:c,scrollable:d,scrollbarGutter:u="auto",compactRows:p=!1,useBorder:m=!0,useBg:f=!0,useRowBorder:g=!0,labelWidth:y,form:h=!1,loading:w,empty:C,children:b}){const x=De("panel",`panel--${s}`,h?"panel--form":"",i!==void 0?"panel--fill":"",m?"":"panel--no-border",f?"":"panel--no-bg",g?"":"panel--no-row-border",p?"panel--compact-rows":"",c),v={};return i!==void 0&&(v.minHeight=i),l!==void 0&&(v.maxWidth=typeof l=="number"?`${l}px`:l),y!==void 0&&(v["--panel-label-width"]=typeof y=="number"?`${y}px`:y),n.jsxs("div",{className:x,style:Object.keys(v).length?v:void 0,children:[(e!=null||a!=null)&&n.jsxs("div",{className:De("panel__header",a!=null?"panel__header--with-disc":""),children:[t&&n.jsx(Ue,{icon:t,label:typeof e=="string"?e:void 0,className:"panel__icon"}),n.jsxs("div",{className:"panel__title-group",children:[e!=null&&n.jsx("h2",{className:`panel__title ${a!=null?"body-3b":"h5b"}`,children:e}),a!=null&&n.jsx("p",{className:"panel__disc caption-1",children:a})]}),r&&n.jsx("div",{className:"panel__actions",children:r})]}),w?n.jsx(Sn,{variant:"loading"}):C!=null&&o.Children.toArray(b).length===0?n.jsx(Sn,{variant:"empty",children:C}):d?n.jsx("div",{className:De("panel__body--scroll",u==="stable"&&"panel__body--gutter-stable"),children:b}):b]})}function i3({cols:e=2,children:t}){return n.jsx("div",{className:"panel-grid",style:{"--panel-grid-cols":e},children:t})}function l3(e){return[{label:e("training.noise.level.none","\uC5C6\uC74C"),value:0},{label:e("training.noise.level.weak","\uC57D\uD568"),value:1},{label:e("training.noise.level.medium","\uBCF4\uD1B5"),value:2},{label:e("training.noise.level.strong","\uAC15\uD568"),value:3},{label:e("training.noise.level.veryStrong","\uB9E4\uC6B0 \uAC15\uD568"),value:4}]}function eu(e){return[{label:e("training.noise.type.default","\uAE30\uBCF8"),value:"defaultNoise",icon:"party-popper"},{label:e("training.noise.type.street","\uAE38\uAC70\uB9AC"),value:"street",icon:"car"},{label:e("training.noise.type.buzz","\uC640\uAE00\uC640\uAE00"),value:"buzz",icon:"message-square-more"},{label:e("training.noise.type.restaurant","\uC2DD\uB2F9"),value:"restaurant",icon:"coffee"}]}l3(At.t.bind(At)),eu(At.t.bind(At));const Ho="none",c3=.5,u3=1.5,d3=.25;function zo({title:e,valueLabel:t,value:a,min:r,max:s,step:i,tickStep:l,size:c,onChange:d}){return n.jsxs(Sn,{variant:"custom",label:e,useFullWidth:!0,children:[n.jsx(Jl,{value:a,onChange:d,min:r,max:s,step:i,size:c,showBgTick:!0,tickStep:l,ariaLabel:e,className:"noise-settings__slider-input"}),n.jsx("div",{className:"noise-settings__value button-1",children:t})]})}function tu({anchorRect:e,onClose:t}){const{t:a}=be.useTranslation(),r=Zt("(max-width: 767px)")?40:24,s=ar(),i=ja(s?.settings??Ma),l=s?.settings.type??"defaultNoise",c=s?.settings.enabled??!0,d=s?.playbackRate??1,u=s?.mainVolume??1,p=Math.round(u*100),m=o.useCallback(h=>{try{s?.setMainVolume(Math.max(0,Math.min(1,h/100)))}catch{}},[s]),f=o.useCallback(h=>{try{s?.setPlaybackRate(h)}catch{}},[s]),g=o.useCallback(h=>{const w=Math.min(Sa,Math.max(0,Math.round(h*10)/10));try{s?.setSettings({noiseRatio:w})}catch{}},[s]),y=o.useCallback(h=>{try{h===Ho?s?.setSettings({enabled:!1}):s?.setSettings({type:h,enabled:!0})}catch{}},[s]);return n.jsx(Qt,{anchorRect:e,offset:12,onClose:t,ariaLabel:a("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),isMobilePopup:!1,closeOnOutsideClick:!1,header:n.jsxs("div",{className:"noise-settings__header",children:[n.jsx("span",{children:a("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815")}),n.jsx(pe,{htmlType:"button",size:40,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,ariaLabel:a("common.close","\uB2EB\uAE30"),onClick:t})]}),children:n.jsxs(sr,{className:"noise-settings",useBorder:!1,labelWidth:72,children:[n.jsx(zo,{title:a("training.playVolumeTitle","\uC804\uCCB4 \uC18C\uB9AC"),valueLabel:`${p}%`,value:p,min:0,max:100,step:10,size:r,onChange:m}),n.jsx(zo,{title:a("training.playSpeedTitle","\uC7AC\uC0DD \uC18D\uB3C4"),valueLabel:`${d.toFixed(2)}x`,value:d,min:c3,max:u3,step:d3,size:r,onChange:f}),n.jsx(Sn,{variant:"custom",label:a("training.noiseTypeTitle","\uC18C\uC74C \uC885\uB958"),useFullWidth:!0,children:n.jsx(xn,{ariaLabel:a("training.noiseTypeTitle","\uC18C\uC74C \uC885\uB958"),size:40,shape:"rounded",options:[{key:Ho,label:a("training.noise.type.none","\uC5C6\uC74C")},...eu(a).map(h=>({key:h.value,label:h.label}))],value:c?l:Ho,onChange:y})}),n.jsx(zo,{title:a("training.noiseRatioTitle","\uC18C\uC74C \uBE44\uC728"),valueLabel:a("training.noiseRatioValue","{{ratio}}\uBC30",{ratio:i.toFixed(1)}),value:i,min:0,max:Sa,step:Fc,size:r,onChange:g})]})})}function nu({useNoiseSettingBtn:e=!1,onSettings:t,onNext:a,onResult:r,stepIndex:s=0,stepCount:i=0,pageIndex:l=0,pageCount:c=1,resultOpen:d=!1}){const{t:u}=be.useTranslation(),[p,m]=o.useState(!1),[f,g]=o.useState(null),[y,h]=o.useState(!1),w=o.useRef(null),C=o.useRef(null),b=ar(),x=c>0,v=x&&l<c-1,A=!x||l>=c-1,k=s===Math.max(0,i);o.useEffect(()=>{e||(m(!1),g(null))},[e]);const N=o.useCallback(()=>{m(!1),g(null)},[]),_=o.useCallback(()=>{if(p){m(!1),g(null);return}const I=w?.current?.getBoundingClientRect();I&&g(I),t?.(),m(!0)},[p,t]),B=o.useCallback(()=>{if(p){m(!1),g(null);return}const I=C?.current?.getBoundingClientRect();I&&g(I),t?.(),m(!0)},[p,t]),E=Zt("(max-width: 767px)"),P=o.useRef(null),[H,S]=o.useState(null),V=o.useCallback(()=>{h(I=>{const G=!I;return S(G?P.current?.getBoundingClientRect()??null:null),G})},[]),j=o.useCallback(()=>{h(!1),S(null)},[]);o.useEffect(()=>{d&&(h(!1),S(null))},[d]);const M=n.jsxs(n.Fragment,{children:[n.jsxs("div",{className:"pp-bottom__meter",children:[n.jsx("span",{className:"pp-bottom__meter-label caption-1",children:u("training.meter.sentence","\uC7AC\uC0DD")}),n.jsx(ho,{analyser:b?.mainAnalyser??null,orientation:"horizontal",length:112,label:"db",labelPos:"left",ariaLabel:u("training.meter.sentence","\uC7AC\uC0DD")})]}),n.jsxs("div",{className:"pp-bottom__meter",children:[n.jsx("span",{className:"pp-bottom__meter-label caption-1",children:u("training.meter.noise","\uC18C\uC74C")}),n.jsx(ho,{analyser:b?.noiseAnalyser??null,orientation:"horizontal",length:112,label:"db",labelPos:"left",ariaLabel:u("training.meter.noise","\uC18C\uC74C")})]})]});return Kc(e&&p,()=>typeof document<"u"?document.querySelector(".noise-settings__header")?.closest(".tooltip-content")??null:null,()=>[w.current,C.current].map(I=>I?.querySelector("button")??null).find(I=>!!I&&I.getClientRects().length>0)??w.current?.querySelector("button")??null),n.jsxs("div",{className:"pp-bottom",children:[n.jsxs("div",{className:"pp-bottom__left",children:[e?n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"pp-bottom__settings--desktop",children:n.jsx("div",{ref:w,className:"pp-bottom__tooltip-trigger","data-tooltip-ignore":!0,children:n.jsx(pe,{htmlType:"button",size:56,type:"bar",icon:"settings",onClick:_,className:p?"is-selected":void 0,"aria-expanded":p,"aria-haspopup":"dialog",ariaLabel:u("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),label:u("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),minWidth:140})})}),n.jsx("div",{className:"pp-bottom__settings--mobile",children:n.jsx("div",{ref:C,className:"pp-bottom__tooltip-trigger","data-tooltip-ignore":!0,children:n.jsx(pe,{htmlType:"button",size:56,type:"dot",shape:"pill",icon:"settings",onClick:B,className:p?"is-selected":void 0,"aria-expanded":p,"aria-haspopup":"dialog",ariaLabel:u("training.settings","\uC124\uC815")})})})]}):null,e&&n.jsx("div",{ref:P,className:"pp-bottom__meter-trigger","data-tooltip-ignore":!0,children:n.jsx(pe,{htmlType:"button",size:40,type:"dot",shape:"pill",icon:"audio-lines",onClick:V,selected:y,"aria-expanded":E?y:void 0,ariaLabel:u("training.meter.toggle","\uC624\uB514\uC624 \uBBF8\uD130 \uD45C\uC2DC")})}),e&&y&&!E&&n.jsx("div",{className:"pp-bottom__meters",children:M})]}),e&&y&&E&&H&&n.jsx(Qt,{anchorRect:H,onClose:j,ariaLabel:u("training.meter.toggle","\uC624\uB514\uC624 \uBBF8\uD130 \uD45C\uC2DC"),children:n.jsx("div",{className:"pp-bottom__meters pp-bottom__meters--floating",children:M})}),n.jsxs("div",{className:"pp-bottom__right",children:[A&&n.jsx(pe,{htmlType:"button",size:56,type:"bar",icon:"check",onClick:typeof r=="function"?r:a,ariaLabel:u("training.viewResult","\uACB0\uACFC\uBCF4\uAE30"),label:u("training.viewResult","\uACB0\uACFC\uBCF4\uAE30"),variant:"main",disabled:!k}),v&&n.jsx(pe,{htmlType:"button",size:56,type:"bar",rightIcon:"chevron-right",align:"right",onClick:a,ariaLabel:u("training.nextQuestion","\uB2E4\uC74C \uBB38\uC81C"),label:u("training.nextQuestion","\uB2E4\uC74C \uBB38\uC81C"),variant:"main",disabled:!k})]}),e&&p&&n.jsx(tu,{anchorRect:f,onClose:N})]})}function au({title:e,subtitle:t,desc:a,depth:r,icon:s,wrapperStyle:i,iconTooltip:l,pageIndex:c,pageCount:d,progressMax:u,progressIndex:p,onBack:m,onClose:f}){const{t:g}=be.useTranslation(),y=Zt("(max-width: 767px)"),h=Number.isInteger(p)?p:c||0,w=Number.isInteger(u)?u:d||0,C=m||f,b=Array.isArray(r)?y?r[r.length-1]:r.join(" / "):r,x=typeof e=="string"?e.trim():e,v=typeof t=="string"?t.trim():t,A=!!(x||v),k=A?x||v:g("common.emptyTrainingName","\uD6C8\uB828 \uC774\uB984\uC774 \uBE44\uC5B4 \uC788\uC2B5\uB2C8\uB2E4."),N=b||(x?t:void 0),_=y&&typeof N=="string"&&(N.includes(" \xB7 ")||N.includes(" / "))?N.split(/\s[·/]\s/).pop():N,B=o.useMemo(()=>{const E=i&&typeof i=="object"?{...i}:{};return!("width"in E)&&!("height"in E)&&(E.width="40px",E.height="40px"),E},[i]);return n.jsxs("header",{className:"pp-title training-popup-title",children:[n.jsxs("div",{className:"pp-title__left",children:[C?n.jsx(pe,{htmlType:"button",size:48,type:"dot",icon:"chevron-left",ariaLabel:g("common.back","\uB4A4\uB85C"),onClick:C,useBorder:!1,iconSize:"large",iconColor:"--color-black",variant:"transparent-gray"}):null,n.jsx("div",{children:s?n.jsx(jl,{icon:s,label:e,tooltip:l,wrapperStyle:B}):null}),n.jsxs("div",{className:"pp-title__text",children:[_?n.jsx("span",{className:"pp-title__depth caption-1",children:_}):null,n.jsx("span",{className:`pp-title__title h2${A?"":" pp-title__title--empty"}`,children:k}),a?n.jsx("span",{className:"pp-title__description caption-1",children:a}):null]})]}),n.jsx(nc,{max:Math.max(0,w??0),index:Math.max(0,h??0)})]})}function p3(){typeof window<"u"&&window.dispatchEvent(new CustomEvent("speechear.popup.close"))}function m3(e){return!e&&e!==0?[]:Array.isArray(e)?e.flatMap(t=>typeof t=="string"?t.split("|").map(a=>a.trim()).filter(Boolean):t||t===0?[String(t)]:[]):typeof e=="string"?e.split("|").map(t=>t.trim()).filter(Boolean):[String(e)]}const ru=(e,t)=>{if(!t)return t;const a=typeof At?.t=="function"?At.t(e,{defaultValue:t}):void 0;return typeof a=="string"&&a?a:t};function ou(e,t,a){const r=e,s=r?.title||r?.name||(Array.isArray(t)?t[t.length-1]:void 0)||a||"\uD6C8\uB828",i=di().find(c=>c.key===(r?.category_0||r?.category_main_code)),l=i?.subs?.find(c=>c.key===(r?.category_1||r?.category_sub_code));return{title:s,label:r?.title||s,depth:t,icon:i?.icon,wrapperStyle:i?.color?{"--t-item-fg":i.color}:void 0,iconTooltip:[i?ru(`topic.${i.key}`,i.label):void 0,l?ru(`topic.sub.${l.key}`,l.label):void 0].filter(Boolean).join(" / ")||void 0}}function Vo(e){return e&&typeof e=="object"&&typeof e.__ts=="number"?e.__ts:0}function h3(e){const t=e;return Array.isArray(t?.items)?t.items:Array.isArray(e)?e:e?[e]:[]}function f3({idPrefix:e,trainingData:t,depth:a,fallbackTitle:r="\uD6C8\uB828",pages:s=[],emptyMessage:i,buildResults:l,metaPatch:c}){const d=ou(t,a,r),u=typeof c=="function"?c(d)||{}:c||{},p=t?.id||t?.title||s.length;return{id:`${e}:${p}`,meta:{...d,...u},pages:s,emptyMessage:i,buildResults:l}}function C3(e){if(typeof e=="string")return e;if(e&&typeof e=="object"){const t=e;return t.context||t.sentence||t.question||""||""}return""}function g3(e){if(e&&typeof e=="object"){const t=e;if(Array.isArray(t.selectedValues))return t.selectedValues;if(t.selectedValue!==void 0)return t.selectedValue;if(t.selectedIndex!==void 0)return t.selectedIndex;if(t.value!==void 0)return t.value}return e}function b3(e,t=[]){if(Array.isArray(e))return e.join(", ");if(typeof e=="number"&&Array.isArray(t))return String(t[e]??"");if(typeof e=="string")return e}function su(e,t){if(!(!e||typeof e!="object"))return e[`step-${t}`]}function y3(e,t,a,r){return su(e,t*a+r)}function v3({payload:e,selected:t,choices:a=[],correctAnswers:r=[]}){if(e&&typeof e=="object"){const s=e;if(Array.isArray(s.selectedValues))return r.every(i=>s.selectedValues.includes(i))&&s.selectedValues.every(i=>r.includes(i));if(typeof s.correct=="boolean")return s.correct}if(r.length){if(typeof t=="number"&&Array.isArray(a)&&a.length)return r.some(s=>String(s)===String(a[t]));if(typeof t<"u")return r.some(s=>String(s)===String(t))}}function x3(e){return e?Array.isArray(e.items)?e.items.map(t=>{const a=t;return typeof t=="string"?{sentence:t}:{sentence:a.context||a.sentence||"",contextCode:a.contextCode||a.context_code}}):Array.isArray(e.sentences)?e.sentences.map(t=>{const a=t;return typeof t=="string"?{sentence:t}:{sentence:a.sentence||a.context||"",contextCode:a.contextCode}}):Array.isArray(e.contexts)?e.contexts:e.contextCode?[{contextCode:e.contextCode}]:[]:[]}const iu=o.createContext(null);function _3(){const e=o.useContext(iu);if(!e)throw new Error("useTrainingPagePopupContext must be used inside TrainingPagePopup");return e}function w3({index:e,stepIndex:t,isLast:a=!1,title:r,choices:s=[],onDone:i,onChange:l}){const{t:c}=be.useTranslation(),d=typeof e=="number"?e:-1,u=typeof t!="number"?"disabled":d<t?"done":d===t?"active":"disabled",[p,m]=o.useState(()=>s.map(()=>null)),f=JSON.stringify(s),g=s.length;o.useEffect(()=>{m(Array.from({length:g},()=>null))},[f]);const y=o.useRef(void 0);o.useEffect(()=>{const b=y.current;typeof b=="number"&&typeof t=="number"&&typeof e=="number"&&b>=e&&t<e&&m(Array.from({length:g},()=>null)),y.current=t},[t,e,g]);const h=o.useMemo(()=>p.filter(b=>b!==null).length+1,[p]),w=o.useCallback(b=>{if(u!=="active")return;const x=p;let v;if(x[b]!=null){const k=x[b];v=x.map(N=>N!==null&&N>=k?null:N)}else v=[...x],v[b]=h;m(v);const A={selectedOrder:v,words:s,__ts:Date.now()};try{typeof l=="function"&&l(A)}catch{}if(x[b]==null&&v.length>0&&v.every(k=>k!==null))try{typeof i=="function"&&i(A)}catch{}},[u,p,h,l,i,s]),C=r??c("training.selectInOrder","\uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uCE74\uB4DC\uB97C \uC120\uD0DD\uD558\uC138\uC694.");return n.jsx(Vn,{index:e,stepIndex:t,isLast:a,title:C,onDone:i,children:n.jsx("div",{className:"training-step__cards",children:s.map((b,x)=>n.jsx(vo,{item:{word:b},disabled:u==="disabled",selectable:!0,selected:p[x]!==null,orderRank:p[x],onSelect:()=>w(x),flipDelay:x*120,hideLabel:!1,hideAudio:!0},`${b}-${x}`))})})}function ir(e){return null}ir.__isTrainingPage=!0;function ia(e,t){const a=_3();return{ctx:a,index:e,stepIndex:a.currentStepIndex,isLast:typeof e=="number"&&typeof t=="number"?e===t-1:!1,onDone:r=>a.handleStepDone(r,e),onChange:r=>a.handleStepChange(r,e)}}function lu({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:s,isLast:i,onDone:l}=ia(e,t);return n.jsx(Fo,{...a,index:r,stepIndex:s,isLast:i,onDone:l})}function cu({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:s,isLast:i,onDone:l,onChange:c}=ia(e,t);return n.jsx(Po,{...a,index:r,stepIndex:s,isLast:i,onDone:l,onChange:c})}function uu({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:s,isLast:i,onDone:l,onChange:c}=ia(e,t);return n.jsx(Io,{...a,index:r,stepIndex:s,isLast:i,onDone:l,onChange:c})}function du({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:s,isLast:i,onDone:l,onChange:c}=ia(e,t);return n.jsx(Oo,{...a,index:r,stepIndex:s,isLast:i,onDone:l,onChange:c})}function pu({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:s,isLast:i,onDone:l,onChange:c}=ia(e,t);return n.jsx(Xc,{...a,index:r,stepIndex:s,isLast:i,onDone:l,onChange:c})}function k3({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:s,isLast:i,onDone:l,onChange:c}=ia(e,t);return n.jsx(w3,{...a,index:r,stepIndex:s,isLast:i,onDone:l,onChange:c})}function Wo(...e){for(const t of e)if(typeof t=="string"){const a=t.trim();if(a.length)return a}else{if(typeof t=="number"||typeof t=="boolean")return String(t);if(Array.isArray(t)&&t.length)return t.join(", ");if(t&&typeof t=="object"){const a=t,r=[a.text,a.label,a.value];for(const s of r){if(typeof s=="string"&&s.trim().length)return s.trim();if(typeof s=="number"||typeof s=="boolean")return String(s)}}}return null}function A3(e){return Wo(e?.question,e?.q,e?.sentence,e?.text,e?.prompt,e?.wording)}function mu(e){if(!e)return;if(typeof e.decision=="boolean")return e.decision;if(typeof e.correct=="boolean")return e.correct;if(typeof e.heard=="boolean")return e.heard;if(typeof e.judgement=="boolean")return e.judgement;const t=Wo(e?.status,e?.result,e?.judge,e?.note);if(t){const a=t.toLowerCase();if(["ok","true","\uB9DE\uC74C","\uC815\uB2F5"].some(r=>a.includes(r)))return!0;if(["ng","false","\uD2C0\uB9BC","\uC624\uB2F5"].some(r=>a.includes(r)))return!1}}function hu(e){const{score:t,contextsLength:a,results:r=[],subtitle:s,onReplay:i,onClose:l,inline:c=!1,pending:d=!1}=e||{},{t:u}=be.useTranslation(),p=o.useId(),m=o.useCallback(()=>!d,[d]);o.useEffect(()=>{const b=a??0;if(t!=null&&b>0&&t/b>.5){const x=window.setTimeout(()=>{window.dispatchEvent(new CustomEvent("party:trigger",{detail:{count:140,strength:1.6,duration:2200}}))},0);return()=>window.clearTimeout(x)}},[t,a]);const f=o.useCallback(b=>{const x=mu(b),v=Wo(b?.wording,b?.label);return x===!0?{variant:"main",label:v??u("training.result.heardWell","\uC798 \uB4E4\uC5C8\uC5B4\uC694")}:x===!1?{variant:"danger",label:v??u("training.result.notHeard","\uBABB \uB4E4\uC5C8\uC5B4\uC694")}:{variant:"disabled",label:v??u("training.result.notJudged","\uBBF8\uD310\uC815")}},[u]),g=a??0,y=t??0,h=o.useMemo(()=>Array.isArray(r)?r:[],[r]),w=o.useMemo(()=>h.map(b=>{const x=b??{},v=A3(x)||u("training.result.noContent","(\uB0B4\uC6A9\uC5C6\uC74C)"),{variant:A,label:k}=f(x),N=Array.isArray(x.corrects)?x.corrects:[],_=N.length?N.join(", "):x.answer!=null&&x.answer!==""?String(x.answer):null,B=typeof x.selectedText=="string"?x.selectedText:null,E=mu(x)===!0;return{problem:v,variant:A,label:k,answer:_,selectedText:B,isCorrect:E}}),[h,f,u]),C=o.useMemo(()=>w.some(b=>b.answer!==null||b.selectedText!==null),[w]);return n.jsx(Dn,{onClose:l,closeOnBackdrop:!1,inline:c,ariaLabel:u("training.result.title","\uD6C8\uB828\uC744 \uBAA8\uB450 \uB9C8\uCCE4\uC2B5\uB2C8\uB2E4."),className:"popup--training-result",beforeClose:m,footerClassName:"trp-result__foot",footer:({animateThen:b,closeWithAnimation:x})=>n.jsxs(n.Fragment,{children:[d&&n.jsx("p",{id:p,className:"trp-actions__reason caption-1",role:"status",children:u("training.result.pendingDone","\uACB0\uACFC\uB97C \uACC4\uC0B0\uD558\uB294 \uC911\uC774\uB77C \uC544\uC9C1 \uC644\uB8CC\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.")}),n.jsxs("div",{className:"trp-actions",children:[n.jsx(pe,{htmlType:"button",size:56,type:"bar",label:u("training.result.replay","\uB2E4\uC2DC\uD558\uAE30"),onClick:()=>b(i)}),n.jsx(pe,{htmlType:"button",size:56,type:"bar",label:u("training.result.done","\uC644\uB8CC"),variant:"main",onClick:x,disabled:d,onDisabledClick:d?()=>{}:void 0,"aria-describedby":d?p:void 0})]})]}),children:()=>n.jsxs("div",{className:"trp-result is-on",children:[n.jsxs("header",{className:"trp-result__head",children:[n.jsx("p",{className:"trp-result__eyebrow caption-1",children:u("training.result.eyebrow","\uD6C8\uB828 \uC644\uB8CC")}),n.jsx("h1",{className:"trp-result__title h2",children:u("training.result.title","\uD6C8\uB828\uC744 \uBAA8\uB450 \uB9C8\uCCE4\uC2B5\uB2C8\uB2E4.")}),s&&n.jsx("p",{className:"trp-result__subtitle body-3",children:s}),n.jsx("div",{className:"trp-score",children:n.jsxs("div",{className:"trp-score__figure","aria-label":u("training.result.scoreAria",{correct:y,total:g}),children:[n.jsx("span",{className:"trp-score__big",children:y}),n.jsx("span",{className:"trp-score__sep",children:"/"}),n.jsx("span",{className:"trp-score__total",children:g})]})})]}),w.length>0&&n.jsx("section",{className:"trp-result__body",children:n.jsxs("div",{className:`result-table${C?" result-table--answer":""}`,role:"table","aria-label":u("training.result.tableAriaLabel","\uBB38\uD56D\uBCC4 \uD310\uC815"),children:[n.jsxs("div",{className:"result-table__head caption-1",role:"row",children:[n.jsx("span",{role:"columnheader",children:u("common.col.problem","\uBB38\uC81C")}),C&&n.jsx("span",{role:"columnheader",children:u("training.result.colAnswerSelected","\uC815\uB2F5 \xB7 \uC120\uD0DD")}),n.jsx("span",{className:"col-right",role:"columnheader",children:u("training.result.colJudge","\uD310\uC815")})]}),w.map((b,x)=>n.jsxs("div",{className:"result-table__row",role:"row",children:[n.jsxs("div",{className:"trp-row__problem",children:[n.jsx("span",{className:"trp-row__no caption-1",children:String(x+1).padStart(2,"0")}),n.jsx("div",{className:"trp-row__q body-2",children:b.problem})]}),C&&n.jsxs("div",{className:"trp-row__answers",children:[b.answer!==null&&n.jsxs("div",{className:"trp-row__answer-line",children:[n.jsx("span",{className:"trp-row__answer-label answer-correct caption-1",children:u("training.result.colAnswer","\uC815\uB2F5")}),n.jsx("span",{className:"trp-row__answer-value body-2",children:b.answer})]}),n.jsxs("div",{className:"trp-row__answer-line",children:[n.jsx("span",{className:`trp-row__answer-label answer-selected caption-1 ${b.isCorrect?"is-correct":"is-wrong"}`,children:u("training.result.colSelected","\uC120\uD0DD")}),n.jsx("span",{className:`trp-row__answer-value body-2 ${b.isCorrect?"is-correct":"is-wrong"}`,children:b.selectedText??"\u2014"})]})]}),n.jsx("div",{className:"trp-row__judge",children:n.jsx(ft,{variant:b.variant,label:b.label,fill:"soft",minWidth:80})})]},x))]})})]})})}function B3(e){o.useEffect(()=>{if(!e)return;const t=()=>typeof document>"u"||document.visibilityState!=="hidden";let a=null,r=null,s=0,i=0;const l=()=>{const p=Date.now();a==null&&(a=p),r==null&&(r=p)},c=()=>{r!=null&&(s+=Date.now()-r,r=null)};t()&&l();const d=()=>{if(c(),a==null||s-i<1e3||i===0&&s<5e3)return;const p=a+i;i=s,B2({trainingType:e,startedAt:new Date(p).toISOString(),endedAt:new Date(a+s).toISOString()})},u=()=>{t()?l():d()};return typeof document<"u"&&document.addEventListener("visibilitychange",u),typeof window<"u"&&window.addEventListener("pagehide",d),()=>{typeof document<"u"&&document.removeEventListener("visibilitychange",u),typeof window<"u"&&window.removeEventListener("pagehide",d),d()}},[e])}function qo(e,t){return e&&e.id||`page-${t??0}`}function Uo(e,t){return e&&e.key||`step-${t??0}`}function lr(){return{pageIndex:0,stepIndex:0,answersByPage:{}}}function N3(e,t){return typeof e?.props=="function"?e.props(t)||{}:e?.props||{}}const E3=300,D3=()=>{try{return typeof window<"u"&&!!window.matchMedia?.("(prefers-reduced-motion: reduce)").matches}catch{return!1}},jn=Object.freeze({}),fu=new Set(["LISTEN_IN_NOISE","SHORT_STORY","LONG_STORY","ORDERING_SENTENCE"]);function Cu(e){const t=e,a=t?.results||t?.answers||[],r=Array.isArray(a)&&a.length>0?a.length:null,s=Array.isArray(a)?a.filter(i=>i?.correct===!0||i?.isCorrect===!0||i?.score===1||i?.heard===!0||i?.judgement===!0).length:null;return{results:a,correct:r!=null?s:null,total:r}}const S3=e=>n.jsx(hu,{score:e.score,contextsLength:e.contextsLength,results:e.results,onReplay:e.onReplay,onClose:e.onClose,pending:e.pending});function j3(e){const{scenario:t,title:a,subTitle:r,depth:s,icon:i,wrapperStyle:l,iconTooltip:c,pageIndex:d,pageCount:u,stepIndex:p,stepCount:m,onBack:f,onComplete:g,onNext:y,onSettings:h,useNoiseSetting:w=!0,children:C,ariaLabel:b,label:x,buildResults:v,onResult:A,typeKey:k,entryPoint:N,dailyTotal:_,itemRef:B,renderResultPopup:E,noiseOverride:P}=e;B3(k&&!fu.has(k)?k:"");const H=o.useRef(0);o.useEffect(()=>{H.current=Date.now()},[]);const{t:S}=be.useTranslation(),V=A,j=!!t,M=t?.id||null,I=t?.meta||{},G=Array.isArray(t?.pages)?t.pages:[],Q=Array.isArray(C)||o.isValidElement(C)&&typeof C!="function"?o.Children.toArray(C).filter(o.isValidElement):[],z=Q.length>0,q=le=>le===ir||le?.__isTrainingPage===!0,W=z&&Q.some(le=>q(le.type)),L=W?Q.filter(le=>q(le.type)).map((le,xe)=>{const K=le.props||{};return{id:`children-page-${xe}`,steps:o.Children.toArray(K.children).filter(o.isValidElement),pageTop:K.pageTop||K.top||null,pageBottom:K.pageBottom||K.bottom||null}}):[{id:"children-page-0",steps:Q}],D=z&&!j&&typeof C!="function",F=D?Math.max(1,L.length):0;o.useEffect(()=>{if(!(typeof document>"u"||!document.body)&&!document.body.classList.contains("ihabdevteam-core-scope"))return document.body.classList.add("ihabdevteam-core-scope"),()=>{document.body.classList.remove("ihabdevteam-core-scope")}},[]),o.useEffect(()=>{if(typeof document>"u"||!document.body)return;const le=document.body;return le.dataset.ihabTrainingPopupCount=String(Number(le.dataset.ihabTrainingPopupCount||"0")+1),le.classList.add("ihab-training-popup-open"),()=>{const xe=Number(le.dataset.ihabTrainingPopupCount||"1")-1;xe>0?le.dataset.ihabTrainingPopupCount=String(xe):(delete le.dataset.ihabTrainingPopupCount,le.classList.remove("ihab-training-popup-open"))}},[]),o.useEffect(()=>{if(!(typeof document>"u"||!document.body))return k4()},[]);const[R,O]=o.useState({...Ma,enabled:!1}),$=o.useRef(R);o.useEffect(()=>{$.current=R},[R]);const Y=o.useRef(P),ee=o.useRef(!1),Z=o.useRef(null);o.useEffect(()=>{let le=!1;const xe=K=>{if(le)return;ee.current=!0;const ce=K?Ta({...Ma,enabled:!1},K):{...Ma},he=Z.current;Z.current=null;const J=he?Ta(ce,he):ce;$.current=J,O(J),he&&!Y.current&&oi(J),Ha(J);const ne=Y.current;if(ne){const Ne=typeof ne=="function"?ne(J):ne,qe=Ta(J,Ne);$.current=qe,O(qe),Ha(qe)}};return S2().then(xe),()=>{le=!0}},[]);const[ae,_e]=o.useState(null),[re,ue]=o.useState(null),U=o.useCallback((le,xe)=>{le==="main"?_e(xe):ue(xe)},[]),oe=o.useRef(null),de=o.useRef(null),ve=o.useCallback(()=>{de.current!==null&&(clearTimeout(de.current),de.current=null);const le=oe.current;oe.current=null,le&&oi(le)},[]);o.useEffect(()=>{if(typeof window>"u")return;const le=()=>{document.visibilityState==="hidden"&&ve()};return window.addEventListener("pagehide",ve),document.addEventListener("visibilitychange",le),()=>{window.removeEventListener("pagehide",ve),document.removeEventListener("visibilitychange",le),ve()}},[ve]);const ge=o.useCallback(le=>{const xe=Ta($.current,le);if($.current=xe,O(xe),!ee.current){Z.current={...Z.current??{},...le},Ha(xe);return}Y.current||(oe.current=xe,de.current!==null&&clearTimeout(de.current),de.current=setTimeout(ve,E3)),Ha(xe)},[ve]),Se=R.mainSpeed,Ce=R.mainVolume,Ee=o.useCallback(le=>ge({mainSpeed:le}),[ge]),Be=o.useCallback(le=>ge({mainVolume:le}),[ge]),Re=o.useMemo(()=>({settings:R,setSettings:ge,registerAnalyser:U,mainAnalyser:ae,noiseAnalyser:re,playbackRate:Se,setPlaybackRate:Ee,mainVolume:Ce,setMainVolume:Be}),[R,ge,U,ae,re,Se,Ee,Ce,Be]),Le=o.useRef(null),[me,ke]=o.useState(0),Me=o.useRef([]),[Te,Ae]=o.useState("center"),[ie,ye]=o.useState(!1),se=o.useRef(!1),Ie=o.useRef(null),ze=o.useCallback(le=>{se.current||(se.current=!0,ye(!0),Ie.current=setTimeout(()=>{try{le()}catch{se.current=!1,ye(!1)}},D3()?0:a3))},[]);o.useEffect(()=>()=>{Ie.current&&clearTimeout(Ie.current)},[]);const Ge=o.useRef(f);o.useEffect(()=>{Ge.current=f}),o.useEffect(()=>{const le=Le.current,xe=document.activeElement;if(Fr(le,xe),le){const K=Array.from(le.querySelectorAll(Cn)).filter(ce=>!ce.closest('[aria-hidden="true"]'))[0];if(K)try{K.focus()}catch{}}return()=>{const K=document.activeElement;if(!K||K===document.body||le&&le.contains(K))try{Or(xe)?.focus?.()}catch{}}},[]),o.useEffect(()=>In(()=>ze(()=>{const le=Ge.current;typeof le=="function"&&le()})),[ze]),Pr(Le,!0);const[Ze,Ye]=o.useState(!1),Ke=o.useRef(!1),[Oe,Pe]=o.useState(null),lt=o.useRef(0),wt=()=>{lt.current+=1,Pe(null)},[Dt,Nt]=o.useState(""),[nt,Je]=o.useState(()=>lr()),at=o.useRef(typeof d=="number"?d:null);o.useEffect(()=>{!j&&!D||(Je(lr()),wt())},[j,M,D]),o.useEffect(()=>{D&&Je(le=>{const xe=Math.max(0,Math.min(le.pageIndex,Math.max(0,F-1)));return xe!==le.pageIndex?{...le,pageIndex:xe,stepIndex:0}:le})},[D,F]);const Qe=D?Math.max(0,Math.min(nt.pageIndex,F-1)):0,We=D?L[Qe]:null,mt=D&&We&&Array.isArray(We.steps)?We.steps:[],He=j?nt.pageIndex:D?Qe:typeof d=="number"?d:0,st=j?G[Math.max(0,Math.min(nt.pageIndex,Math.max(0,G.length-1)))]:null,Ct=j&&st&&Array.isArray(st.steps)?st.steps:[],ut=j?Ct.length:D?mt.length:typeof m=="number"?m:0,vt=j||D?Math.max(0,Math.min(nt.stepIndex,Math.max(0,ut))):typeof p=="number"?p:0,ot=j?G.length:D?F:typeof u=="number"?u:0;o.useLayoutEffect(()=>{const le=at.current;if(typeof He=="number"&&le!==null&&He!==le&&He>le)try{Nt(S("training.problemNotice",{n:He+1}))}catch{}at.current=typeof He=="number"?He:at.current},[He,d,S]),o.useLayoutEffect(()=>{const le=Le.current;if(!le)return;const xe=()=>le.querySelector(".page-popup__scroll");let K=null,ce=null,he=null;const J=dt=>{const kt=xe();if(!kt)return;const qt=kt.scrollHeight<=kt.clientHeight;if(Ae(qt?"center":"top"),dt&&!Ke.current){Ke.current=!0;try{Ye(!0)}catch{}try{qe.disconnect()}catch{}}},ne=()=>{K!==null&&cancelAnimationFrame(K),K=requestAnimationFrame(()=>{ce!==null&&clearTimeout(ce),ce=setTimeout(()=>J(!0),60)})},Ne=()=>{he!==null&&cancelAnimationFrame(he),he=requestAnimationFrame(()=>J(!1))};ne(),window.addEventListener("resize",Ne);const qe=new MutationObserver(ne);qe.observe(le,{childList:!0,subtree:!0,attributes:!0});const tt=setTimeout(()=>{Ke.current||J(!0)},400);return()=>{window.removeEventListener("resize",Ne),K!==null&&cancelAnimationFrame(K),ce!==null&&clearTimeout(ce),he!==null&&cancelAnimationFrame(he),clearTimeout(tt);try{qe.disconnect()}catch{}}},[Le]);const Fe=o.useCallback(le=>{Le.current&&(Le.current._childOnNext=le)},[]),rt=o.useCallback(le=>{Le.current&&(Le.current._childOnResult=le)},[]),bt=o.useCallback((le,xe,K)=>{Je(ce=>{const he=ce.answersByPage[le]||{},J=he[xe],ne=Vo(K),Ne=Vo(J);return J&&Ne>ne?ce:{...ce,answersByPage:{...ce.answersByPage,[le]:{...he,[xe]:K}}}})},[Je]),zt=o.useCallback((le,xe,K)=>{const ce=qo(st,He),he=Uo(le,xe);bt(ce,he,K)},[st,He,bt]),et=o.useCallback((le,xe,K)=>{const ce=qo(st,He),he=Uo(le,xe);bt(ce,he,K),!K?.allowChange&&le?.autoAdvance!==!1&&Je(J=>({...J,stepIndex:Math.max(J.stepIndex,xe+1)}))},[st,He,bt,Je]),Yt=o.useCallback((le,xe)=>{const K=We?.id||`children-page-${He??0}`,ce=typeof xe=="number"?xe:vt??0,he=`step-${ce}`;bt(K,he,le),le?.allowChange||Je(J=>({...J,stepIndex:Math.max(J.stepIndex,ce+1)}))},[We,He,vt,bt,Je]),kn=o.useCallback((le,xe)=>{const K=We?.id||`children-page-${He??0}`,ce=`step-${typeof xe=="number"?xe:vt??0}`;bt(K,ce,le)},[We,He,vt,bt]),Lt=D?{currentPageIndex:He??0,currentStepIndex:vt??0,totalStepsInPage:mt.length,handleStepDone:Yt,handleStepChange:kn}:null,nn=async()=>{const le=typeof t?.buildResults=="function"?await Promise.resolve(t.buildResults({scenario:t,pages:G,flowState:nt,answersByPage:nt.answersByPage})):null;return typeof V=="function"&&await Promise.resolve(V(le))||le},an=async()=>{const le=We?.id||`children-page-${nt.pageIndex}`,xe=nt.answersByPage[le]||{},K=W?(()=>{const J={};let ne=0;return L.forEach(Ne=>{const qe=nt.answersByPage[Ne.id]||{},tt=Array.isArray(Ne.steps)?Ne.steps.length:0;for(let dt=0;dt<tt;dt+=1){const kt=qe[`step-${dt}`];typeof kt<"u"&&(J[`step-${ne+dt}`]=kt)}ne+=tt}),J})():xe;if(typeof v=="function"){const J=await Promise.resolve(v(K,{pageAnswers:xe,answersByPage:nt.answersByPage,pages:L,currentPageId:le}));return typeof V=="function"&&await Promise.resolve(V(J))||J}const ce=Object.entries(xe).map(([J,ne],Ne)=>({index:Ne,key:J,payload:ne})),he={results:ce,answers:ce,score:0};return typeof V=="function"&&await Promise.resolve(V(he))||he},rn=()=>{const le=++lt.current,xe=()=>le!==lt.current;try{if(typeof document<"u"&&document.body){try{document.dispatchEvent(new CustomEvent("speechear-close-tooltips"))}catch{}document.dispatchEvent(new PointerEvent("pointerdown",{bubbles:!0,cancelable:!0})),document.dispatchEvent(new MouseEvent("click",{bubbles:!0,cancelable:!0}))}}catch{}if(j){const he=nn();Pe(jn);const J=he;Promise.resolve(J).then(ne=>{xe()||Pe(ne||{isEmpty:!0})}).catch(ne=>{!xe()&&Pe({isEmpty:!0})});return}if(D){const he=an();Pe(jn);const J=he;Promise.resolve(J).then(ne=>{xe()||Pe(ne||{isEmpty:!0})}).catch(ne=>{!xe()&&Pe({isEmpty:!0})});return}const K=Le.current&&Le.current._childOnResult,ce=he=>{try{return he?he():void 0}catch{return}};if(typeof K=="function"){const he=ce(K);try{typeof document>"u"?require("url").pathToFileURL(__filename).href:hn&&hn.tagName.toUpperCase()==="SCRIPT"&&hn.src||new URL("components.cjs.js",document.baseURI).href}catch{}he&&typeof he.then!="function"?Pe(he):Pe(he&&typeof he.then=="function"?jn:{});const J=()=>{xe()||Pe(ne=>ne===jn?{}:ne)};Promise.resolve(he).then(ne=>{ne&&!xe()?Pe(ne):J()}).catch(ne=>{J()});return}if(typeof V=="function"){const he=ce(V);try{typeof document>"u"?require("url").pathToFileURL(__filename).href:hn&&hn.tagName.toUpperCase()==="SCRIPT"&&hn.src||new URL("components.cjs.js",document.baseURI).href}catch{}he&&typeof he.then!="function"?Pe(he):Pe(he&&typeof he.then=="function"?jn:{});const J=()=>{xe()||Pe(ne=>ne===jn?{}:ne)};Promise.resolve(he).then(ne=>{try{typeof document>"u"?require("url").pathToFileURL(__filename).href:hn&&hn.tagName.toUpperCase()==="SCRIPT"&&hn.src||new URL("components.cjs.js",document.baseURI).href}catch{}ne&&!xe()?Pe(ne):J()}).catch(ne=>{console.error("viewResults external handler failed",ne),J()});return}},Mn=()=>{if(j){if(typeof He=="number"&&typeof ot=="number"&&He<ot-1){Je(xe=>({...xe,pageIndex:xe.pageIndex+1,stepIndex:0}));return}return rn()}if(D){const xe=mt.length;if(typeof vt=="number"&&vt<xe-1){Je(K=>({...K,stepIndex:K.stepIndex+1}));return}if(typeof He=="number"&&typeof ot=="number"&&He<ot-1){Je(K=>({...K,pageIndex:K.pageIndex+1,stepIndex:0}));return}return rn()}if(typeof y=="function"){try{y()}catch{}return}const le=Le.current&&Le.current._childOnNext;if(typeof le=="function"){try{le()}catch{}return}},on=j?I.title||I.label||b||S("common.popup","\uD31D\uC5C5"):a||x||(Array.isArray(s)?s[s.length-1]:void 0)||b||S("common.popup","\uD31D\uC5C5"),Ln=b||on,$t=j?I.title??I.label??on:a??x??on,gt=(le,xe)=>{const K=qo(st,He),ce=Uo(le,xe),he=nt.answersByPage[K]?.[ce],J=N3(le,{page:st,pageIndex:He,step:le,stepIndex:xe,storedPayload:he,answersByPage:nt.answersByPage,flowState:nt}),ne={key:ce,index:xe,stepIndex:vt,isLast:xe===Ct.length-1};switch(le?.type){case"listen":return n.jsx(Fo,{...ne,...J,onDone:Ne=>et(le,xe,Ne)});case"confirm":return n.jsx(Po,{...ne,...J,onDone:Ne=>et(le,xe,Ne),onChange:Ne=>zt(le,xe,Ne)});case"confirmWithText":return n.jsx(Io,{...ne,...J,onDone:Ne=>et(le,xe,Ne),onChange:Ne=>zt(le,xe,Ne)});case"orderList":return n.jsx(Oo,{...ne,...J,onDone:Ne=>et(le,xe,Ne),onChange:Ne=>zt(le,xe,Ne)});default:return null}},sn=o.useRef(void 0);o.useEffect(()=>{const le=sn.current;if(sn.current=He,le===void 0||le===He||!Ja())return;const xe=Le.current;if(!xe)return;const K=document.activeElement;if(!(!K||K===document.body||!xe.contains(K)||K.disabled===!0))return;const ce=xe.querySelector(`.training-steps ${Cn.split(", ").join(", .training-steps ")}`)??Array.from(xe.querySelectorAll(Cn)).find(he=>!he.closest('[aria-hidden="true"]'));try{ce?.focus()}catch{}},[He]);const Xt=j?G.length>0?n.jsx("div",{className:"training-steps",children:Ct.map((le,xe)=>gt(le,xe))},`replay-${me}`):n.jsx("div",{className:`page-popup__content page-popup__content--center${e.contentFull?" page-popup__content--full":""}`,children:n.jsx("div",{className:"pp-empty",children:t?.emptyMessage||S("training.noQuestions","\uBB38\uC81C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")})}):null,St=D?n.jsxs(iu.Provider,{value:Lt,children:[We?.pageTop?n.jsx("div",{className:"training-page-top",children:We.pageTop}):null,n.jsx("div",{className:"training-steps",children:mt.map((le,xe)=>{const K=le;return o.cloneElement(K,{...K.props,_stepIndex:xe,_totalSteps:mt.length,_stepKey:`step-${xe}`,_pageIndex:He})})},`replay-${me}`),We?.pageBottom?n.jsx("div",{className:"training-page-bottom",children:We.pageBottom}):null]}):null,ln=o.useCallback(()=>{let le;if(k){const xe=Oe,{results:K,correct:ce,total:he}=Cu(Oe);N2({items:D2(K),category:fu.has(k)?"sentence":"word",trainingType:k,entryPoint:N??"sentence",itemRef:B??null,correct:ce,total:he,score:typeof xe?.score=="number"?xe.score:null,durationSeconds:Math.max(0,Math.round((Date.now()-H.current)/1e3)),dailyTotal:_??null}),le={correct:ce,total:he,attempt:Me.current.length+1,previousAttempts:[...Me.current]}}wt(),ze(()=>{typeof g=="function"&&g(le),typeof f=="function"&&f()})},[g,f,k,N,_,B,Oe,Pe,ze]),Vt=o.useCallback(()=>Nt(""),[Nt]),Wt=o.useCallback(()=>{ze(()=>{typeof f=="function"&&f()})},[f,ze]),un=n.jsxs("div",{className:`page-popup${ie?" page-popup--closing":""}`,role:"dialog","aria-modal":"true","aria-label":Ln,children:[n.jsxs("div",{ref:Le,className:`page-popup__panel ${Ze?"":"page-popup__panel--measuring"} ${Te==="center"?"page-popup__panel--center":Te==="top"?"page-popup__panel--top":""}`,children:[n.jsx(au,{title:$t,subtitle:j?I.subtitle||I.label:Array.isArray(s)?s.join(" / "):void 0,desc:j?void 0:r,depth:j?I.depth:s,icon:j?I.icon:i,wrapperStyle:j?I.wrapperStyle:l,iconTooltip:j?I.iconTooltip:c,progressMax:ot,progressIndex:He,pageIndex:He,pageCount:ot,onBack:Wt,onClose:Wt}),n.jsx("div",{className:"page-popup__scroll",children:n.jsx("div",{className:`page-popup__content ${Te==="center"?"page-popup__content--center":"page-popup__content--top"}${e.contentFull?" page-popup__content--full":""}`,children:D?St:j?Xt:typeof C=="function"?C({registerOnNext:Fe,registerOnResult:rt,panelRef:Le,setResultOverlay:Pe}):C})}),n.jsx(nu,{onSettings:h,onNext:Mn,onResult:rn,useNoiseSettingBtn:!!(j?I.useNoiseSetting??!0:w),stepIndex:vt,stepCount:ut,pageIndex:He,pageCount:ot,resultOpen:!!(Oe&&!Oe.isEmpty)})]}),Oe&&!Oe.isEmpty&&(E??S3)({score:Oe.score,results:Oe.results||Oe.answers||[],contextsLength:Oe.results?Oe.results.length:Oe.answers?Oe.answers.length:0,onReplay:()=>{if(H.current=Date.now(),Oe!==jn){const{correct:le,total:xe}=Cu(Oe);Me.current.push({correct:le,total:xe})}if(wt(),ke(le=>le+1),j){if(Je(lr()),typeof t?.onReplay=="function")try{t.onReplay()}catch{}return}if(D){Je(lr());return}try{const le=Le.current&&Le.current._childOnResult;typeof le=="function"&&le({replay:!0})}catch{}},onClose:ln,pending:Oe===jn}),Oe?.isEmpty&&n.jsx("div",{className:"page-popup page-popup--result-empty",role:"dialog","aria-modal":"true","aria-label":S("training.result.eyebrow","\uD6C8\uB828 \uC644\uB8CC"),children:n.jsxs("div",{className:"page-popup__panel page-popup__panel--center",children:[n.jsx("div",{className:"page-popup__scroll",children:n.jsx("div",{className:`page-popup__content page-popup__content--center${e.contentFull?" page-popup__content--full":""}`,children:n.jsx("div",{className:"page-popup__empty",children:S("training.result.eyebrow","\uD6C8\uB828 \uC644\uB8CC")})})}),n.jsx("div",{className:"page-popup__bottom",children:n.jsx(pe,{htmlType:"button",variant:"main",size:48,onClick:ln,label:S("training.result.done","\uC644\uB8CC")})})]})}),n.jsx(ea,{message:Dt,position:"top",onClose:Vt})]}),dn=n.jsx(jo.Provider,{value:Re,children:un});return typeof document<"u"&&document.body?Ut.createPortal(dn,document.body):dn}const Tn=j3;Tn.Page=ir,Tn.ListenStep=lu,Tn.ConfirmStep=cu,Tn.ConfirmWithTextStep=uu,Tn.OrderListStep=du,Tn.CardStep=pu,Tn.CardOrderStep=k3;function T3({label:e,homonum:t}){const a=Gn()?.(e,t)??"",{imgRef:r,loading:s,hasImage:i,onLoad:l,onError:c}=yo(a);return i?n.jsxs("div",{className:"tooltip-word-image__cell",children:[s&&n.jsx("div",{className:"tooltip-word-image__spinner"}),n.jsx("img",{ref:r,src:a,alt:e,draggable:!1,style:{opacity:s?0:1},onLoad:l,onError:c})]}):n.jsx("div",{className:"tooltip-word-image__cell tooltip-word-image__cell--text h3",children:n.jsx("span",{children:e})})}function gu({words:e,anchorRect:t}){const a=o.useRef(null),[r,s]=o.useState(null);return o.useLayoutEffect(()=>{if(!t||!a.current)return;const{offsetWidth:i,offsetHeight:l}=a.current,c=window.innerWidth;let d=t.left+t.width/2-i/2,u=t.top-l-8;u<8&&(u=t.bottom+8),d=Math.max(8,Math.min(d,c-i-8)),s({left:d,top:u})},[t]),!t||e.length===0?null:Ut.createPortal(n.jsx("div",{ref:a,className:"tooltip-word-image",style:{visibility:r?"visible":"hidden",left:r?.left??0,top:r?.top??-9999},children:n.jsx("div",{className:"tooltip-word-image__cells",children:e.map(i=>n.jsx(T3,{label:i.label,homonum:i.homonum},`${i.label}_${i.homonum??1}`))})}),document.body)}const M3=new Intl.Collator("ko");function L3({titleIcon:e,resultCount:t,resultUnit:a,searchQuery:r,items:s,groups:i,selected:l=[],onSelect:c,maxSelect:d,onClearSelection:u,onPrint:p,onPrintEmpty:m,className:f,emptyHint:g,sectionType:y="page",disc:h,notice:w}){const{t:C,i18n:b}=be.useTranslation(),x=b.language?.startsWith("ko")??!1,{anchorRect:v,openAt:A,close:k}=ya(),[N,_]=o.useState(null),B=o.useCallback(()=>{k(),_(null)},[k]);ob(B,!!N);const E=(r??"").trim(),P=/^[^,[\]\s]+$/.test(E)?E:"",H=P.length>0,S=r===void 0&&t===void 0,V=H?"match":S?"original":"ganada",[j,M]=o.useState(()=>V),[I,G]=o.useState("50"),[Q,z]=o.useState(1),[q,W]=o.useState(H);q!==H&&(W(H),M(V));const L=j==="match"&&!H||j==="original"&&!S?V:j,D=o.useMemo(()=>[...H?[{value:"match",label:C("wordSearch.sort.match",{defaultValue:"\uC2DC\uC791 \uC6B0\uC120"})}]:[],...S?[{value:"original",label:C("wordSearch.sort.original",{defaultValue:"\uBC1B\uC740 \uC21C\uC11C"})}]:[],{value:"ganada",label:C("wordSearch.sort.ganada",{defaultValue:"\uAC00\uB098\uB2E4\uC21C \u2191"})},{value:"ganada_desc",label:C("wordSearch.sort.ganadaDesc",{defaultValue:"\uAC00\uB098\uB2E4\uC21C \u2193"})},{value:"syllable",label:C("wordSearch.sort.syllable",{defaultValue:"\uC74C\uC808 \uC218 \u2191"})},{value:"syllable_desc",label:C("wordSearch.sort.syllableDesc",{defaultValue:"\uC74C\uC808 \uC218 \u2193"})},{value:"grade",label:C("wordSearch.sort.grade",{defaultValue:"\uB4F1\uAE09\uC21C \u2191"})},{value:"grade_desc",label:C("wordSearch.sort.gradeDesc",{defaultValue:"\uB4F1\uAE09\uC21C \u2193"})}],[C,H,S]),F=o.useMemo(()=>["10","25","50","100"].map(Ce=>({value:Ce,label:C("wordSearch.pageSize",{count:Number(Ce),defaultValue:`${Ce}\uAC1C\uC529 \uBCF4\uAE30`})})),[C]),R=Ce=>Ce.words?.[0],O=o.useMemo(()=>{const Ce=[...P].length,Ee=p2(P),Be=new Map;return Re=>{let Le=Be.get(Re);return Le===void 0&&(Le=Ee((Re.words?.[0]?.label??"").slice(0,Ce))?0:1,Be.set(Re,Le)),Le}},[P]),$=o.useCallback((Ce,Ee)=>{const Be=me=>R(me)?.label??"",Re=me=>R(me)?.syllables??[...Be(me)].length,Le=me=>(me.words??[]).reduce((ke,Me)=>{const Te=parseInt(Me.grade??"",10);return Number.isFinite(Te)&&Te<ke?Te:ke},999);switch(L){case"match":return O(Ce)-O(Ee)||M3.compare(Be(Ce),Be(Ee));case"ganada":return Be(Ce).localeCompare(Be(Ee),"ko");case"ganada_desc":return Be(Ee).localeCompare(Be(Ce),"ko");case"syllable":return Re(Ce)-Re(Ee)||Be(Ce).localeCompare(Be(Ee),"ko");case"syllable_desc":return Re(Ee)-Re(Ce)||Be(Ce).localeCompare(Be(Ee),"ko");case"grade":return Le(Ce)-Le(Ee)||Be(Ce).localeCompare(Be(Ee),"ko");case"grade_desc":return Le(Ee)-Le(Ce)||Be(Ce).localeCompare(Be(Ee),"ko");default:return 0}},[L,O]),Y=o.useMemo(()=>s.slice().sort($),[s,$]),ee=Number(I)||10,Z=o.useMemo(()=>(i??[]).flatMap(Ce=>Ce.items.slice().sort($).map(Ee=>({item:Ee,label:Ce.label}))),[i,$]),ae=i?Z.length:Y.length,_e=Math.max(1,Math.ceil(ae/ee)),re=Math.min(Q,_e),ue=o.useMemo(()=>Y.slice((re-1)*ee,re*ee),[Y,re,ee]),U=o.useMemo(()=>{if(!i)return null;const Ce=Z.slice((re-1)*ee,re*ee),Ee=new Map;for(const{item:Be,label:Re}of Ce)Ee.has(Re)||Ee.set(Re,[]),Ee.get(Re).push(Be);return[...Ee.entries()].map(([Be,Re])=>({label:Be,items:Re}))},[i,Z,re,ee]);o.useEffect(()=>{z(1)},[j,I,ae,r]);const oe=ae>0?n.jsxs("div",{className:"word-search-result-block__toolbar",children:[n.jsx(tn,{size:40,options:D,value:L,onChange:M,ariaLabel:C("wordSearch.sort.aria",{defaultValue:"\uC815\uB82C"})}),n.jsx(tn,{size:40,options:F,value:I,onChange:G,ariaLabel:C("wordSearch.pageSizeAria",{defaultValue:"\uD398\uC774\uC9C0 \uD06C\uAE30"})}),n.jsx(Ya,{page:re,totalPages:_e,onChange:z})]}):void 0,de=Ce=>{c&&c(Ce)},ve=t!==void 0&&a?n.jsxs(n.Fragment,{children:[C("wordSearch.resultTitlePrefix","\uCD1D "),n.jsx("span",{style:{color:"var(--color-main)"},children:t}),C("wordSearch.resultTitleSuffix",{unit:x?v2(a):a})]}):void 0,ge=t!==void 0&&t>0&&d!==void 0&&a?C("wordSearch.resultDisc",{unit:x?_2(a):a,max:d,selected:l.length}):void 0,Se=h??(w?n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"word-search-result-block__notice",children:w}),ge?n.jsx("span",{className:"word-search-result-block__disc",children:ge}):null]}):ge);return n.jsxs(na,{type:y,className:De("word-search-result-block",f),children:[n.jsxs("div",{className:"word-search-result-block__inner",children:[(ve||oe||Se)&&n.jsxs("div",{className:"word-search-result-block__head",children:[n.jsxs("div",{className:"word-search-result-block__head-main",children:[e&&n.jsx(Ue,{icon:e,className:"word-search-result-block__head-icon"}),ve&&n.jsx("span",{className:"word-search-result-block__title h3",children:ve})]}),oe&&n.jsx("div",{className:"word-search-result-block__head-actions",children:oe}),Se&&n.jsx("div",{className:"word-search-result-block__head-disc body-3",children:Se})]}),(i?i.length===0:s.length===0)&&n.jsxs("div",{className:"word-search-result-block__empty-wrap",children:[n.jsx("p",{className:"word-search-result-block__empty body-3",children:C("wordSearch.emptyResult","\uAC80\uC0C9 \uACB0\uACFC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")}),g&&n.jsx("p",{className:"word-search-result-block__empty-hint body-3",children:g})]}),i?(U??[]).map(Ce=>n.jsx("div",{className:"word-search-result-block__group",children:n.jsx("div",{className:"word-search-result-block__items",children:Ce.items.map(Ee=>{const Be=l.includes(Ee.id);return n.jsx("div",{onMouseEnter:Re=>{A(Re.currentTarget),_(Ee.words??[])},onMouseLeave:B,children:n.jsx(pe,{htmlType:"button",size:"word",align:"grid",label:(Ee.words??[]).map(Re=>Re.label),subLabel:(Ee.words??[]).some(Re=>Re.subLabel)?(Ee.words??[]).map(Re=>Re.subLabel):void 0,selected:Be,onClick:()=>de(Ee.id),minWidth:200})},Ee.id)})})},Ce.label)):n.jsx("div",{className:"word-search-result-block__items",children:ue.map(Ce=>{const Ee=l.includes(Ce.id);return n.jsx("div",{onMouseEnter:Be=>{A(Be.currentTarget),_(Ce.words??[])},onMouseLeave:B,children:n.jsx(pe,{htmlType:"button",size:"word",align:"grid",label:(Ce.words??[]).map(Be=>Be.label),subLabel:(Ce.words??[]).some(Be=>Be.subLabel)?(Ce.words??[]).map(Be=>Be.subLabel):void 0,selected:Ee,onClick:()=>de(Ce.id),minWidth:200})},Ce.id)})}),N&&v&&n.jsx(gu,{words:N,anchorRect:v})]}),_e>1&&n.jsx("div",{className:"word-search-result-block__pagination-bottom",children:n.jsx(Ya,{page:re,totalPages:_e,onChange:z})}),(u||p)&&n.jsxs("div",{className:"word-search-result-block__actions",children:[u&&n.jsx(pe,{htmlType:"button",size:"56",type:"bar",label:C("common.resetSelection","\uC120\uD0DD \uCD08\uAE30\uD654"),selected:!1,disabled:l.length===0,onClick:l.length===0?void 0:u}),p&&n.jsx("div",{onClick:l.length===0?m:void 0,children:n.jsx(pe,{htmlType:"button",size:"56",type:"bar",variant:"main",label:C("wordTable.title","\uB2E8\uC5B4 \uD45C \uB9CC\uB4E4\uAE30"),disabled:l.length===0,onClick:l.length===0?void 0:p})})]})]})}function $3(e,t){return t.map(a=>{const r=typeof a=="string"?a:a.label,s=typeof a=="string"?void 0:a.displayLabel;return{label:r,value:e[r]??"",displayLabel:s}})}function R3({sections:e,selectedList:t,count:a,onCountChange:r,maxCount:s=4,minCount:i=1,combinationSections:l,combinationSectionsForSlot:c,onSelect:d,placeholder:u="-",className:p,title:m,titleIcon:f,disc:g,showInfoButton:y=!0,onClearPhoneme:h,onSearch:w,onSearchEmpty:C,searchDisabled:b=!1,searchLabel:x,searchChecking:v=!1,pairMode:A=!1,sectionType:k="page",beforeSearchContent:N,beforeContent:_,afterContent:B,hideCountControl:E=!1,ordinal:P=!1}){const{t:H}=be.useTranslation(),S=o.useMemo(()=>H("wordPairs.infoNotes",{returnObjects:!0}),[H]),V=o.useMemo(()=>Array.from({length:s-i+1},(R,O)=>{const $=i+O;return{key:String($),label:H("wordPairs.count",{n:$})}}),[H,s,i]),j=o.useMemo(()=>H("wordPairs.ordinals",{returnObjects:!0}),[H]),M=o.useCallback(R=>P?H("wordPairs.phonemeOrdinalLabel",{ordinal:j[R-1]??R}):a===1?H("wordPairs.phonemeSingleLabel","\uC74C\uC808"):H("wordPairs.phonemeN",{n:R}),[P,j,a,H]),I=o.useCallback(R=>P?H("wordPairs.phonemeContrastOrdinalLabel",{ordinal:j[R-1]??R}):a===1?H("wordPairs.phonemeContrastSingleLabel","\uB300\uB9BD \uC74C\uC808"):H("wordPairs.phonemeContrast",{n:R}),[P,j,a,H]),G=o.useCallback((R,O)=>O?n.jsxs(n.Fragment,{children:[R,n.jsx("span",{className:"phoneme-select-block__required",children:"*"})]}):R,[]),{anchorRect:Q,toggleAt:z,close:q}=ya(),W=o.useCallback(R=>r(Number(R)),[r]),L=Zt("(max-width: 767px)"),D=o.useCallback(R=>$3(R,e).map(({label:O,value:$,displayLabel:Y})=>{const ee=!!$&&$!=="\uC5C6\uC74C";return n.jsxs("span",{className:De("phoneme-select-block__cell-jamo-part",$?"":"phoneme-select-block__cell-jamo-part--empty",ee?"":"phoneme-select-block__cell-jamo-part--no-label"),children:[n.jsx("span",{className:`phoneme-select-block__cell-jamo-char h1${$==="\uC5C6\uC74C"?" phoneme-select-block__cell-jamo-char--excluded":""}`,children:$==="\uC5C6\uC74C"?"x":$||u}),ee&&n.jsx("span",{className:"phoneme-select-block__cell-jamo-label caption-2",children:Y??O})]},O)}),[e,u]),F=n.jsxs(n.Fragment,{children:[n.jsx("div",{"data-tooltip-ignore":!0,children:n.jsx(pe,{htmlType:"button",size:40,type:L?"dot":void 0,icon:"info",label:L?void 0:H("wordPairs.caution","\uC720\uC758\uC0AC\uD56D"),ariaLabel:H("wordPairs.caution","\uC720\uC758\uC0AC\uD56D"),className:Q?"is-selected":void 0,"aria-expanded":!!Q,"aria-haspopup":"dialog",onClick:R=>z(R.currentTarget)})}),Q&&n.jsx(Fn,{title:H("wordPairs.caution","\uC720\uC758\uC0AC\uD56D"),items:S,anchorRect:Q,onClose:q})]});return n.jsxs(na,{type:k,title:m,icon:f,disc:g,action:y?F:void 0,className:De("phoneme-select-block",p),children:[_,!E&&n.jsx("div",{className:"phoneme-select-block__controls",children:n.jsx(xn,{options:V,value:String(a),onChange:W,size:40,className:"phoneme-select-block__count-control"})}),n.jsx("div",{className:"phoneme-select-block__cells",children:A?n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"phoneme-select-block__cell-group",children:Array.from({length:a}).map((R,O)=>{const $=t[O*2]??{};return n.jsxs("div",{className:"phoneme-select-block__cell",children:[n.jsx("div",{className:"phoneme-select-block__cell-circle",children:n.jsx("div",{className:"phoneme-select-block__cell-jamo",children:D($)})}),n.jsx("span",{className:"phoneme-select-block__cell-index caption-1",children:M(O+1)})]},O)})}),n.jsx("span",{className:"phoneme-select-block__cell-vs h3",children:H("wordPairs.phonemeSelect.vs","\uB300")}),n.jsx("div",{className:"phoneme-select-block__cell-group",children:Array.from({length:a}).map((R,O)=>{const $=t[O*2+1]??{};return n.jsxs("div",{className:"phoneme-select-block__cell",children:[n.jsx("div",{className:"phoneme-select-block__cell-circle",children:n.jsx("div",{className:"phoneme-select-block__cell-jamo",children:D($)})}),n.jsx("span",{className:"phoneme-select-block__cell-index caption-1",children:I(O+1)})]},O)})})]}):t.map((R,O)=>n.jsxs("div",{className:"phoneme-select-block__cell",children:[n.jsx("div",{className:"phoneme-select-block__cell-circle",children:n.jsx("div",{className:"phoneme-select-block__cell-jamo",children:D(R)})}),n.jsx("span",{className:"phoneme-select-block__cell-index caption-1",children:M(O+1)})]},O))}),(l||c)&&n.jsx("div",{className:"phoneme-select-block__panels",children:n.jsx("div",{className:"phoneme-select-block__detail",children:A?n.jsxs("div",{className:"phoneme-select-block__pair-panels",children:[n.jsx("div",{className:"phoneme-select-block__panel-group",children:Array.from({length:a}).map((R,O)=>{const $=t[O*2]??{};return n.jsx(wn,{title:G(M(O+1),O===0),sections:c?c($,O*2):l,selected:$,onSelect:d?.(O*2),align:"newline"},O)})}),n.jsx("div",{className:"phoneme-select-block__panel-group",children:Array.from({length:a}).map((R,O)=>{const $=t[O*2+1]??{};return n.jsx(wn,{title:I(O+1),sections:c?c($,O*2+1):l,selected:$,onSelect:d?.(O*2+1),align:"newline"},O)})})]}):t.map((R,O)=>n.jsx(wn,{title:G(M(O+1),O===0),sections:c?c(R,O):l,selected:R,onSelect:d?.(O),align:"newline"},O))})}),N&&n.jsx("div",{className:"phoneme-select-block__before-search",children:N}),(h||w||v)&&(()=>{const R=t.every(O=>Object.entries(O).every(([$,Y])=>!Y||$==="\uC885\uC131"&&Y==="\uC5C6\uC74C"));return n.jsxs("div",{className:"phoneme-select-block__search-row",onClick:R?C:void 0,children:[h&&n.jsx(pe,{htmlType:"button",size:"56",type:"bar",label:H("wordPairs.resetOptions","\uAC80\uC0C9 \uC635\uC158 \uCD08\uAE30\uD654"),selected:!1,disabled:R,onClick:R?void 0:h}),w?n.jsx(pe,{htmlType:"button",size:"56",type:"bar",variant:"main",icon:v?n.jsx("span",{className:"phoneme-select-block__spinner","aria-hidden":"true"}):void 0,label:x??H("wordSearch.searchButton","\uAC80\uC0C9\uD558\uAE30"),disabled:R||b||v,onDisabledClick:v?()=>{}:void 0,"aria-busy":v||void 0,onClick:w}):v?n.jsxs("div",{className:"phoneme-select-block__checking","aria-busy":"true",children:[n.jsx("div",{className:"phoneme-select-block__spinner"}),n.jsx("span",{className:"button-1 phoneme-select-block__checking-label",children:x??H("wordSearch.searchButton","\uAC80\uC0C9\uD558\uAE30")})]}):null]})})(),B]})}function P3({title:e,sections:t,selected:a,onSelect:r,collapsible:s,defaultCollapsed:i,collapsed:l,onCollapsedChange:c,headerSummary:d,headerAction:u,className:p}){const{t:m}=be.useTranslation();return n.jsx(wn,{className:p,title:e??m("wordSearch.filterTitle","\uB2E8\uC5B4 \uAC80\uC0C9 \uC124\uC815"),sections:t,selected:a,onSelect:r,collapsible:s,defaultCollapsed:i,collapsed:l,onCollapsedChange:c,headerSummary:d,headerAction:u,align:"inline"})}function I3({title:e,headerAction:t,sections:a,selected:r,onSelect:s,className:i}){const{t:l}=be.useTranslation();return a.length===0?null:n.jsx(wn,{className:i,title:e??l("training.filter.phonemeGroup",{defaultValue:"\uD6C8\uB828 \uC74C\uC808"}),headerAction:t,sections:a,selected:r,onSelect:s,align:"newline"})}function F3({title:e,mode:t,onModeChange:a,matchMode:r,onMatchModeChange:s,positionCount:i,onPositionCountChange:l,inputMode:c,onInputModeChange:d,className:u}){const{t:p}=be.useTranslation(),m={searchMode:p("wordPairs.filter.searchModeLabel","\uB300\uB9BD \uBC29\uC2DD"),phonemeOrder:p("wordPairs.filter.phonemeOrder","\uC785\uB825 \uC74C\uC808 \uC704\uCE58"),count:p("wordPairs.filter.countLabel","\uC785\uB825 \uC74C\uC808 \uAC2F\uC218"),inputMode:p("wordPairs.filter.inputModeLabel","\uC785\uB825 \uBC29\uC2DD"),orderAny:p("wordPairs.filter.orderAny","\uBB34\uAD00"),orderMatch:p("wordPairs.filter.orderMatch","\uC77C\uCE58"),include:p("wordPairs.mode.include","\uC74C\uC18C \uD3EC\uD568"),pick:p("wordPairs.mode.pick","\uC74C\uC18C \uB300\uB9BD"),explicit:p("wordPairs.mode.contrast","\uC74C\uC18C \uB300\uB9BD \uC9C0\uC815"),charInput:p("wordPairs.input.char","\uAE00\uC790 \uC120\uD0DD"),pronInput:p("wordPairs.input.pron","\uBC1C\uC74C \uC120\uD0DD")},f=w=>p("wordPairs.count",{n:w}),g=[{label:m.searchMode,items:[m.include,m.pick,m.explicit],display:"segmented",labelAction:n.jsx(Aa,{title:p("wordPairs.mode.infoTitle","\uB300\uB9BD \uBC29\uC2DD"),items:[p("wordPairs.mode.infoInclude","\uC74C\uC18C \uD3EC\uD568 \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uAC00 \uBAA8\uB450 \uB4E4\uC5B4\uAC04 \uB2E8\uC5B4\uC640 \uADF8 \uB300\uB9BD\uC30D\uC744 \uCC3E\uC544\uC694."),p("wordPairs.mode.infoPick","\uC74C\uC18C \uB300\uB9BD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uAC00 \uB300\uB9BD\uC30D \uB450 \uB2E8\uC5B4\uC758 \uC2E4\uC81C \uCC28\uC774\uC810\uC77C \uB54C\uB9CC \uB9E4\uCE6D\uB3FC\uC694."),p("wordPairs.mode.infoContrast","\uC74C\uC18C \uB300\uB9BD \uC9C0\uC815 \u2014 \uAE30\uC900 \uB2E8\uC5B4\uC640 \uB300\uB9BD \uB2E8\uC5B4\uC758 \uC74C\uC18C\uB97C \uAC01\uAC01 \uC9C1\uC811 \uC120\uD0DD\uD574 \uB300\uB9BD\uC30D\uC744 \uCC3E\uC544\uC694.")]})},{label:m.phonemeOrder,items:[m.orderAny,m.orderMatch],display:"segmented",labelAction:n.jsx(Aa,{items:p("wordPairs.filter.phonemeOrderInfo",{returnObjects:!0})})},{label:m.count,items:[f(1),f(2)],display:"segmented"},{label:m.inputMode,items:[m.charInput,m.pronInput],display:"segmented",labelAction:n.jsx(Aa,{title:p("wordPairs.input.infoTitle","\uC785\uB825 \uBC29\uC2DD"),items:[p("wordPairs.input.infoChar","\uAE00\uC790 \uC120\uD0DD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uB85C \uB2E8\uC5B4(\uAE00\uC790 \uAE30\uC900)\uB97C \uCC3E\uC740 \uD6C4, \uB2E8\uC5B4\uC758 \uD45C\uC900 \uBC1C\uC74C \uB300\uB9BD\uC30D\uC744 \uCC3E\uC2B5\uB2C8\uB2E4."),p("wordPairs.input.infoPron","\uBC1C\uC74C \uC120\uD0DD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uB85C \uD45C\uC900 \uBC1C\uC74C \uB300\uB9BD\uC30D\uC744 \uCC3E\uC2B5\uB2C8\uB2E4.")]})}],y={[m.searchMode]:t==="explicit"?m.explicit:t==="pick"?m.pick:m.include,[m.phonemeOrder]:r==="ordered"?m.orderMatch:m.orderAny,[m.count]:f(i),[m.inputMode]:c==="phoneme"?m.pronInput:m.charInput},h=(w,C)=>{C===m.searchMode?a(w===m.explicit?"explicit":w===m.pick?"pick":"include"):C===m.phonemeOrder?s(w===m.orderMatch?"ordered":"unordered"):C===m.count?l(w===f(2)?2:1):C===m.inputMode&&d(w===m.pronInput?"phoneme":"word")};return n.jsx(wn,{className:u,title:e??p("wordPairs.filter.searchOptionsTitle","\uB300\uB9BD \uC124\uC815"),sections:g,selected:y,onSelect:h,align:"inline"})}function O3(e){const{title:t,items:a,columns:r,gridTemplateColumns:s,mobileGridTemplateColumns:i,searchPlaceholder:l,searchFn:c,defaultSortKey:d,defaultSortAsc:u=!0,selectedId:p,selectedIds:m,onSelect:f,onClose:g,pageSizeOptions:y=[10,25,50,100],initialPageSize:h,emptyText:w,countLabel:C,topContent:b,className:x=""}=e,{t:v}=be.useTranslation(),A=l??v("common.search","\uAC80\uC0C9"),k=w??v("common.emptyList","\uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4."),[N,_]=o.useState(""),[B,E]=o.useState(d??r[0]?.key??""),[P,H]=o.useState(u),[S,V]=o.useState(String(h??y[0]??10)),[j,M]=o.useState(1);o.useEffect(()=>{M(1)},[N,S]);const I=c!==null,G=o.useCallback(($,Y)=>{if(!Y)return!0;const ee=Y.toLowerCase();return r.some(Z=>{const ae=$[Z.key];return ae==null?!1:String(ae).toLowerCase().includes(ee)})},[r]),Q=c??G,z=o.useMemo(()=>{const $=I?a.filter(Y=>Q(Y,N)):a;return B?[...$].sort((Y,ee)=>{const Z=Y[B],ae=ee[B];return Z===ae?0:Kr(Z,ae,P)}):$},[a,N,B,P,I,Q]),q=Math.max(1,Math.ceil(z.length/Number(S)));j>q&&M(q);const W=Math.min(j,q),L=z.slice((W-1)*Number(S),W*Number(S)),D=o.useCallback($=>{B===$?H(Y=>!Y):(E($),H(!0)),M(1)},[B]),F=o.useMemo(()=>{if(typeof C=="function"){const $=z.length,Y=C($);if(typeof Y=="string"){const ee=Y.lastIndexOf(String($));if(ee>=0)return{prefix:Y.slice(0,ee),suffix:Y.slice(ee+String($).length)}}return{label:Y}}if(typeof C=="string"&&C.includes("{n}")){const[$,Y]=C.split("{n}");return{prefix:$,suffix:Y}}return{prefix:v("common.totalCountPrefix","\uCD1D "),suffix:v("common.totalCountSuffix","\uAC1C")}},[C,z.length,v]),R=o.useMemo(()=>r.map($=>({label:$.label,onClick:$.sortable!==!1?()=>D($.key):void 0,className:$.className,sortDir:$.sortable!==!1&&B===$.key?P?"asc":"desc":null})),[r,B,P,D]),O=o.useMemo(()=>y.map($=>({value:String($),label:v("common.pageSizeLabel",{n:$})})),[y,v]);return n.jsxs(Dn,{className:`popup-list ${x}`,title:t,onClose:g,children:[b,"label"in F&&n.jsx("p",{className:"toolbar__count body-1",children:F.label}),n.jsx(so,{count:"label"in F?void 0:{value:z.length,prefix:F.prefix,suffix:F.suffix},search:I?{value:N,onChange:_,placeholder:A}:void 0,pageSize:{options:O,value:S,onChange:V},pagination:{page:W,total:q,onChange:M}}),n.jsx(Co,{size:"medium",gridTemplateColumns:s,mobileGridTemplateColumns:i,resizable:!0,fields:R,items:L,onRowClick:f,renderRow:$=>{const Y=m!=null?$.id!=null&&m.has($.id):p!=null&&$.id===p;return r.map(ee=>({content:ee.render?ee.render($):$[ee.key]??"",className:De(ee.className,Y&&"popup-list__row--selected")}))},empty:k})]})}function bu(e){const{title:t,message:a,topContent:r,details:s,children:i,confirmLabel:l,cancelLabel:c,hideCancel:d=!1,extraAction:u,confirmVariant:p="main",confirmDisabled:m=!1,onConfirm:f,closeOnConfirm:g=!0,onClose:y,inline:h,size:w="small",className:C,initialFocus:b="close"}=e,{t:x}=be.useTranslation(),v=o.useRef(null);o.useEffect(()=>{if(h||b==="close")return;const E=v.current?.closest(".popup-panel"),P=Array.from(E?.querySelectorAll(".popup-footer--buttons button")??[]),H=b==="confirm"?P[P.length-1]:d?void 0:P[u?1:0];H&&!H.disabled&&H.focus()},[]);const A=o.useRef(!1),[k,N]=o.useState(!1),_=E=>{let P=!1;return{close:()=>{P=!0,E()},\uB2EB\uC558\uB098:()=>P}},B=async E=>{if(A.current)return;A.current=!0;const P=typeof document<"u"?document.activeElement:null;N(!0);let H=!1;try{H=await E()}catch(S){typeof console<"u"&&console.error(S)}finally{H||(A.current=!1,N(!1),requestAnimationFrame(()=>{const S=document.activeElement;(!S||S===document.body)&&P?.isConnected&&P.focus()}))}};return n.jsxs(Dn,{title:t,onClose:y,closeDisabled:k,inline:h,size:w,className:De("confirm-popup",r!=null&&"confirm-popup--has-top",C),buttons:[...u?[{label:u.label,variant:u.variant??"default",disabled:u.disabled||k,onClick:async({closeWithAnimation:E})=>{await B(async()=>{const P=_(E);await u.onClick(P.close);const H=u.closeOnClick??!0;return H&&E(),H||P.\uB2EB\uC558\uB098()})}}]:[],...d?[]:[{label:c??x("common.cancel","\uCDE8\uC18C"),variant:"default",disabled:k,onClick:({closeWithAnimation:E})=>E()}],{label:l??x("common.confirm","\uD655\uC778"),variant:p,disabled:m||k,onClick:async({closeWithAnimation:E})=>{await B(async()=>{const P=_(E);return await f(P.close),g&&E(),g||P.\uB2EB\uC558\uB098()})}}],children:[r!=null&&n.jsx("div",{className:"confirm-popup__top",children:r}),s&&s.length>0&&n.jsx(sr,{children:s.map((E,P)=>n.jsx(Sn,{label:E.label,children:n.jsx("span",{className:"panel-row__text body-2",children:E.value})},P))}),n.jsx("p",{ref:v,className:"body-2 confirm-popup__message",children:a}),i]})}function H3(e,t,a={}){const{t:r}=be.useTranslation(),[s,i]=o.useState(!1),l=o.useRef(!1),c=o.useCallback(()=>{l.current=!0},[]),d=o.useCallback(()=>l.current?(l.current=!1,!0):e?(i(!0),!1):!0,[e]),u=s?n.jsx(bu,{title:a.title??r("common.discardConfirm.title","\uC785\uB825\uC744 \uCDE8\uC18C\uD560\uAE4C\uC694?"),message:a.message??r("common.discardConfirm.body","\uC800\uC7A5\uD558\uC9C0 \uC54A\uC73C\uBA74 \uC9C0\uAE08\uAE4C\uC9C0 \uC785\uB825\uD55C \uB0B4\uC6A9\uC774 \uC0AC\uB77C\uC9D1\uB2C8\uB2E4."),confirmLabel:a.confirmLabel??r("common.discardConfirm.confirm","\uC785\uB825 \uCDE8\uC18C"),confirmVariant:"danger",onConfirm:()=>{i(!1),t()},onClose:()=>i(!1)}):null;return{beforeClose:d,discardPopup:u,allowClose:c}}function z3({onApply:e,onCancel:t}){const{t:a}=be.useTranslation(),[r,s]=o.useState(""),[i,l]=o.useState(!1),[c,d]=o.useState(null),u=o.useRef(null);o.useEffect(()=>{u.current?.focus()},[]);const p=o.useCallback(async g=>{const y=r.trim();if(y){l(!0),d(null);try{await e(y),g()}catch(h){d(ti(h)),l(!1),requestAnimationFrame(()=>u.current?.focus())}}},[r,e]),m=o.useCallback((g,y)=>{g.key==="Enter"&&!g.nativeEvent.isComposing&&p(y)},[p]),f=g=>{s(g.target.value),d(null)};return n.jsx(Dn,{className:"coupon-input-popup",title:a("usage.couponButton","\uCFE0\uD3F0 \uC785\uB825"),size:"small",onClose:t,closeDisabled:i,buttons:[{label:a("common.cancel","\uCDE8\uC18C"),variant:"default",disabled:i,onClick:({closeWithAnimation:g})=>g()},{label:a("coupons.applyButton","\uC801\uC6A9"),variant:"main",disabled:!r.trim()||i,onClick:({closeWithAnimation:g})=>{p(g)}}],children:({closeWithAnimation:g})=>n.jsxs(n.Fragment,{children:[n.jsx("input",{ref:u,className:"coupon-input-popup__input body-2","aria-label":a("coupons.input.label","\uCFE0\uD3F0 \uCF54\uB4DC"),placeholder:a("coupons.input.placeholder","\uCFE0\uD3F0 \uCF54\uB4DC \uC785\uB825"),value:r,onChange:f,onKeyDown:y=>m(y,g),disabled:i,autoComplete:"off",spellCheck:!1}),c&&n.jsx("p",{className:"coupon-input-popup__error caption-1",role:"alert",children:c})]})})}const yu=["var(--color-main)","var(--color-sub)"],V3=2e3;function W3(e,t){if(!t.startsWith("var("))return t;try{const a=t.slice(4,-1).trim();return getComputedStyle(e).getPropertyValue(a).trim()||null}catch{return null}}function Go({active:e=!1,count:t=40,duration:a=2e3,strength:r=1,onComplete:s,trigger:i=0}){const l=o.useMemo(()=>{const h=Math.floor(t/2),w=t-h,C=(b,x)=>Array.from({length:b}).map((v,A)=>{const k=6+Math.random()*12,N=Math.round(Math.min(18,k*Math.min(1.5,1+r*.4))),_=yu[Math.floor(Math.random()*yu.length)],B=Math.random()*300,E=(360+Math.random()*260)*r*1.2,P=(x==="left"?-95+Math.random()*40:-85-Math.random()*40)*Math.PI/180,H=Math.cos(P)*E,S=Math.sin(P)*E*1.35,V=Math.random()*720-360,j=(1200+Math.random()*3e3)*Math.min(1.6,1+r*.3),M=Math.random()>.7?"50%":"3px";return{id:`${x}-${A}`,side:x,size:N,color:_,delay:B,vx:H,vy:S,angularVel:V,life:j,borderRadius:M}});return[...C(h,"left"),...C(w,"right")]},[t,r]),c=o.useRef(null),d=o.useRef({}),u=o.useRef(null),p=o.useRef(s);o.useEffect(()=>{p.current=s},[s]);const m=o.useRef(null),f=o.useRef(null),g=()=>{if(typeof document>"u")return null;let h=document.querySelector("[data-ihab-effect-root]");return h||(h=document.createElement("div"),h.className="app-effect",h.dataset.ihabEffectRoot="",h.style.position="fixed",h.style.inset="0",h.style.pointerEvents="none",h.style.zIndex="99998",document.body.appendChild(h)),h};if(typeof document<"u"&&f.current==null&&(f.current=g()),o.useEffect(()=>{if(!e)return;if(typeof window<"u"&&window.matchMedia?.("(prefers-reduced-motion: reduce)").matches){const q=setTimeout(()=>p.current?.(),0);return()=>clearTimeout(q)}const h=1200,w=performance.now(),C=f.current&&f.current!==document.body?f.current.getBoundingClientRect():null,b=Math.max(60,(window.innerHeight||800)*.05),x=q=>Math.max(40,(q||window.innerWidth)*.02),v=C?.width||window.innerWidth||375,A=C?.height||window.innerHeight||812,k=q=>{const W=[...q].sort((L,D)=>L-D);return W[Math.floor(W.length/2)]||1},N=k(l.map(q=>Math.abs(q.vy))),_=k(l.map(q=>Math.abs(q.vx))),B=Math.sqrt(2*h*(A*.72+b))/N,E=N*B/h,P=v*.5/(_*E),H=(q,W,L)=>Math.min(L,Math.max(W,q)),S=H(B,.8,2.4),V=H(P,.7,2.2),j=a>0?a/V3:1,M=l.map(q=>({...q,life:q.life*j,vx:q.vx*V,vy:q.vy*S,startTime:w+q.delay,ended:!1})),I=C?{x:C.left-x(C.width),y:C.top+C.height+b}:{x:-x(window.innerWidth),y:window.innerHeight+b},G=C?{x:C.left+C.width+x(C.width),y:C.top+C.height+b}:{x:window.innerWidth+x(window.innerWidth),y:window.innerHeight+b},Q=q=>{let W=!1;for(const L of M){const D=d.current[L.id];if(!D||!D)continue;if(q<L.startTime){D.style.display="none",W=!0;continue}if(!L._inited){const re=L.side==="left"?I.x:G.x,ue=L.side==="left"?I.y:G.y;D.style.left=`${re}px`,D.style.top=`${ue}px`,D.style.transform="translate3d(0px, 0px, 0)",D.style.display="block",D.style.zIndex="100000",typeof L.color=="string"&&L.color.startsWith("var(")&&(D.style.background=W3(D,L.color)??"#FF0060"),L._inited=!0}const F=(q-L.startTime)/1e3;if(F<0)continue;const R=L.life/1e3;if(F>=R){D.style.opacity="0",D.style.display="none",L.ended=!0;continue}W=!0;const O=L.side==="left"?I.x:G.x,$=L.side==="left"?I.y:G.y,Y=O+L.vx*F,ee=$+L.vy*F+.5*h*F*F,Z=(L.angularVel||0)*F,ae=Y-O,_e=ee-$;D.style.transform=`translate3d(${ae}px, ${_e}px, 0) rotate(${Z}deg)`,D.style.opacity=`${Math.max(0,1-F/R)}`}W?u.current=requestAnimationFrame(Q):p.current?.()};u.current=requestAnimationFrame(Q);const z=setTimeout(()=>{try{if((f.current?f.current.querySelectorAll(".confetti"):document.querySelectorAll(".confetti")).length===0&&!document.querySelector(".party-container")){const q=document.createElement("div");q.className="party-container",q.style.position="fixed",q.style.inset="0",q.style.pointerEvents="none",q.style.overflow="visible",q.style.zIndex="2147483647";for(const W of l){const L=document.createElement("span");L.className=`confetti confetti--${W.side}`,L.setAttribute("aria-hidden","true"),L.style.display="none",L.style.position="fixed",L.style.left="0px",L.style.top="0px",L.style.width=`${W.size}px`,L.style.height=`${Math.max(4,W.size*.6)}px`,L.style.background=W.color,L.style.borderRadius=W.borderRadius,L.style.transform="translate3d(0,0,0)",L.style.opacity="0",q.appendChild(L),d.current[W.id]=L}(document.body||f.current).appendChild(q),m.current=q}}catch{}},300);return()=>{if(u.current&&cancelAnimationFrame(u.current),clearTimeout(z),m.current){try{m.current.remove()}catch{}m.current=null}}},[e,a,i,l]),!e)return null;const y=n.jsx("div",{className:"party-container",ref:c,children:l.map(h=>n.jsx("span",{"aria-hidden":!0,ref:w=>{d.current[h.id]=w},className:`confetti confetti--${h.side}`,style:{width:`${h.size}px`,height:`${Math.max(4,h.size*.6)}px`,background:h.color,borderRadius:h.borderRadius}},`${h.id}-${i}`))});return typeof document<"u"?Ut.createPortal(y,f.current||document.body):y}const Ko=e=>typeof e=="number"&&Number.isFinite(e)&&e>0?e:void 0;function q3({trigger:e=0,active:t=!1}){const[a,r]=o.useState(null);o.useEffect(()=>{if(typeof window>"u")return;const i=l=>{const c=l.detail??{};r(d=>({n:(d?.n??0)+1,count:Ko(c.count),strength:Ko(c.strength),duration:Ko(c.duration)}))};return window.addEventListener("party:trigger",i),()=>window.removeEventListener("party:trigger",i)},[]);const s=o.useCallback(()=>r(null),[]);return n.jsxs(n.Fragment,{children:[n.jsx(Go,{active:t,trigger:e}),a&&n.jsx(Go,{active:!0,trigger:a.n,count:a.count,strength:a.strength,duration:a.duration,onComplete:s})]})}function U3({title:e,sub:t,rightAction:a,titleAction:r,badge:s,badgeVariant:i="default",documentTitle:l,onBack:c,backLabel:d,wrap:u=!1}){const{t:p}=be.useTranslation();Wg(typeof e=="string"?e:l??null);const m=d??p("common.back","\uB4A4\uB85C");return n.jsxs("div",{className:u?"page-title page-title--wrap":"page-title",children:[n.jsxs("div",{className:"page-title__main",children:[n.jsxs("div",{className:"page-title__title-row",children:[c&&n.jsx(pe,{htmlType:"button",className:"page-title__back",size:48,type:"dot",icon:"chevron-left",iconSize:"large",useBorder:!1,iconColor:"var(--color-text-primary)",ariaLabel:m,showTooltipInfo:m,onClick:c}),n.jsx("h1",{className:"page-title__title h1",children:e}),s&&n.jsx("div",{className:"page-title__badge",children:n.jsx(ft,{label:s,size:"small",variant:i,fill:"outline"})}),r?n.jsx("div",{className:"page-title__title-action",children:r}):null]}),t&&n.jsx("p",{className:"page-title__sub body-2",children:t})]}),a?n.jsx("div",{className:"page-title__action",children:a}):null]})}function G3(e){return e??""}const vu=o.createContext({words:[],loading:!1});function K3(){return o.useContext(vu)}function Y3({words:e,loading:t,error:a,statusMessage:r,localVersion:s,remoteVersion:i,progress:l,clearAndRefetch:c,checkRemoteVersion:d,children:u}){return n.jsx(vu.Provider,{value:{words:e,loading:t,error:a,statusMessage:r,localVersion:s,remoteVersion:i,progress:l,clearAndRefetch:c,checkRemoteVersion:d},children:u})}function Z3({items:e,actions:t,columns:a,flat:r=!1,className:s,style:i}){const l=a??e.length;return n.jsx("section",{className:De("summary-strip",r&&"summary-strip--flat",s),style:{"--summary-strip-cols":String(l),...i},children:n.jsxs("div",{className:"summary-strip__row",children:[n.jsx("div",{className:"summary-strip__items",children:e.map((c,d)=>n.jsxs("div",{className:"summary-strip__item",children:[n.jsx("p",{className:"summary-strip__label caption-1",children:c.label}),n.jsx("p",{className:"summary-strip__value body-3b",title:typeof c.value=="string"||typeof c.value=="number"?String(c.value):void 0,children:c.value})]},d))}),t&&n.jsx("div",{className:"summary-strip__actions",children:t})]})})}const X3=(e,t)=>`${e} / ${t}`;function J3({blocks:e,sectionTitles:t,logo:a,footer:r,pageLabel:s=X3,pageWidth:i,pageHeight:l,margin:c,className:d,style:u}){const{t:p}=be.useTranslation(),m=o.useRef(null),f=o.useRef(null),g=o.useRef(null),y=o.useRef(null),[h,w]=o.useState(null),[C,b]=o.useState(!1);o.useEffect(()=>{const j=m.current;if(!j)return;const M=()=>b(j.scrollWidth>j.clientWidth+1);if(M(),typeof ResizeObserver>"u")return;const I=new ResizeObserver(M);return I.observe(j),()=>I.disconnect()},[h]);const x=e.map(j=>`${j.id}\0${j.section??""}\0${j.group??""}`).join(""),v=h&&h.shape===x?h.pages:null,[A,k]=o.useState(0);o.useEffect(()=>{const j=y.current;if(!j||typeof ResizeObserver>"u")return;const M=new ResizeObserver(()=>k(j.offsetHeight));return M.observe(j),()=>M.disconnect()},[]);const[N,_]=o.useState(0);o.useEffect(()=>{const j=f.current;if(!j||typeof ResizeObserver>"u")return;let M=null;const I=typeof requestAnimationFrame=="function"?z=>requestAnimationFrame(z):z=>setTimeout(z,16),G=typeof cancelAnimationFrame=="function"?cancelAnimationFrame:z=>clearTimeout(z),Q=new ResizeObserver(()=>{M==null&&(M=I(()=>{M=null,_(z=>z+1)}))});return Array.from(j.children).forEach(z=>Q.observe(z)),()=>{Q.disconnect(),M!=null&&G(M)}},[x]),o.useLayoutEffect(()=>{const j=f.current,M=y.current;if(!j||!M)return;const I=R=>R.getBoundingClientRect().height||R.offsetHeight,G=new Map;g.current?.querySelectorAll("[data-chrome-section]").forEach(R=>{G.set(R.dataset.chromeSection??"",I(R))});const Q=R=>I(M)-(G.get(R??"")??0),z=Array.from(j.children).map(R=>I(R)),q=[];e.forEach((R,O)=>{const $=q[q.length-1],Y=$?e[$[0]]:void 0;Y&&R.group!=null&&Y.group===R.group&&Y.section===R.section?$.push(O):q.push([O])});const W=[];let L=[],D=0;const F=()=>{L.length&&W.push(L),L=[],D=0};q.forEach(R=>{const O=R.reduce((Y,ee)=>Y+z[ee],0),$=Q(e[R[0]].section);L.length&&e[L[0]].section!==e[R[0]].section&&F(),O>$?R.forEach(Y=>{L.length&&D+z[Y]>$+.01&&F(),L.push(Y),D+=z[Y]}):(L.length&&D+O>$+.01&&F(),R.forEach(Y=>L.push(Y)),D+=O)}),F(),w(R=>R&&R.shape===x&&JSON.stringify(R.pages)===JSON.stringify(W)?R:{shape:x,pages:W})},[x,A,i,l,c,N]);const B=no,E=B,P=r??n.jsxs(n.Fragment,{children:[n.jsx("img",{src:E,alt:"IHAB",className:"report-doc__logo"}),"\xA9 IHAB, Inc. All rights reserved."]}),H=(j,M,I)=>({header:n.jsxs("div",{className:"report-doc__header",children:[n.jsx("h2",{className:"report-doc__title h3b",children:I!=null&&t?.[I]||null}),a]}),footer:n.jsxs("div",{className:"report-doc__footer caption-1",children:[n.jsx("span",{className:"report-doc__footer-left",children:P}),n.jsx("span",{className:"report-doc__page-no",children:s(j,M)})]})}),S=Array.from(new Set(e.map(j=>j.section??""))),V={...i?{"--report-page-w":i}:null,...l?{"--report-page-h":l}:null,...c?{"--report-margin":c}:null,...u};return n.jsxs("div",{ref:m,className:De("report-doc",d),style:V,tabIndex:C?0:void 0,role:C?"group":void 0,"aria-label":C?p("report.previewRegion","\uBCF4\uACE0\uC11C \uBBF8\uB9AC\uBCF4\uAE30"):void 0,children:[n.jsxs("div",{className:"report-doc__measure","aria-hidden":!0,children:[n.jsx("div",{ref:y,className:"report-doc__ruler"}),n.jsx("div",{ref:g,children:S.map(j=>{const M=H(1,1,j||void 0);return n.jsxs("div",{"data-chrome-section":j,children:[M.header,M.footer]},j)})}),n.jsx("div",{ref:f,className:"report-doc__measure-blocks",children:e.map(j=>n.jsx("div",{children:j.content},j.id))})]}),v&&n.jsx("div",{className:"report-doc__pages",children:v.map((j,M)=>{const{header:I,footer:G}=H(M+1,v.length,e[j[0]].section);return n.jsxs("section",{className:"report-doc__page",children:[I,j.map(Q=>n.jsx("div",{children:e[Q].content},e[Q].id)),G]},M)})})]})}function Q3({title:e,fields:t,columns:a=4,className:r,style:s}){return n.jsxs("div",{className:De("report-info",r),style:{"--report-info-cols":String(a),...s},children:[e&&n.jsx("p",{className:"report-info__title h5b",children:e}),n.jsx("div",{className:"report-info__grid",children:t.map((i,l)=>n.jsxs("div",{className:"report-info__field body-2",children:[n.jsx("span",{className:"report-info__label body-3",children:i.label}),n.jsx("span",{className:"report-info__value",children:i.value})]},l))})]})}const Wn=new Map;let cr=null;const e7=12;function t7(e){for(let t=e.parentElement;t&&t!==document.body;t=t.parentElement){const a=window.getComputedStyle(t);if(a.transform&&a.transform!=="none"||a.filter&&a.filter!=="none"||a.perspective&&a.perspective!=="none"||/paint|layout|strict|content/.test(a.contain||""))return t}return document}function ur(){const e=new Map;for(const t of Wn.keys()){if(!t.isConnected)continue;const a=t7(t),r=e.get(a)??[];r.push(t),e.set(a,r)}for(const t of e.values()){t.sort((r,s)=>r.compareDocumentPosition(s)&Node.DOCUMENT_POSITION_FOLLOWING?-1:1);let a=0;for(const r of t){a>0?r.style.setProperty("--update-alert-stack-offset",`${a}px`):r.style.removeProperty("--update-alert-stack-offset");const s=r.getBoundingClientRect().height;s>0&&(a+=s+e7)}}}function n7(e){return typeof window>"u"?()=>{}:(Wn.set(e,(Wn.get(e)??0)+1),Wn.get(e)===1&&typeof ResizeObserver<"u"&&(cr??(cr=new ResizeObserver(()=>ur())),cr.observe(e)),ur(),()=>{const t=(Wn.get(e)??1)-1;if(t>0){Wn.set(e,t),ur();return}Wn.delete(e),cr?.unobserve(e),e.style.removeProperty("--update-alert-stack-offset"),ur()})}function a7({title:e,message:t,actionLabel:a,onAction:r,icon:s,onClose:i,className:l=""}){const{t:c}=be.useTranslation(),d=a??c("common.update","\uC5C5\uB370\uC774\uD2B8"),u=o.useRef(null),p=o.useRef(!1);return o.useLayoutEffect(()=>{const m=u.current,f=m?.parentElement?.closest(".update-alert-stack")??m,g=f?n7(f):null;return()=>{g?.(),p.current&&m&&m.contains(document.activeElement)&&Va(m)}},[]),n.jsxs("div",{ref:u,className:De("update-alert",l),role:"alert",children:[i&&n.jsx("button",{type:"button",className:"update-alert__close",onClick:()=>{p.current=!0,i()},"aria-label":c("common.close","\uB2EB\uAE30"),children:"\xD7"}),n.jsxs("div",{className:"update-alert__top",children:[n.jsx("div",{className:"update-alert__icon",children:s??n.jsx(ls,{size:20,strokeWidth:2})}),n.jsxs("div",{className:"update-alert__body",children:[n.jsx("div",{className:"update-alert__title h4",children:e}),n.jsx("div",{className:"update-alert__message body-3",children:t})]})]}),r&&n.jsx(pe,{htmlType:"button",size:32,variant:"main",shape:"pill",className:"update-alert__action",onClick:r,children:d})]})}function r7({title:e,description:t,topActions:a,children:r,footerLeft:s,footerRight:i,onClick:l,draggable:c,onDragStart:d,onDragEnd:u,className:p}){const m=s!=null||i!=null,f=r!=null&&r!==!1,g=o.useCallback(y=>{l&&y.target===y.currentTarget&&(y.key==="Enter"||y.key===" ")&&(y.preventDefault(),l())},[l]);return n.jsxs("div",{className:De("training-card",l?"training-card--clickable":"",p),onClick:l,onKeyDown:l?g:void 0,role:l?"button":void 0,tabIndex:l?0:void 0,draggable:c,onDragStart:d,onDragEnd:u,children:[n.jsxs("div",{className:"training-card__header",children:[n.jsxs("div",{className:"training-card__title-row",children:[typeof e=="string"?n.jsx("h3",{className:"training-card__title h4",children:e}):e,a!=null&&n.jsx("div",{className:"training-card__top-actions",onClick:y=>y.stopPropagation(),children:a})]}),t!=null?typeof t=="string"?n.jsx("p",{className:"training-card__description body-3",children:t}):t:n.jsx("p",{className:"training-card__description body-3","aria-hidden":"true",children:" "})]}),f&&n.jsx("div",{className:"training-card__body",children:r}),m&&n.jsxs("div",{className:"training-card__footer",children:[s!=null&&n.jsx("div",{className:"training-card__footer-left",children:s}),i!=null&&n.jsx("div",{className:"training-card__meta",children:i})]})]})}function o7({title:e,count:t,collapsed:a=!1,onToggle:r,sort:s,actions:i,empty:l=!1,emptyContent:c,dragOver:d=!1,onDragOver:u,onDragLeave:p,onDrop:m,children:f,className:g}){const{t:y}=be.useTranslation(),h=r!=null,w=De("training-card-group",d&&"training-card-group--dragover",a&&"training-card-group--collapsed",h&&"training-card-group--collapsible",g);return n.jsxs("div",{className:w,onDragOver:u,onDragLeave:p,onDrop:m,children:[n.jsxs("header",{className:"training-card-group__header",children:[h&&n.jsx(pe,{htmlType:"button",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:a?"chevron-right":"chevron-down",ariaLabel:a?y("common.expand","\uD3BC\uCE58\uAE30"):y("common.collapse","\uC811\uAE30"),className:"training-card-group__chevron","aria-expanded":!a,onClick:r}),typeof e=="string"?n.jsx("span",{className:"training-card-group__title h5b",children:e}):e,t!==void 0&&n.jsx("span",{className:"training-card-group__count body-3b",children:t}),(s||i!=null)&&n.jsxs("span",{className:"training-card-group__actions",onClick:C=>C.stopPropagation(),children:[s&&n.jsx(tn,{size:40,options:s.options,value:s.value,placeholder:s.placeholder,onChange:s.onChange}),i]})]}),!a&&(l?n.jsx("div",{className:"training-card-group__empty body-3",children:c}):n.jsx("div",{className:"training-card-group__grid",children:f}))]})}const s7="speechear:saved_word_tables";function i7(e){if(typeof e!="object"||e===null)return!1;const t=e;return typeof t.id=="string"&&typeof t.name=="string"&&Array.isArray(t.items)}function l7(){try{const e=localStorage.getItem(s7);if(!e)return[];const t=JSON.parse(e);return Array.isArray(t)?t.filter(i7):[]}catch{return[]}}function xu(e){return{label:e.word,subLabel:e.pronunciation,colloquialLabel:e.colloquialPronunciation,homonum:e.homonum,grade:e.grade,syllables:[...e.word].length,pos:e.pos,wordType:e.wordType}}function Yo(e){return e.map(t=>t.homonum!=null?`${t.word}#${t.homonum}`:t.word).join("|")}function c7(e){const t=new Set;return e.map(a=>{let r=a.id;for(let s=2;t.has(r);s++)r=`${a.id}~${s}`;return t.add(r),r===a.id?a:{...a,id:r}})}function u7({title:e,titleIcon:t,disc:a,filterTitle:r,filterCollapsible:s,filterDefaultCollapsed:i,filterHeaderSummary:l,items:c,onSaveComplete:d,onLoad:u,onRemoveItem:p,onReset:m,resetLabel:f,saveButtonLabel:g,secondarySaveButtonLabel:y,onReorder:h,showCellCount:w,onAddItem:C,className:b,renderSavePopup:x,renderWordSearch:v,hideControls:A,saveOnly:k,tableName:N,nameValue:_,onNameChange:B,descriptionValue:E,onDescriptionChange:P,namePlaceholder:H,descriptionPlaceholder:S,existingNames:V,editingName:j,onCancel:M,initialItemsPerPage:I,renderCellAction:G,actionsLeftExtra:Q}){const{t:z}=be.useTranslation(),q=f??z("wordPrint.clearAllSelection","\uBAA8\uB450 \uC120\uD0DD \uD574\uC81C"),W=c===void 0,L=!!B,[D,F]=o.useState([]),R=(_??"").trim(),O=R||(H??"").trim(),$=(E??"").trim()||(S??"").trim(),Y=(V??[]).map(J=>J.trim().toLowerCase()),ee=[j?.trim().toLowerCase(),...D].filter(J=>!!J),Z=[...Y];for(const J of ee){const ne=Z.indexOf(J);ne!==-1&&Z.splice(ne,1)}const ae=R!==""&&Z.includes(R.toLowerCase()),[_e,re]=o.useState(Array(4).fill(null)),[ue,U]=o.useState(4),[oe,de]=o.useState(null),ve=_e.slice(0,ue),[ge,Se]=o.useState("landscape"),[Ce,Ee]=o.useState(["\uC774\uBBF8\uC9C0","\uB2E8\uC5B4","\uD45C\uC900 \uBC1C\uC74C"]),[Be,Re]=o.useState("\uD45C\uC2DC"),[Le,me]=o.useState(!0),[ke,Me]=o.useState(!0),Te=o.useRef(null),Ae=o.useRef([]),[ie,ye]=o.useState(I==="all"?Number.POSITIVE_INFINITY:I??8),[se,Ie]=o.useState("right"),[ze,Ge]=o.useState(!1),[Ze,Ye]=o.useState(!1),{toastMessage:Ke,toastType:Oe,showWarning:Pe,clearToast:lt}=il("warning"),wt=o.useCallback(()=>de(null),[de]);C&&!W&&!w&&fn("word-table-block-add-without-cell-count",'[WordTableBlock] \uD45C\uC2DC \uBAA8\uB4DC\uC5D0\uC11C onAddItem \uC740 showCellCount \uC640 \uD568\uAED8 \uC918\uC57C "\uCD94\uAC00\uD558\uAE30" \uCE78\uC774 \uC0DD\uAE34\uB2E4.');const[Dt,Nt]=o.useState(()=>Math.max(c?.length??1,1)),nt=W?ue:w?Math.max(Dt,c?.length??1,1):Math.max(c?.length??0,1),{width:Je,height:at}=aa[ge],Qe=!W&&!w,We=c?.length??0,mt=Math.min(ie,Math.max(We,1)),He=Qe?mt:nt,st=Qe?pc(c??[],He):null,Ct=!!st&&st.length>1,ut=W?ve.some(J=>J!==null&&J.length>1):(c??[]).some(J=>(J.words??[]).length>1),vt=N?.trim()||`${ci(Ca())} ${ut?z("wordTable.printFileNamePair","\uB300\uB9BD\uC30D\uD45C"):z("wordTable.printFileNameSingle","\uB2E8\uC5B4\uD45C")}`,ot=o.useCallback(()=>Ct?Ae.current.filter(J=>J!==null):Te.current?[Te.current]:[],[Ct]),{print:Fe,openNewWindow:rt,downloadHtml:bt}=Bo({getElements:ot,paperW:Je,paperH:at,fileName:vt,onPopupBlocked:()=>{Pe(z("wordTable.popupBlocked","\uD31D\uC5C5\uC774 \uCC28\uB2E8\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uBE0C\uB77C\uC6B0\uC800 \uC124\uC815\uC5D0\uC11C \uD31D\uC5C5\uC744 \uD5C8\uC6A9\uD574 \uC8FC\uC138\uC694."))}}),zt=J=>{U(J),re(ne=>ne.length>=J?ne:[...ne,...Array(J-ne.length).fill(null)]),de(null)},et=J=>{re(ne=>{const Ne=[...ne];return Ne[J]=null,Ne}),oe===J&&de(null)},Yt=J=>{if(oe===null)return;const ne=oe;re(qe=>{const tt=[...qe];return tt[ne]=J.length>0?J:null,tt});const Ne=ve.findIndex((qe,tt)=>tt>ne&&qe===null);de(Ne!==-1?Ne:null)},kn=W?ve.some(J=>J?.some(ne=>!!ne.colloquialPronunciation)):(c??[]).some(J=>(J.words??[]).some(ne=>!!ne.colloquialLabel)),Lt=o.useMemo(()=>Gn()?W?_e.slice(0,ue).flatMap(J=>(J??[]).map(ne=>[ne.word,ne.homonum])):(c??[]).flatMap(J=>(J.words??[]).map(ne=>[ne.label,ne.homonum])):[],[W,_e,ue,c]),[nn,an]=o.useState(!1);o.useEffect(()=>{if(Lt.length===0)return;let J=!1;return Promise.all(Lt.map(([ne,Ne])=>Xs(ne,Ne))).then(ne=>{J||an(ne.some(Boolean))},()=>{}),()=>{J=!0}},[Lt]);const rn=Lt.length>0&&nn,Mn=o.useMemo(()=>[...W||w?[{label:z("wordTable.filter.columns","\uCE78 \uC218"),items:Uy.map(J=>({value:`${J}\uCE78`,displayLabel:z("wordTable.filter.column",{count:J})})),display:"segmented"}]:[],...Qe&&(c?.length??0)>0?[Nc(z,{hasPairs:ut,itemCount:We})]:[],...Ct?[Dc(z)]:[]],[z,W,w,Qe,c?.length,ut,We,Ct]),on={...W||w?{[z("wordTable.filter.columns","\uCE78 \uC218")]:`${nt}\uCE78`}:{},...Qe&&(c?.length??0)>0?{[z(ut?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord")]:`${mt}\uAC1C`}:{},...Ct?{[z("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")]:Sc[se]}:{}},Ln=(J,ne)=>{ne===z("wordTable.filter.columns","\uCE78 \uC218")?W?zt(parseInt(J)):Nt(parseInt(J)):ne===z(ut?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord")?ye(Ec(parseInt(J),We)):ne===z("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")&&Ie(jc(J))},$t=W?c7(ve.filter(J=>J!==null&&J.length>0).map(J=>({id:Yo(J),words:J.map(xu)}))):c??[],gt=()=>{W&&re(J=>J.length>ue?J.slice(0,ue):J)},sn=(J=!1)=>{if(Ye(J),L&&d){const ne=O.trim().toLowerCase();ne&&F(Ne=>Ne.includes(ne)?Ne:[...Ne,ne]),d(O,$t,$||void 0,J),gt();return}if(k&&d){d("",$t,void 0,J),gt();return}if(d){Ge(!0);return}bt()},[Xt,St]=o.useState(!1),[ln,Vt]=o.useState(""),Wt=ln.trim(),un=Wt!==""&&Y.includes(Wt.toLowerCase()),dn=()=>{Vt(O?z("wordTable.save.copyName",{name:O,defaultValue:"{{name}} (\uBCF5\uC0AC)"}):""),St(!0)},le=()=>{!Wt||un||!d||(d(Wt,$t,$||void 0,!0),gt(),St(!1))},xe=$t.length===0,K=xe||L&&(O===""||ae),ce=()=>{if(xe){Pe(z("wordTable.emptyItems","\uB2E8\uC5B4\uB97C 1\uAC1C \uC774\uC0C1 \uCD94\uAC00\uD574\uC8FC\uC138\uC694."));return}if(L&&O===""){Pe(z("wordTable.save.nameRequired","\uD45C \uC774\uB984\uC744 \uC785\uB825\uD574 \uC8FC\uC138\uC694."));return}L&&ae&&Pe(z("wordTable.save.duplicateName","\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4."))},he=n.jsx(ra,{items:$t,orientation:ge,contentTypes:Ce,cutLine:Be,showOutline:Le,showDivLine:ke,count:nt});return n.jsxs(n.Fragment,{children:[n.jsxs(na,{type:"page",icon:t,title:e,disc:a,className:De("word-table-block",b),children:[Xt&&n.jsx(Dn,{size:"small",title:y??z("wordTable.saveAsNewButton","\uB2E4\uB978 \uC774\uB984\uC73C\uB85C \uC800\uC7A5"),onClose:()=>St(!1),footer:({closeWithAnimation:J})=>n.jsxs(n.Fragment,{children:[n.jsx(pe,{htmlType:"button",size:48,type:"bar",label:z("common.cancel","\uCDE8\uC18C"),onClick:J}),n.jsx(pe,{htmlType:"button",size:48,type:"bar",variant:"main",label:z("common.save","\uC800\uC7A5"),disabled:!Wt||un,onClick:le})]}),children:n.jsx(zn,{label:z("wordTable.save.nameLabel","\uC774\uB984"),value:ln,onChange:Vt,placeholder:z("wordTable.save.placeholder","\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC81C\uBAA9\uC744 \uC785\uB825\uD558\uC138\uC694."),maxLength:40,size:48,fullWidth:!0,autoFocus:!0,onEnter:le,error:un?z("wordTable.save.duplicateName","\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4."):void 0})}),ze&&d&&x?.({defaultName:typeof e=="string"?e:z("wordTable.defaultName","\uB2E8\uC5B4 \uD45C"),preview:he,previewW:Je,previewH:at,items:$t,existingNames:l7().map(J=>J.name),saveAsNew:Ze,onSave:(J,ne)=>{d(J,$t,ne,Ze),gt(),Ge(!1)},onCancel:()=>Ge(!1)}),(W||C)&&oe!==null&&v?.({cellIndex:oe,onConfirm:W?Yt:J=>{if(C){const ne=J[0];if(ne){const Ne=new Set((c??[]).map(tt=>tt.id));let qe=Yo([ne]);for(let tt=2;Ne.has(qe);tt++)qe=`${Yo([ne])}~${tt}`;C({id:qe,words:[xu(ne)]})}}de(null)},onClose:wt}),!A&&n.jsx(wo,{title:r,collapsible:s,defaultCollapsed:i,headerSummary:l,hasImage:rn,hasColloquial:kn,contentTypes:Ce,orientation:ge,showOutline:Le,cutLine:Be,showDivLine:ke,setters:{setContentTypes:Ee,setOrientation:Se,setShowOutline:me,setCutLine:Re,setShowDivLine:Me},showCutLine:(Qe?He:nt)>1,showDivLine2:ut,middleSections:Mn,extraSelected:on,onExtraSelect:Ln}),Ct&&st?n.jsx("div",{className:"word-table-block__pages",children:st.map((J,ne)=>n.jsx(ra,{orientation:ge,contentTypes:Ce,cutLine:Be,showOutline:Le,showDivLine:ke,count:He,items:J,onRemoveItem:p,onReorder:h&&((Ne,qe)=>h(Ne+ne*He,qe+ne*He)),renderCellAction:G&&((Ne,qe)=>G(Ne+ne*He,qe)),contentRef:Ne=>{Ae.current[ne]=Ne},pageNumber:{current:ne+1,total:st.length},pageNumberPosition:se},ne))}):n.jsx(ra,{orientation:ge,contentTypes:Ce,cutLine:Be,showOutline:Le,showDivLine:ke,count:nt,items:W?void 0:c??[],editCells:W?ve:void 0,activeCell:oe,onActivateCell:W||C?de:void 0,onRemoveCell:W?et:void 0,onRemoveItem:W?void 0:p,onReorder:W?void 0:h,renderCellAction:W?void 0:G,showFillerAdd:!!C,contentRef:Te}),L&&!A&&n.jsxs(sr,{size:"medium",labelWidth:64,useBorder:!1,useRowBorder:!1,className:"word-table-block__meta",children:[n.jsx(Sn,{variant:"custom",label:z("wordTable.save.nameLabel","\uC774\uB984"),required:!0,align:"vertical",useFullWidth:!0,children:n.jsx(zn,{required:!0,value:_??"",onChange:B,placeholder:H?H+z("wordTable.save.autoFillHint"," (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)"):z("wordTable.save.placeholder","\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC81C\uBAA9\uC744 \uC785\uB825\uD558\uC138\uC694."),ariaLabel:z("wordTable.save.nameLabel","\uC774\uB984"),maxLength:40,size:48,fullWidth:!0,error:ae?z("wordTable.save.duplicateName","\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4."):void 0,onKeyDown:J=>{(J.key==="Tab"&&!J.shiftKey||J.key===" ")&&!(_??"").trim()&&(H??"").trim()&&(J.preventDefault(),B?.(H??""))}})}),n.jsx(Sn,{variant:"custom",label:z("wordTable.save.descriptionLabel","\uC124\uBA85"),align:"vertical",useFullWidth:!0,children:n.jsx(zn,{value:E??"",onChange:P,placeholder:S?S+z("wordTable.save.autoFillHint"," (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)"):z("wordTable.save.descriptionPlaceholder","\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC124\uBA85\uC744 \uC785\uB825\uD558\uC138\uC694."),ariaLabel:z("wordTable.save.descriptionLabel","\uC124\uBA85"),maxLength:200,multiline:!0,rows:2,fullWidth:!0,onKeyDown:J=>{(J.key==="Tab"&&!J.shiftKey||J.key===" ")&&!(E??"").trim()&&(S??"").trim()&&(J.preventDefault(),P?.(S??""))}})})]})]}),!A&&n.jsxs("div",{className:"word-table-block__actions",children:[n.jsxs("div",{className:"word-table-block__actions-left",children:[!k&&m&&n.jsx(pe,{htmlType:"button",size:40,type:"bar",label:q,onClick:m}),!k&&Q,!k&&u&&n.jsx(pe,{htmlType:"button",size:40,type:"bar",label:z("wordTable.load","\uBD88\uB7EC\uC624\uAE30"),onClick:u}),!k&&n.jsx(pe,{htmlType:"button",size:40,type:"bar",label:z("wordTable.openNewWindow","\uC0C8 \uCC3D\uC73C\uB85C \uBCF4\uAE30"),onClick:rt})]}),n.jsxs("div",{className:"word-table-block__actions-right",children:[M&&n.jsx(pe,{htmlType:"button",size:"56",type:"bar",label:z("common.cancel","\uCDE8\uC18C"),onClick:M}),!k&&n.jsx(pe,{htmlType:"button",size:"56",type:"bar",label:z("wordTable.print","\uC778\uC1C4\uD558\uAE30"),onClick:Fe}),y&&n.jsx(pe,{htmlType:"button",size:"56",type:"bar",label:y,onClick:()=>L?dn():sn(!0),disabled:xe,onDisabledClick:()=>{Pe(z("wordTable.emptyItems","\uB2E8\uC5B4\uB97C 1\uAC1C \uC774\uC0C1 \uCD94\uAC00\uD574\uC8FC\uC138\uC694."))}}),n.jsx(pe,{htmlType:"button",size:"56",type:"bar",variant:"main",label:g??z("wordTable.saveButton","\uC800\uC7A5\uD558\uAE30"),onClick:()=>sn(!1),disabled:K,onDisabledClick:ce})]})]}),n.jsx(ea,{message:Ke,type:Oe,onClose:lt})]})}function _u({items:e,className:t}){const a=e.length,r=a<=3?1:2,s=Math.ceil(a/r)||1,i=r*s;return n.jsx("div",{className:De("word-table-thumb",t),style:{gridTemplateColumns:`repeat(${r}, 1fr)`},children:Array.from({length:i},(l,c)=>{const d=e[c];return d?n.jsx("div",{className:"word-table-thumb__cell",children:(d.words?.length?d.words:[{label:d.id}]).map((u,p)=>n.jsxs(o.Fragment,{children:[p>0&&n.jsx("span",{className:"word-table-thumb__divider"}),n.jsx("span",{className:"word-table-thumb__word body-3",children:u.label})]},p))},c):n.jsx("div",{className:"word-table-thumb__cell word-table-thumb__cell--empty"},c)})})}function d7({items:e,name:t,description:a,createdAt:r,published:s,publishedLabel:i,shared:l,sharedLabel:c,isNew:d,publisherName:u,publishedAt:p,likeCount:m,downloadCount:f,onPublisherClick:g,selected:y,onClick:h,onMore:w,titleNode:C,className:b}){const{t:x}=be.useTranslation(),v=C!=null,A=u!=null||p!=null||m!=null||f!=null,k=N=>{N.target===N.currentTarget&&!v&&(N.key==="Enter"||N.key===" ")&&(N.preventDefault(),h?.())};return n.jsxs("div",{className:De("word-table-button",y?"word-table-button--selected":"",A?"":"word-table-button--no-footer",b),role:"button",tabIndex:0,"aria-label":t,onClick:v?void 0:h,onKeyDown:k,children:[d&&n.jsx("span",{className:"word-table-button__new-dot","aria-label":x("myWordTable.newBadge","\uC0C8\uB85C \uB9CC\uB4E0 \uD45C")}),n.jsx(_u,{items:e,className:"word-table-button__thumb"}),n.jsxs("div",{className:"word-table-button__info",children:[n.jsxs("div",{className:"word-table-button__info-text",children:[C??n.jsx("div",{className:"word-table-button__title h4",children:t}),a&&n.jsx("div",{className:"word-table-button__desc body-3",children:a})]}),w&&!v&&n.jsx(pe,{htmlType:"button",className:"word-table-button__more",size:32,type:"dot",variant:"transparent-gray",useBorder:!1,icon:"ellipsis",ariaLabel:x("common.moreFor",{name:t}),onClick:N=>{N.stopPropagation(),w(N)}})]}),(r||s||l)&&n.jsxs("div",{className:"word-table-button__meta-row",children:[n.jsx("span",{className:"word-table-button__meta caption-1",children:r?li(r,x):""}),n.jsxs("span",{className:"word-table-button__badges",children:[s&&n.jsx(ft,{className:"word-table-button__badge",size:"small",variant:"main",fill:"soft",iconLeft:"book-marked",label:i??x("myWordTable.publishedBadge","\uBC1C\uD589\uB428")}),l&&n.jsx(ft,{className:"word-table-button__badge",size:"small",fill:"soft",iconLeft:"link",label:c??x("myWordTable.sharedBadge","\uACF5\uC720 \uC911")})]})]}),A&&n.jsxs("div",{className:"word-table-button__footer",children:[n.jsxs("span",{className:"word-table-button__store-by",children:[u&&n.jsx("button",{className:"training-card__publisher body-4",type:"button",onClick:N=>{N.stopPropagation(),g?.()},children:u}),p&&n.jsx("span",{className:"training-card__date body-4",children:li(p,x)})]}),n.jsxs("span",{className:"word-table-button__store-stats",children:[m!=null&&n.jsx(ft,{size:"small",fill:"soft",variant:"like",iconLeft:"heart",label:String(m)}),f!=null&&n.jsx(ft,{size:"small",fill:"soft",variant:"main",iconLeft:"download",label:String(f)})]})]})]})}/**
|
|
1010
1010
|
* @license lucide-react v1.38.0 - ISC
|
|
1011
1011
|
*
|
|
1012
1012
|
* This source code is licensed under the ISC license.
|
|
1013
1013
|
* See the LICENSE file in the root directory of this source tree.
|
|
1014
|
-
*/const
|
|
1014
|
+
*/const p7=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]],m7=te("image",p7);/**
|
|
1015
1015
|
* @license lucide-react v1.38.0 - ISC
|
|
1016
1016
|
*
|
|
1017
1017
|
* This source code is licensed under the ISC license.
|
|
1018
1018
|
* See the LICENSE file in the root directory of this source tree.
|
|
1019
|
-
*/const d7=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]],p7=te("circle-x",d7);function m7(e){return{idle:0,"word-download":1,"image-list":2,"image-match":2,"pair-build":3,done:4}[e]??0}function Zo({icon:e,label:t,state:a,pct:r,subText:s}){const{t:i}=be.useTranslation(),l=a==="done",c=a==="pending",d=a==="error",u=l?100:r??0;return n.jsxs("div",{className:"wdup-phase-card",children:[n.jsx("div",{className:`wdup-phase-card__icon${l?" wdup-phase-card__icon--done":d?" wdup-phase-card__icon--error":""}`,children:l?n.jsx(ps,{size:22,color:"white",strokeWidth:2.5}):d?n.jsx(p7,{size:22,color:"white",strokeWidth:2.5}):n.jsx("span",{className:`wdup-phase-card__icon-inner${c?" wdup-phase-card__icon-inner--pending":""}`,children:e})}),n.jsxs("div",{className:"wdup-phase-card__body",children:[n.jsxs("div",{className:"wdup-phase-card__top",children:[n.jsx("span",{className:`wdup-phase-card__label body-2${c?" wdup-phase-card__label--pending":""}`,children:t}),l?n.jsx(ft,{variant:"sub",fill:"soft",size:"small",label:i("common.done","\uC644\uB8CC")}):d?n.jsx(ft,{variant:"danger",fill:"soft",size:"small",label:i("common.failed","\uC2E4\uD328")}):(s||r!==void 0)&&n.jsxs("span",{className:"wdup-phase-card__sub body-3",children:[s,s&&r!==void 0?` \xB7 ${r}%`:r!==void 0?`${r}%`:""]})]}),!c&&n.jsx("div",{className:"wdup-bar",children:n.jsx("div",{className:`wdup-bar__fill${l?" wdup-bar__fill--done":d?" wdup-bar__fill--error":""}${a==="active"&&r===void 0?" wdup-bar__fill--indeterminate":""}`,style:{width:r!==void 0||l||d?`${d?100:u}%`:void 0}})})]})]})}function h7({title:e,progress:t,onDone:a,onRetry:r,onClose:s,inline:i}){const{t:l}=be.useTranslation(),{phase:c,error:d,wordCount:u,imagePage:p,imageDone:m,imageTotal:h,pairPercent:g}=t,y=m7(c),f=c==="done",w=!!d;function C(B){return w&&y===B?"error":y>B?"done":y===B?"active":"pending"}const b=C(1),_=C(2),x=C(3),k=c==="image-match"&&h?Math.round((m??0)/h*100):void 0,v=o.useMemo(()=>{if(_!=="done"){if(c==="image-list")return l("wordData.checkingPage",{page:p??1});if(c==="image-match"&&h)return l("wordData.imageCount",{done:Rr(m),total:Rr(h)})}},[_,c,p,h,m,l]);return n.jsx(Dn,{inline:i,className:"popup--word-data-update",title:e,footer:w&&r?n.jsx(pe,{htmlType:"button",size:56,variant:"main",onClick:r,children:l("common.retry","\uB2E4\uC2DC \uC2DC\uB3C4")}):w?n.jsx(pe,{htmlType:"button",size:56,variant:"main",onClick:s??a,children:l("common.close","\uB2EB\uAE30")}):n.jsx(pe,{htmlType:"button",size:56,variant:"main",disabled:!f,onClick:a,children:l("common.done","\uC644\uB8CC")}),children:n.jsxs("div",{className:"wdup-cards",children:[n.jsx(Zo,{icon:n.jsx(is,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:l("wordData.phaseWordDownload","\uB2E8\uC5B4 \uB370\uC774\uD130 \uB2E4\uC6B4\uB85C\uB4DC"),state:b,subText:b==="active"?l("wordData.downloadingCount",{n:Rr(u)}):void 0}),n.jsx(Zo,{icon:n.jsx(u7,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:l("wordData.phaseImageCheck","\uC774\uBBF8\uC9C0 \uD655\uC778"),state:_,pct:k,subText:v}),n.jsx(Zo,{icon:n.jsx(us,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:l("wordData.phasePairAnalysis","\uB2E8\uC5B4\uC30D \uBD84\uC11D"),state:x,pct:x==="active"?g??0:void 0,subText:void 0})]})})}function f7({enabled:e=!1,renderResultPopup:t}={}){const{t:a}=be.useTranslation(),[r,s]=o.useState(null),[i,l]=o.useState(null),c=g=>{let y=null;g==="noise"?y={score:3,contextsLength:5,results:[{sentence:"\uBB38\uC7A5 A",judgement:!0,wording:"\uC798 \uB4E4\uB9BC",useAnswer:!1},{sentence:"\uBB38\uC7A5 B",judgement:!1,wording:"\uC548 \uB4E4\uB9BC",useAnswer:!1},{sentence:"\uBB38\uC7A5 C",judgement:!0,wording:"\uC798 \uB4E4\uB9BC",useAnswer:!1},{sentence:"\uBB38\uC7A5 D",judgement:null,wording:"\uC548 \uD568",useAnswer:!1},{sentence:"\uBB38\uC7A5 E",judgement:!1,wording:"\uC548 \uB4E4\uB9BC",useAnswer:!1}]}:g==="short"?y={score:2,contextsLength:3,results:[{sentence:"\uBE44\uBE54\uBC25 \uC124\uBA85",answer:"\uBE44\uBE54\uBC25",selected:"\uBE44\uBE54\uBC25",selectedText:"\uBE44\uBE54\uBC25",correct:!0},{sentence:"\uBCF4\uC308 \uC124\uBA85",answer:"\uBCF4\uC308",selected:"\uC871\uBC1C",selectedText:"\uC871\uBC1C",correct:!1},{sentence:"\uCE7C\uAD6D\uC218 \uC124\uBA85",answer:"\uCE7C\uAD6D\uC218",selected:void 0,selectedText:void 0,correct:void 0}]}:g==="long"?y={score:4,contextsLength:4,results:[{sentence:"\uAE34 \uC774\uC57C\uAE30 1",answer:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 1",selectedText:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 1",correct:!0},{sentence:"\uAE34 \uC774\uC57C\uAE30 2",answer:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 2",selectedText:"\uC120\uD0DD \uD14D\uC2A4\uD2B8 2",correct:!1},{sentence:"\uAE34 \uC774\uC57C\uAE30 3",answer:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 3",selectedText:void 0,correct:void 0},{sentence:"\uAE34 \uC774\uC57C\uAE30 4",answer:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 4",selectedText:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 4",correct:!0}]}:g==="order"&&(y={score:1,contextsLength:2,results:[{sentence:"\uC21C\uC11C \uBB38\uC81C 1",answer:"1,2,3",selectedText:"1,2,3",correct:!0},{sentence:"\uC21C\uC11C \uBB38\uC81C 2",answer:"A,B,C",selectedText:"B,A,C",correct:!1}]}),l(y),s(g)},d=o.useCallback(()=>{s(null),l(null)},[]),u=o.useCallback(()=>c("noise"),[]),p=o.useCallback(()=>c("short"),[]),m=o.useCallback(()=>c("long"),[]),h=o.useCallback(()=>c("order"),[]);return e?n.jsxs("div",{className:"debug-result-launcher",children:[n.jsxs("div",{className:"debug-buttons",children:[n.jsx("button",{type:"button",className:"debug-button",onClick:u,children:a("debug.showResult",{type:"Noise",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})}),n.jsx("button",{type:"button",className:"debug-button",onClick:p,children:a("debug.showResult",{type:"ShortStory",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})}),n.jsx("button",{type:"button",className:"debug-button",onClick:m,children:a("debug.showResult",{type:"LongStory",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})}),n.jsx("button",{type:"button",className:"debug-button",onClick:h,children:a("debug.showResult",{type:"Order",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})})]}),r&&i?t?.({score:i.score,contextsLength:i.contextsLength,results:i.results,onReplay:d,onClose:d}):null]}):null}exports.Accordion=db,exports.ActionCard=J2,exports.Alert=n4,exports.AppHeader=gb,exports.AudioMeter=ho,exports.AudioPlayer=$o,exports.Avatar=c4,exports.Badge=ft,exports.BarChart=Q4,exports.BarChartControls=Ul,exports.Board=N4,exports.BottomNav=ul,exports.BrandIdentity=fl,exports.Breadcrumb=p4,exports.BulkBar=O4,exports.Button=pe,exports.CORE_VERSION=U2,exports.Calendar=xy,exports.CardStep=pu,exports.ChartLegend=io,exports.ChartSection=lo,exports.ChartTotal=Da,exports.Checkbox=Ol,exports.ChoiceChips=_5,exports.CircleBadge=Jb,exports.CodeBox=I4,exports.ColorPicker=g4,exports.CompanyMeta=M4,exports.ConfirmPopup=bu,exports.ConfirmStep=cu,exports.ConfirmWithTextStep=uu,exports.ContrastFilterPanel=R3,exports.CoreScope=Q2,exports.CountTile=w4,exports.CouponInputPopup=F3,exports.DEFAULT_NOISE_SETTINGS=Ma,exports.DatePicker=U4,exports.DebugResultLauncher=f7,exports.DescriptionTooltip=Fn,exports.DeviceSideTable=by,exports.Dialog=B4,exports.Divider=Qb,exports.Dropdown=en,exports.EffectPartyPopper=Go,exports.EffectPartyPopperHost=z3,exports.EmptyState=Z2,exports.ErrorState=X2,exports.FILTER_ALL_VALUE=ln,exports.FileUpload=d4,exports.FilterPanel=wn,exports.FilterSectionInfo=Aa,exports.Footer=w5,exports.GameIntro=ny,exports.Header=Cl,exports.Icon=Ue,exports.IconGridMenu=x5,exports.IconRenderer=Ue,exports.InfoTooltip=gn,exports.ItemActions=z4,exports.LEVEL_MAX=sa,exports.LINE_CHART_HOVER_DELAY_MS=Gl,exports.LandingBottomSticky=A5,exports.LandingHeader=k5,exports.LineChart=ty,exports.ListPopup=P3,exports.ListenStep=lu,exports.Loader=Ea,exports.MARKS=tr,exports.MARK_ICON=cc,exports.MARK_VARIANT=uc,exports.MediaQueryOverrideContext=bi,exports.MenuTooltip=_a,exports.NOISE_RATIO_MAX=Sa,exports.NOISE_RATIO_STEP=Fc,exports.NoisePlayerContext=jo,exports.NoiseSettingsTooltip=tu,exports.NoticeBox=ef,exports.OrderListStep=du,exports.PASS_CARD_BG_VARS=Hn,exports.POS_LABEL=mc,exports.PROMO_BANNER_BG_COMPONENTS=Ji,exports.PROMO_BANNER_BG_OPTIONS=zg,exports.PROMO_BANNER_BG_VARS=ba,exports.Page=ir,exports.PageTitle=V3,exports.Pagination=Ya,exports.Panel=sr,exports.PanelGrid=r3,exports.PanelRow=Sn,exports.PanelRowDevice=a3,exports.PassCard=Bl,exports.PassCardBg=Kb,exports.PassCardBgIHAB=Yb,exports.PassCardBgLeftColorGrid=Zb,exports.PassCardBgTwoCircle=xl,exports.PaymentPlan=Gb,exports.PersonCard=E4,exports.PhonemeFilterPanel=$3,exports.PhonemeSelectBlock=M3,exports.Popup=Dn,exports.ProgressBar=cy,exports.ProgressIndicator=nc,exports.PromoBanner=lb,exports.PromoBannerBgDark=Pi,exports.PromoBannerBgDeep=ji,exports.PromoBannerBgDiagonal=Hi,exports.PromoBannerBgDots=Vi,exports.PromoBannerBgInstagram=Xi,exports.PromoBannerBgMain=Ai,exports.PromoBannerBgNaver=Yi,exports.PromoBannerBgOutline=qi,exports.PromoBannerBgRadial=Fi,exports.PromoBannerBgSoft=Ni,exports.PromoBannerBgSoftSub=Mi,exports.PromoBannerBgSub=Di,exports.PromoBannerBgSuccess=Gi,exports.PromoBannerBgWarm=$i,exports.PublicationCard=S4,exports.Radio=Sl,exports.RadioGroup=e4,exports.Rating=h4,exports.ReportDocument=Y3,exports.ReportInfoPanel=Z3,exports.RingChart=ry,exports.SENTENCE_TRAINING_TYPES=No,exports.SearchSummary=o4,exports.Section=na,exports.SectionHeadFloat=zl,exports.SectionHeader=T4,exports.SegmentedControl=xn,exports.ShortcutBadge=Dl,exports.SideNav=hl,exports.Slider=Jl,exports.SoundCompass=Xb,exports.SplashLogo=j4,exports.StatChart=oy,exports.SummaryStrip=G3,exports.TRAINING_TOOLTIP_HOVER_DELAY_MS=Tl,exports.Table=Co,exports.TableFilterPanel=wo,exports.Tabs=s4,exports.TextBoxTooltip=or,exports.TextField=zn,exports.Timeline=D4,exports.Toast=ea,exports.Toggle=Fl,exports.Toolbar=so,exports.Tooltip=Qt,exports.TooltipInfo=gn,exports.TooltipTextBox=or,exports.TopBanner=cb,exports.TrainingBlock=wy,exports.TrainingBlockButton=ao,exports.TrainingCard=t7,exports.TrainingCardGroup=n7,exports.TrainingPagePopup=Tn,exports.TrainingPagePopupBottom=nu,exports.TrainingPagePopupTitle=au,exports.TrainingResultPopup=hu,exports.TrainingStep=Vn,exports.TrainingStepAudioPlayer=$o,exports.TrainingStepBullet=Gc,exports.TrainingStepCard=Xc,exports.TrainingStepConfirm=Po,exports.TrainingStepConfirmWithText=Io,exports.TrainingStepListen=Fo,exports.TrainingStepOrderList=Oo,exports.TrainingStepTextBox=Zc,exports.TrainingStepTitle=Yc,exports.TrainingTooltip=Ml,exports.TrainingWordCard=vo,exports.UpdateAlert=e7,exports.WAVE_A_MAX=R5,exports.WAVE_H1_PX=Wc,exports.WAVE_HMAX_PX=$5,exports.WORD_TABLE_PAPER=aa,exports.WORD_TYPE_LABEL=hc,exports.WordDataProvider=U3,exports.WordDataUpdatePopup=h7,exports.WordImageTooltip=gu,exports.WordSearchFilterPanel=L3,exports.WordSearchResultBlock=j3,exports.WordTable=ra,exports.WordTableBlock=i7,exports.WordTableButton=l7,exports.WordTablePopup=Gy,exports.WordTableThumbnail=_u,exports.buildMonthChartData=K4,exports.cellKey=t5,exports.cellLabel=e5,exports.cellsForLabels=m5,exports.clearPassCardBgTheme=vn,exports.clearPromoBannerBgTheme=Mt,exports.closeTrainingPopup=c3,exports.companyTypeLabel=W3,exports.createTrainingScenario=p3,exports.cx=De,exports.deriveNoiseContexts=b3,exports.derivePassCard=bl,exports.draftValues=y5,exports.effectiveNoiseVolume=Do,exports.effectiveSpeechVolume=Hc,exports.expandSlashLabel=_o,exports.formatDuration=h5,exports.getControlDateRange=ay,exports.getPayloadTimestamp=Vo,exports.getPromoBannerBgTheme=Ur,exports.getSelectedFromPayload=h3,exports.getSelectedText=f3,exports.getStepPayload=su,exports.getSteppedPayload=C3,exports.injectPassCardBgTheme=yn,exports.injectPromoBannerBgTheme=Tt,exports.isSelectionCorrect=g3,exports.labelOfCellKey=Pc,exports.labelsForSave=Qy,exports.levelToPct=B5,exports.markAfterClick=lc,exports.marksForSave=xo,exports.mergeNoiseSettings=Ta,exports.missesByType=c5,exports.nextFocus=o5,exports.nextMisses=l5,exports.noiseElementVolume=So,exports.noiseRatioOf=ja,exports.pageStartIndexes=dc,exports.passCardBgIhabTheme=Nl,exports.passCardBgLeftColorGridTheme=El,exports.passCardBgTwoCircleTheme=vl,exports.pctToLevel=N5,exports.printWordTable=Dy,exports.promoBannerBgDarkTheme=Ri,exports.promoBannerBgDeepTheme=Si,exports.promoBannerBgDiagonalTheme=Oi,exports.promoBannerBgDotsTheme=zi,exports.promoBannerBgInstagramTheme=Zi,exports.promoBannerBgMainTheme=ki,exports.promoBannerBgNaverTheme=Ki,exports.promoBannerBgOutlineTheme=Wi,exports.promoBannerBgRadialTheme=Ii,exports.promoBannerBgSoftSubTheme=Ti,exports.promoBannerBgSoftTheme=Bi,exports.promoBannerBgSubTheme=Ei,exports.promoBannerBgSuccessTheme=Ui,exports.promoBannerBgWarmTheme=Li,exports.recommendTables=d5,exports.regenerateUnpinned=b5,exports.removeItem=g5,exports.resolveTrainingItems=d3,exports.resolveTrainingPopupMeta=ou,exports.reviewCells=Yy,exports.reviewMeta=Jy,exports.reviewSetPlan=u5,exports.reviewTableName=Xy,exports.scoreKey=er,exports.scoreSheetHeader=n5,exports.shouldConfirmDiscard=Ey,exports.splitTrainingVariants=u3,exports.summarize=Ny,exports.summarizeMisses=i5,exports.tableTrends=r5,exports.toDraft=f5,exports.toTrainingText=m3,exports.togglePin=C5,exports.uncoveredLabels=p5,exports.useAnchoredMenu=xa,exports.useBarChartControl=ql,exports.useCalendarMonth=Hl,exports.useComboboxSuggestions=Pl,exports.useDiscardGuard=I3,exports.useFitScale=Cc,exports.useNoisePlayer=ar,exports.useSoundCompassExam=ib,exports.useToastLifecycle=ec,exports.useWordData=q3,exports.useWordTableDisplaySettings=$c,exports.useWordTablePrint=Bo,exports.waveBarPx=La,exports.waveBarVal=Mo,exports.weakItems=a5;
|
|
1019
|
+
*/const h7=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]],f7=te("circle-x",h7);function C7(e){return{idle:0,"word-download":1,"image-list":2,"image-match":2,"pair-build":3,done:4}[e]??0}function Zo({icon:e,label:t,state:a,pct:r,subText:s}){const{t:i}=be.useTranslation(),l=a==="done",c=a==="pending",d=a==="error",u=l?100:r??0;return n.jsxs("div",{className:"wdup-phase-card",children:[n.jsx("div",{className:`wdup-phase-card__icon${l?" wdup-phase-card__icon--done":d?" wdup-phase-card__icon--error":""}`,children:l?n.jsx(ps,{size:22,color:"white",strokeWidth:2.5}):d?n.jsx(f7,{size:22,color:"white",strokeWidth:2.5}):n.jsx("span",{className:`wdup-phase-card__icon-inner${c?" wdup-phase-card__icon-inner--pending":""}`,children:e})}),n.jsxs("div",{className:"wdup-phase-card__body",children:[n.jsxs("div",{className:"wdup-phase-card__top",children:[n.jsx("span",{className:`wdup-phase-card__label body-2${c?" wdup-phase-card__label--pending":""}`,children:t}),l?n.jsx(ft,{variant:"sub",fill:"soft",size:"small",label:i("common.done","\uC644\uB8CC")}):d?n.jsx(ft,{variant:"danger",fill:"soft",size:"small",label:i("common.failed","\uC2E4\uD328")}):(s||r!==void 0)&&n.jsxs("span",{className:"wdup-phase-card__sub body-3",children:[s,s&&r!==void 0?` \xB7 ${r}%`:r!==void 0?`${r}%`:""]})]}),!c&&n.jsx("div",{className:"wdup-bar",children:n.jsx("div",{className:`wdup-bar__fill${l?" wdup-bar__fill--done":d?" wdup-bar__fill--error":""}${a==="active"&&r===void 0?" wdup-bar__fill--indeterminate":""}`,style:{width:r!==void 0||l||d?`${d?100:u}%`:void 0}})})]})]})}function g7({title:e,progress:t,onDone:a,onRetry:r,onClose:s,inline:i}){const{t:l}=be.useTranslation(),{phase:c,error:d,wordCount:u,imagePage:p,imageDone:m,imageTotal:f,pairPercent:g}=t,y=C7(c),h=c==="done",w=!!d;function C(N){return w&&y===N?"error":y>N?"done":y===N?"active":"pending"}const b=C(1),x=C(2),v=C(3),A=c==="image-match"&&f?Math.round((m??0)/f*100):void 0,k=o.useMemo(()=>{if(x!=="done"){if(c==="image-list")return l("wordData.checkingPage",{page:p??1});if(c==="image-match"&&f)return l("wordData.imageCount",{done:Rr(m),total:Rr(f)})}},[x,c,p,f,m,l]);return n.jsx(Dn,{inline:i,className:"popup--word-data-update",title:e,footer:w&&r?n.jsx(pe,{htmlType:"button",size:56,variant:"main",onClick:r,children:l("common.retry","\uB2E4\uC2DC \uC2DC\uB3C4")}):w?n.jsx(pe,{htmlType:"button",size:56,variant:"main",onClick:s??a,children:l("common.close","\uB2EB\uAE30")}):n.jsx(pe,{htmlType:"button",size:56,variant:"main",disabled:!h,onClick:a,children:l("common.done","\uC644\uB8CC")}),children:n.jsxs("div",{className:"wdup-cards",children:[n.jsx(Zo,{icon:n.jsx(is,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:l("wordData.phaseWordDownload","\uB2E8\uC5B4 \uB370\uC774\uD130 \uB2E4\uC6B4\uB85C\uB4DC"),state:b,subText:b==="active"?l("wordData.downloadingCount",{n:Rr(u)}):void 0}),n.jsx(Zo,{icon:n.jsx(m7,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:l("wordData.phaseImageCheck","\uC774\uBBF8\uC9C0 \uD655\uC778"),state:x,pct:A,subText:k}),n.jsx(Zo,{icon:n.jsx(us,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:l("wordData.phasePairAnalysis","\uB2E8\uC5B4\uC30D \uBD84\uC11D"),state:v,pct:v==="active"?g??0:void 0,subText:void 0})]})})}function b7({enabled:e=!1,renderResultPopup:t}={}){const{t:a}=be.useTranslation(),[r,s]=o.useState(null),[i,l]=o.useState(null),c=g=>{let y=null;g==="noise"?y={score:3,contextsLength:5,results:[{sentence:"\uBB38\uC7A5 A",judgement:!0,wording:"\uC798 \uB4E4\uB9BC",useAnswer:!1},{sentence:"\uBB38\uC7A5 B",judgement:!1,wording:"\uC548 \uB4E4\uB9BC",useAnswer:!1},{sentence:"\uBB38\uC7A5 C",judgement:!0,wording:"\uC798 \uB4E4\uB9BC",useAnswer:!1},{sentence:"\uBB38\uC7A5 D",judgement:null,wording:"\uC548 \uD568",useAnswer:!1},{sentence:"\uBB38\uC7A5 E",judgement:!1,wording:"\uC548 \uB4E4\uB9BC",useAnswer:!1}]}:g==="short"?y={score:2,contextsLength:3,results:[{sentence:"\uBE44\uBE54\uBC25 \uC124\uBA85",answer:"\uBE44\uBE54\uBC25",selected:"\uBE44\uBE54\uBC25",selectedText:"\uBE44\uBE54\uBC25",correct:!0},{sentence:"\uBCF4\uC308 \uC124\uBA85",answer:"\uBCF4\uC308",selected:"\uC871\uBC1C",selectedText:"\uC871\uBC1C",correct:!1},{sentence:"\uCE7C\uAD6D\uC218 \uC124\uBA85",answer:"\uCE7C\uAD6D\uC218",selected:void 0,selectedText:void 0,correct:void 0}]}:g==="long"?y={score:4,contextsLength:4,results:[{sentence:"\uAE34 \uC774\uC57C\uAE30 1",answer:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 1",selectedText:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 1",correct:!0},{sentence:"\uAE34 \uC774\uC57C\uAE30 2",answer:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 2",selectedText:"\uC120\uD0DD \uD14D\uC2A4\uD2B8 2",correct:!1},{sentence:"\uAE34 \uC774\uC57C\uAE30 3",answer:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 3",selectedText:void 0,correct:void 0},{sentence:"\uAE34 \uC774\uC57C\uAE30 4",answer:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 4",selectedText:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 4",correct:!0}]}:g==="order"&&(y={score:1,contextsLength:2,results:[{sentence:"\uC21C\uC11C \uBB38\uC81C 1",answer:"1,2,3",selectedText:"1,2,3",correct:!0},{sentence:"\uC21C\uC11C \uBB38\uC81C 2",answer:"A,B,C",selectedText:"B,A,C",correct:!1}]}),l(y),s(g)},d=o.useCallback(()=>{s(null),l(null)},[]),u=o.useCallback(()=>c("noise"),[]),p=o.useCallback(()=>c("short"),[]),m=o.useCallback(()=>c("long"),[]),f=o.useCallback(()=>c("order"),[]);return e?n.jsxs("div",{className:"debug-result-launcher",children:[n.jsxs("div",{className:"debug-buttons",children:[n.jsx("button",{type:"button",className:"debug-button",onClick:u,children:a("debug.showResult",{type:"Noise",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})}),n.jsx("button",{type:"button",className:"debug-button",onClick:p,children:a("debug.showResult",{type:"ShortStory",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})}),n.jsx("button",{type:"button",className:"debug-button",onClick:m,children:a("debug.showResult",{type:"LongStory",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})}),n.jsx("button",{type:"button",className:"debug-button",onClick:f,children:a("debug.showResult",{type:"Order",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})})]}),r&&i?t?.({score:i.score,contextsLength:i.contextsLength,results:i.results,onReplay:d,onClose:d}):null]}):null}exports.Accordion=db,exports.ActionCard=J2,exports.Alert=n4,exports.AppHeader=gb,exports.AudioMeter=ho,exports.AudioPlayer=$o,exports.Avatar=c4,exports.Badge=ft,exports.BarChart=Q4,exports.BarChartControls=Ul,exports.Board=N4,exports.BottomNav=ul,exports.BrandIdentity=fl,exports.Breadcrumb=p4,exports.BulkBar=O4,exports.Button=pe,exports.CORE_VERSION=U2,exports.Calendar=xy,exports.CardStep=pu,exports.ChartLegend=io,exports.ChartSection=lo,exports.ChartTotal=Da,exports.Checkbox=Ol,exports.ChoiceChips=A5,exports.CircleBadge=Jb,exports.CodeBox=I4,exports.ColorPicker=g4,exports.CompanyMeta=M4,exports.ConfirmPopup=bu,exports.ConfirmStep=cu,exports.ConfirmWithTextStep=uu,exports.ContrastFilterPanel=F3,exports.CoreScope=Q2,exports.CountTile=w4,exports.CouponInputPopup=z3,exports.DEFAULT_NOISE_SETTINGS=Ma,exports.DatePicker=U4,exports.DebugResultLauncher=b7,exports.DescriptionTooltip=Fn,exports.DeviceSideTable=by,exports.Dialog=B4,exports.Divider=Qb,exports.Dropdown=tn,exports.EffectPartyPopper=Go,exports.EffectPartyPopperHost=q3,exports.EmptyState=Z2,exports.ErrorState=X2,exports.FILTER_ALL_VALUE=en,exports.FileUpload=d4,exports.FilterPanel=wn,exports.FilterSectionInfo=Aa,exports.Footer=B5,exports.GameIntro=ny,exports.Header=Cl,exports.Icon=Ue,exports.IconGridMenu=k5,exports.IconRenderer=Ue,exports.InfoTooltip=gn,exports.ItemActions=z4,exports.LEVEL_MAX=sa,exports.LINE_CHART_HOVER_DELAY_MS=Gl,exports.LandingBottomSticky=E5,exports.LandingHeader=N5,exports.LineChart=ty,exports.ListPopup=O3,exports.ListenStep=lu,exports.Loader=Ea,exports.MARKS=tr,exports.MARK_ICON=cc,exports.MARK_VARIANT=uc,exports.MediaQueryOverrideContext=bi,exports.MenuTooltip=_a,exports.NOISE_RATIO_MAX=Sa,exports.NOISE_RATIO_STEP=Fc,exports.NoisePlayerContext=jo,exports.NoiseSettingsTooltip=tu,exports.NoticeBox=ef,exports.OrderListStep=du,exports.PASS_CARD_BG_VARS=Hn,exports.POS_LABEL=mc,exports.PROMO_BANNER_BG_COMPONENTS=Ji,exports.PROMO_BANNER_BG_OPTIONS=zg,exports.PROMO_BANNER_BG_VARS=ba,exports.Page=ir,exports.PageTitle=U3,exports.Pagination=Ya,exports.Panel=sr,exports.PanelGrid=i3,exports.PanelRow=Sn,exports.PanelRowDevice=s3,exports.PassCard=Bl,exports.PassCardBg=Kb,exports.PassCardBgIHAB=Yb,exports.PassCardBgLeftColorGrid=Zb,exports.PassCardBgTwoCircle=xl,exports.PaymentPlan=Gb,exports.PersonCard=E4,exports.PhonemeFilterPanel=I3,exports.PhonemeSelectBlock=R3,exports.Popup=Dn,exports.ProgressBar=cy,exports.ProgressIndicator=nc,exports.PromoBanner=lb,exports.PromoBannerBgDark=Pi,exports.PromoBannerBgDeep=ji,exports.PromoBannerBgDiagonal=Hi,exports.PromoBannerBgDots=Vi,exports.PromoBannerBgInstagram=Xi,exports.PromoBannerBgMain=Ai,exports.PromoBannerBgNaver=Yi,exports.PromoBannerBgOutline=qi,exports.PromoBannerBgRadial=Fi,exports.PromoBannerBgSoft=Ni,exports.PromoBannerBgSoftSub=Mi,exports.PromoBannerBgSub=Di,exports.PromoBannerBgSuccess=Gi,exports.PromoBannerBgWarm=$i,exports.PublicationCard=S4,exports.Radio=Sl,exports.RadioGroup=e4,exports.Rating=h4,exports.ReportDocument=J3,exports.ReportInfoPanel=Q3,exports.RingChart=ry,exports.SENTENCE_TRAINING_TYPES=No,exports.SearchSummary=o4,exports.Section=na,exports.SectionHeadFloat=zl,exports.SectionHeader=T4,exports.SegmentedControl=xn,exports.ShortcutBadge=Dl,exports.SideNav=hl,exports.Slider=Jl,exports.SoundCompass=Xb,exports.SplashLogo=j4,exports.StatChart=oy,exports.SummaryStrip=Z3,exports.TRAINING_TOOLTIP_HOVER_DELAY_MS=Tl,exports.Table=Co,exports.TableFilterPanel=wo,exports.Tabs=s4,exports.TextBoxTooltip=or,exports.TextField=zn,exports.Timeline=D4,exports.Toast=ea,exports.Toggle=Fl,exports.Toolbar=so,exports.Tooltip=Qt,exports.TooltipInfo=gn,exports.TooltipTextBox=or,exports.TopBanner=cb,exports.TrainingBlock=wy,exports.TrainingBlockButton=ao,exports.TrainingCard=r7,exports.TrainingCardGroup=o7,exports.TrainingPagePopup=Tn,exports.TrainingPagePopupBottom=nu,exports.TrainingPagePopupTitle=au,exports.TrainingResultPopup=hu,exports.TrainingStep=Vn,exports.TrainingStepAudioPlayer=$o,exports.TrainingStepBullet=Gc,exports.TrainingStepCard=Xc,exports.TrainingStepConfirm=Po,exports.TrainingStepConfirmWithText=Io,exports.TrainingStepListen=Fo,exports.TrainingStepOrderList=Oo,exports.TrainingStepTextBox=Zc,exports.TrainingStepTitle=Yc,exports.TrainingTooltip=Ml,exports.TrainingWordCard=vo,exports.UpdateAlert=a7,exports.WAVE_A_MAX=F5,exports.WAVE_H1_PX=Wc,exports.WAVE_HMAX_PX=I5,exports.WORD_TABLE_PAPER=aa,exports.WORD_TYPE_LABEL=hc,exports.WordDataProvider=Y3,exports.WordDataUpdatePopup=g7,exports.WordImageTooltip=gu,exports.WordSearchFilterPanel=P3,exports.WordSearchResultBlock=L3,exports.WordTable=ra,exports.WordTableBlock=u7,exports.WordTableButton=d7,exports.WordTablePopup=Zy,exports.WordTableThumbnail=_u,exports.buildMonthChartData=K4,exports.cellKey=r5,exports.cellLabel=a5,exports.cellsForLabels=C5,exports.clearPassCardBgTheme=vn,exports.clearPromoBannerBgTheme=Mt,exports.closeTrainingPopup=p3,exports.companyTypeLabel=G3,exports.createTrainingScenario=f3,exports.cx=De,exports.deriveNoiseContexts=x3,exports.derivePassCard=bl,exports.draftValues=_5,exports.effectiveNoiseVolume=Do,exports.effectiveSpeechVolume=Hc,exports.expandSlashLabel=_o,exports.formatDuration=g5,exports.getControlDateRange=ay,exports.getPayloadTimestamp=Vo,exports.getPromoBannerBgTheme=Ur,exports.getSelectedFromPayload=g3,exports.getSelectedText=b3,exports.getStepPayload=su,exports.getSteppedPayload=y3,exports.injectPassCardBgTheme=yn,exports.injectPromoBannerBgTheme=Tt,exports.isSelectionCorrect=v3,exports.labelOfCellKey=Pc,exports.labelsForSave=n5,exports.levelToPct=D5,exports.markAfterClick=lc,exports.marksForSave=xo,exports.mergeNoiseSettings=Ta,exports.missesByType=p5,exports.nextFocus=l5,exports.nextMisses=d5,exports.noiseElementVolume=So,exports.noiseRatioOf=ja,exports.pageStartIndexes=dc,exports.passCardBgIhabTheme=Nl,exports.passCardBgLeftColorGridTheme=El,exports.passCardBgTwoCircleTheme=vl,exports.pctToLevel=S5,exports.printWordTable=Dy,exports.promoBannerBgDarkTheme=Ri,exports.promoBannerBgDeepTheme=Si,exports.promoBannerBgDiagonalTheme=Oi,exports.promoBannerBgDotsTheme=zi,exports.promoBannerBgInstagramTheme=Zi,exports.promoBannerBgMainTheme=ki,exports.promoBannerBgNaverTheme=Ki,exports.promoBannerBgOutlineTheme=Wi,exports.promoBannerBgRadialTheme=Ii,exports.promoBannerBgSoftSubTheme=Ti,exports.promoBannerBgSoftTheme=Bi,exports.promoBannerBgSubTheme=Ei,exports.promoBannerBgSuccessTheme=Ui,exports.promoBannerBgWarmTheme=Li,exports.recommendTables=h5,exports.regenerateUnpinned=x5,exports.removeItem=v5,exports.resolveTrainingItems=h3,exports.resolveTrainingPopupMeta=ou,exports.reviewCells=Jy,exports.reviewMeta=t5,exports.reviewSetPlan=m5,exports.reviewTableName=e5,exports.scoreKey=er,exports.scoreSheetHeader=o5,exports.shouldConfirmDiscard=Ey,exports.splitTrainingVariants=m3,exports.summarize=Ny,exports.summarizeMisses=u5,exports.tableTrends=i5,exports.toDraft=b5,exports.toTrainingText=C3,exports.togglePin=y5,exports.uncoveredLabels=f5,exports.useAnchoredMenu=xa,exports.useBarChartControl=ql,exports.useCalendarMonth=Hl,exports.useComboboxSuggestions=Pl,exports.useDiscardGuard=H3,exports.useFitScale=Cc,exports.useNoisePlayer=ar,exports.useSoundCompassExam=ib,exports.useToastLifecycle=ec,exports.useWordData=K3,exports.useWordTableDisplaySettings=$c,exports.useWordTablePrint=Bo,exports.waveBarPx=La,exports.waveBarVal=Mo,exports.weakItems=s5;
|