@ihabdevteam/core 0.138.0 → 0.139.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.
@@ -78,12 +78,12 @@
78
78
  *
79
79
  * This source code is licensed under the ISC license.
80
80
  * See the LICENSE file in the root directory of this source tree.
81
- */const Oc=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M4.929 4.929 19.07 19.071",key:"196cmz"}]],Hc=K("ban",Oc);/**
81
+ */const Oc=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M4.929 4.929 19.07 19.071",key:"196cmz"}]],Vc=K("ban",Oc);/**
82
82
  * @license lucide-react v1.38.0 - ISC
83
83
  *
84
84
  * This source code is licensed under the ISC license.
85
85
  * See the LICENSE file in the root directory of this source tree.
86
- */const Vc=[["path",{d:"M10.268 21a2 2 0 0 0 3.464 0",key:"vwvbt9"}],["path",{d:"M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326",key:"11g9vi"}]],zc=K("bell",Vc);/**
86
+ */const Hc=[["path",{d:"M10.268 21a2 2 0 0 0 3.464 0",key:"vwvbt9"}],["path",{d:"M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326",key:"11g9vi"}]],zc=K("bell",Hc);/**
87
87
  * @license lucide-react v1.38.0 - ISC
88
88
  *
89
89
  * This source code is licensed under the ISC license.
@@ -228,12 +228,12 @@
228
228
  *
229
229
  * This source code is licensed under the ISC license.
230
230
  * See the LICENSE file in the root directory of this source tree.
231
- */const Ou=[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]],Hu=K("external-link",Ou);/**
231
+ */const Ou=[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]],Vu=K("external-link",Ou);/**
232
232
  * @license lucide-react v1.38.0 - ISC
233
233
  *
234
234
  * This source code is licensed under the ISC license.
235
235
  * See the LICENSE file in the root directory of this source tree.
236
- */const Vu=[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]],zu=K("eye",Vu);/**
236
+ */const Hu=[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]],zu=K("eye",Hu);/**
237
237
  * @license lucide-react v1.38.0 - ISC
238
238
  *
239
239
  * This source code is licensed under the ISC license.
@@ -368,7 +368,7 @@
368
368
  *
369
369
  * This source code is licensed under the ISC license.
370
370
  * See the LICENSE file in the root directory of this source tree.
371
- */const Hd=[["path",{d:"m16 17 5-5-5-5",key:"1bji2h"}],["path",{d:"M21 12H9",key:"dn1m92"}],["path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4",key:"1uf3rs"}]],Vd=K("log-out",Hd);/**
371
+ */const Vd=[["path",{d:"m16 17 5-5-5-5",key:"1bji2h"}],["path",{d:"M21 12H9",key:"dn1m92"}],["path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4",key:"1uf3rs"}]],Hd=K("log-out",Vd);/**
372
372
  * @license lucide-react v1.38.0 - ISC
373
373
  *
374
374
  * This source code is licensed under the ISC license.
@@ -508,7 +508,7 @@
508
508
  *
509
509
  * This source code is licensed under the ISC license.
510
510
  * See the LICENSE file in the root directory of this source tree.
511
- */const Hp=[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],Vp=K("search",Hp);/**
511
+ */const Vp=[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],Hp=K("search",Vp);/**
512
512
  * @license lucide-react v1.38.0 - ISC
513
513
  *
514
514
  * This source code is licensed under the ISC license.
@@ -643,12 +643,12 @@
643
643
  *
644
644
  * This source code is licensed under the ISC license.
645
645
  * See the LICENSE file in the root directory of this source tree.
646
- */const H1=[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]],Oa=K("user",H1);/**
646
+ */const V1=[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]],Oa=K("user",V1);/**
647
647
  * @license lucide-react v1.38.0 - ISC
648
648
  *
649
649
  * This source code is licensed under the ISC license.
650
650
  * See the LICENSE file in the root directory of this source tree.
651
- */const V1=[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["line",{x1:"19",x2:"19",y1:"8",y2:"14",key:"1bvyxn"}],["line",{x1:"22",x2:"16",y1:"11",y2:"11",key:"1shjgl"}]],z1=K("user-plus",V1);/**
651
+ */const H1=[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["line",{x1:"19",x2:"19",y1:"8",y2:"14",key:"1bvyxn"}],["line",{x1:"22",x2:"16",y1:"11",y2:"11",key:"1shjgl"}]],z1=K("user-plus",H1);/**
652
652
  * @license lucide-react v1.38.0 - ISC
653
653
  *
654
654
  * This source code is licensed under the ISC license.
@@ -793,7 +793,7 @@
793
793
  *
794
794
  * This source code is licensed under the ISC license.
795
795
  * See the LICENSE file in the root directory of this source tree.
796
- */const Hh=[["path",{d:"M4 5h16",key:"1tepv9"}],["path",{d:"M4 12h16",key:"1lakjw"}],["path",{d:"M4 19h16",key:"1djgab"}]],Vh=K("menu",Hh);/**
796
+ */const Vh=[["path",{d:"M4 5h16",key:"1tepv9"}],["path",{d:"M4 12h16",key:"1lakjw"}],["path",{d:"M4 19h16",key:"1djgab"}]],Hh=K("menu",Vh);/**
797
797
  * @license lucide-react v1.38.0 - ISC
798
798
  *
799
799
  * This source code is licensed under the ISC license.
@@ -803,9 +803,9 @@
803
803
  *
804
804
  * This source code is licensed under the ISC license.
805
805
  * See the LICENSE file in the root directory of this source tree.
806
- */const qh=[["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"}]],Uh=K("thumbs-up",qh),To={"alert-triangle":Co,"align-start-vertical":Bc,anchor:oh,armchair:ih,"arrow-down":Dc,"arrow-left":Tc,"arrow-right":Mc,"arrow-right-left":$c,"arrow-up-a-z":ch,"audio-lines":Pc,baby:Fc,ban:Hc,"bar-chart-2":dh,bell:zc,"book-marked":qc,"book-open":Gc,"bow-arrow":Yc,braces:Xc,bug:Qc,calendar:So,"calendar-check":tu,"calendar-days":au,camera:ou,car:mh,"chart-column":iu,"chart-line":cu,"chart-pie":du,check:go,"chevron-down":Do,"chevron-left":bo,"chevron-right":yo,"chevron-up":jo,circle:Ih,"clipboard-list":Cu,coffee:Ch,combine:bu,copy:vu,"chevrons-left-right-ellipsis":_u,"credit-card":ku,database:vo,diff:Bu,download:xo,ear:ju,edit:Eu,"edit-2":Lu,"edit-3":Ru,ellipsis:_o,eraser:Fu,"external-link":Hu,eye:zu,"file-text":qu,"flip-horizontal":Gu,"folder-open":Yu,"folder-plus":Xu,gamepad:Qu,"gamepad-2":bh,gavel:td,"git-merge":wo,globe:rd,headphones:sd,heart:ld,home:ud,inbox:vh,info:pd,"key-round":md,landmark:Cd,layers:bd,"layout-dashboard":vd,leaf:_d,lightbulb:kd,link:Nd,"link-2":Sd,"link-2-off":jd,list:Ed,"list-checks":Ld,"list-ordered":Rd,"list-tree":_h,loader:Id,lock:Od,"log-out":Vd,mail:Wd,"map-pin":Ud,menu:Vh,"message-circle":Kd,"message-circle-question-mark":Zd,"message-square":Jd,"message-square-more":kh,"message-square-text":ep,minus:Nh,"minus-circle":np,moon:Wh,"more-horizontal":_o,package:rp,palette:sp,"party-popper":lp,pause:up,pencil:pp,phone:mp,play:Cp,"play-circle":bp,plus:vp,printer:_p,"refresh-cw":kp,repeat:Np,replace:Sp,rocket:jp,"rotate-ccw":Ep,"rotate-cw":Lp,salad:Rp,"scan-search":Ip,search:Vp,"circle-alert":ko,"alert-circle":ko,"check-circle":Ao,scissors:Wp,"search-x":Up,send:Kp,settings:Zp,"share-2":Sh,"shield-check":Jp,"shopping-cart":e1,shuffle:n1,"skip-back":r1,"skip-forward":s1,sparkles:jh,square:l1,star:u1,store:p1,"sun-medium":m1,table:C1,"table-2":b1,tag:v1,terminal:_1,"text-cursor-input":k1,"text-initial":N1,"thumbs-up":Uh,ticket:S1,trash:E1,triangle:Oh,"trash-2":j1,"trending-up":L1,"triangle-alert":Co,trophy:R1,type:Eh,unlink:I1,upload:O1,user:Oa,"user-plus":z1,"user-round":q1,"user-round-check":G1,users:Y1,"users-round":X1,volume:Lh,"volume-2":No,wrench:eh,x:Bo,zap:ah};function Gh(e){return To[e]??null}const Eo=new Set;function Kh(e){return ho&&!(e in To)&&!Eo.has(e)&&(Eo.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 Yh=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 Zh(e){const n=e.toLowerCase();if(n.startsWith("http://")||n.startsWith("https://")||n.startsWith("data:")||e.includes("/assets/")||/\.(png|jpe?g|gif|webp|avif|bmp|ico)$/i.test(n))return null;const a=(e.split("/").pop()||"").replace(/\.svg$/,"");return a?Yh(a):null}const Mo=new Map;function Xh(e){const n=typeof e=="string"?Zh(e):null,a=n?Gh(n)??Mo.get(n)??null:null,[r,o]=s.useState(null);return s.useEffect(()=>{if(!n||a)return;let i=!1;return Kh(n).then(l=>{Mo.set(n,l),i||o(l)}),()=>{i=!0}},[n,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 Lo(e,n){(n==null||n>e.length)&&(n=e.length);for(var a=0,r=Array(n);a<n;a++)r[a]=e[a];return r}function Jh(e){if(Array.isArray(e))return e}function Qh(e,n){var a=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(a!=null){var r,o,i,l,c=[],u=!0,d=!1;try{if(i=(a=a.call(e)).next,n!==0)for(;!(u=(r=i.call(a)).done)&&(c.push(r.value),c.length!==n);u=!0);}catch(p){d=!0,o=p}finally{try{if(!u&&a.return!=null&&(l=a.return(),Object(l)!==l))return}finally{if(d)throw o}}return c}}function em(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
807
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function tm(e,n){return Jh(e)||Qh(e,n)||nm(e,n)||em()}function nm(e,n){if(e){if(typeof e=="string")return Lo(e,n);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)?Lo(e,n):void 0}}const $o=Object.entries,Ro=Object.setPrototypeOf,am=Object.isFrozen,rm=Object.getPrototypeOf,om=Object.getOwnPropertyDescriptor;let ht=Object.freeze,mt=Object.seal,Ln=Object.create,Po=typeof Reflect<"u"&&Reflect,Ha=Po.apply,Va=Po.construct;ht||(ht=function(n){return n}),mt||(mt=function(n){return n}),Ha||(Ha=function(n,a){for(var r=arguments.length,o=new Array(r>2?r-2:0),i=2;i<r;i++)o[i-2]=arguments[i];return n.apply(a,o)}),Va||(Va=function(n){for(var a=arguments.length,r=new Array(a>1?a-1:0),o=1;o<a;o++)r[o-1]=arguments[o];return new n(...r)});const wn=ct(Array.prototype.forEach),sm=ct(Array.prototype.lastIndexOf),Io=ct(Array.prototype.pop),Un=ct(Array.prototype.push),im=ct(Array.prototype.splice),$n=Array.isArray,Gn=ct(String.prototype.toLowerCase),za=ct(String.prototype.toString),Fo=ct(String.prototype.match),Kn=ct(String.prototype.replace),Oo=ct(String.prototype.indexOf),lm=ct(String.prototype.trim),cm=ct(Number.prototype.toString),um=ct(Boolean.prototype.toString),Ho=typeof BigInt>"u"?null:ct(BigInt.prototype.toString),Vo=typeof Symbol>"u"?null:ct(Symbol.prototype.toString),jt=ct(Object.prototype.hasOwnProperty),Yn=ct(Object.prototype.toString),gt=ct(RegExp.prototype.test),kn=dm(TypeError);function ct(e){return function(n){n instanceof RegExp&&(n.lastIndex=0);for(var a=arguments.length,r=new Array(a>1?a-1:0),o=1;o<a;o++)r[o-1]=arguments[o];return Ha(e,n,r)}}function dm(e){return function(){for(var n=arguments.length,a=new Array(n),r=0;r<n;r++)a[r]=arguments[r];return Va(e,a)}}function We(e,n){let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Gn;if(Ro&&Ro(e,null),!$n(n))return e;let r=n.length;for(;r--;){let o=n[r];if(typeof o=="string"){const i=a(o);i!==o&&(am(n)||(n[r]=i),o=i)}e[o]=!0}return e}function pm(e){for(let n=0;n<e.length;n++)jt(e,n)||(e[n]=null);return e}function Lt(e){const n=Ln(null);for(const r of $o(e)){var a=tm(r,2);const o=a[0],i=a[1];jt(e,o)&&($n(i)?n[o]=pm(i):i&&typeof i=="object"&&i.constructor===Object?n[o]=Lt(i):n[o]=i)}return n}function hm(e){switch(typeof e){case"string":return e;case"number":return cm(e);case"boolean":return um(e);case"bigint":return Ho?Ho(e):"0";case"symbol":return Vo?Vo(e):"Symbol()";case"undefined":return Yn(e);case"function":case"object":{if(e===null)return Yn(e);const n=e,a=qt(n,"toString");if(typeof a=="function"){const r=a(n);return typeof r=="string"?r:Yn(r)}return Yn(e)}default:return Yn(e)}}function qt(e,n){for(;e!==null;){const r=om(e,n);if(r){if(r.get)return ct(r.get);if(typeof r.value=="function")return ct(r.value)}e=rm(e)}function a(){return null}return a}function mm(e){try{return gt(e,""),!0}catch{return!1}}const zo=ht(["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"]),Wa=ht(["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"]),qa=ht(["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"]),fm=ht(["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"]),Ua=ht(["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"]),Cm=ht(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),Wo=ht(["#text"]),qo=ht(["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"]),Ga=ht(["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"]),Uo=ht(["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"]),ma=ht(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),gm=mt(/{{[\w\W]*|^[\w\W]*}}/g),bm=mt(/<%[\w\W]*|^[\w\W]*%>/g),ym=mt(/\${[\w\W]*/g),vm=mt(/^data-[\-\w.\u00B7-\uFFFF]+$/),xm=mt(/^aria-[\-\w]+$/),Go=mt(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),_m=mt(/^(?:\w+script|data):/i),wm=mt(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),km=mt(/^html$/i),Am=mt(/^[a-z][.\w]*(-[.\w]+)+$/i),Ko=mt(/<[/\w!]/g),Yo=mt(/<[/\w]/g),Nm=mt(/<\/no(script|embed|frames)/i),Bm=mt(/\/>/i),$t={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},Zo=["style","script","xmp","iframe","noembed","noframes","plaintext","noscript"],Sm=ht(We({},Zo)),Dm=(function(){const e={};return wn(Zo,n=>{e[n]=mt(new RegExp("</"+n+"(?=[\\t\\n\\f\\r />])","i"))}),ht(e)})(),jm=function(){return typeof window>"u"?null:window},Tm=function(n,a){if(typeof n!="object"||typeof n.createPolicy!="function")return null;let r=null;const o="data-tt-policy-suffix";a&&a.hasAttribute(o)&&(r=a.getAttribute(o));const i="dompurify"+(r?"#"+r:"");try{return n.createPolicy(i,{createHTML(l){return l},createScriptURL(l){return l}})}catch{return console.warn("TrustedTypes policy "+i+" could not be created."),null}},Xo=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},hn=function(n,a,r,o){return jt(n,a)&&$n(n[a])?We(o.base?Lt(o.base):{},n[a],o.transform):r},Ka=function(n,a,r){const o=jt(n,a)?n[a]:void 0;return o&&typeof o=="object"?Lt(o):r()};function Jo(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:jm();const n=me=>Jo(me);if(n.version="3.4.14",n.removed=[],!e||!e.document||e.document.nodeType!==$t.document||!e.Element)return n.isSupported=!1,n;let a=e.document;const r=a,o=r.currentScript;e.DocumentFragment;const i=e.HTMLTemplateElement,l=e.Node,c=e.Element,u=e.NodeFilter,d=e.NamedNodeMap;d===void 0&&(e.NamedNodeMap||e.MozNamedAttrMap),e.HTMLFormElement;const p=e.DOMParser,h=e.trustedTypes,m=c.prototype,g=qt(m,"cloneNode"),y=qt(m,"remove"),C=qt(m,"nextSibling"),f=qt(m,"childNodes"),v=qt(m,"parentNode"),x=qt(m,"shadowRoot"),_=qt(m,"attributes"),b=l&&l.prototype?qt(l.prototype,"nodeType"):null,N=l&&l.prototype?qt(l.prototype,"nodeName"):null,w=l&&l.prototype?qt(l.prototype,"ownerDocument"):null,k=function(D){return b?b(D):D.nodeType},j=function(D){return N?N(D):D.nodeName};if(typeof i=="function"){const me=a.createElement("template");me.content&&me.content.ownerDocument&&(a=me.content.ownerDocument)}let A,S="",q,W=!1,B=0;const F=function(){if(B>0)throw kn('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.')},E=function(D){F(),B++;try{return A.createHTML(D)}finally{B--}},te=function(D){F(),B++;try{return A.createScriptURL(D)}finally{B--}},$=function(){return W||(q=Tm(h,o),W=!0),q},H=a,Q=H.implementation,ee=H.createNodeIterator,Y=H.createDocumentFragment,O=H.getElementsByTagName,T=r.importNode;let M=Xo();n.isSupported=typeof $o=="function"&&typeof v=="function"&&Q&&Q.createHTMLDocument!==void 0;const V=gm,I=bm,P=ym,z=vm,ae=xm,ne=_m,re=wm,pe=Am;let _e=Go,Z=null;const ie=We({},[...zo,...Wa,...qa,...Ua,...Wo]);let J=null;const be=We({},[...qo,...Ga,...Uo,...ma]);let xe=Object.seal(Ln(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}})),Ce=null,fe=null;const ve=Object.seal(Ln(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}}));let Se=!0,X=!0,ue=!1,ke=!0,Me=!1,Fe=!0,De=!1,Pe=!1,Le=null,Je=null,ze=!1,He=!1,ge=!1,Ve=!1,Be=!0,Ee=!1;const Ne="user-content-";let nt=!0,ft=!1,tt={},rt=null;const Ke=We({},["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 je=null;const Qe=We({},["audio","video","img","source","image","track"]);let ut=null;const qe=We({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Ye="http://www.w3.org/1998/Math/MathML",Ie="http://www.w3.org/2000/svg",Ze="http://www.w3.org/1999/xhtml";let ot=Ze,Ft=!1,dt=null;const At=We({},[Ye,Ie,Ze],za),dn=ht(["mi","mo","mn","ms","mtext"]);let Qt=We({},dn);const bt=ht(["annotation-xml"]);let yt=We({},bt);const Tt=We({},["title","style","font","a","script"]);let Rt=null;const en=["application/xhtml+xml","text/html"],_n="text/html";let Xe=null,Et=null;const vt=a.createElement("form"),Ot=function(D){return D instanceof RegExp||D instanceof Function},Mt=function(){let D=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(Et&&Et===D)return;(!D||typeof D!="object")&&(D={}),D=Lt(D),Rt=en.indexOf(D.PARSER_MEDIA_TYPE)===-1?_n:D.PARSER_MEDIA_TYPE,Xe=Rt==="application/xhtml+xml"?za:Gn,Z=hn(D,"ALLOWED_TAGS",ie,{transform:Xe}),J=hn(D,"ALLOWED_ATTR",be,{transform:Xe}),dt=hn(D,"ALLOWED_NAMESPACES",At,{transform:za}),ut=hn(D,"ADD_URI_SAFE_ATTR",qe,{transform:Xe,base:qe}),je=hn(D,"ADD_DATA_URI_TAGS",Qe,{transform:Xe,base:Qe}),rt=hn(D,"FORBID_CONTENTS",Ke,{transform:Xe}),Ce=hn(D,"FORBID_TAGS",Lt({}),{transform:Xe}),fe=hn(D,"FORBID_ATTR",Lt({}),{transform:Xe}),tt=jt(D,"USE_PROFILES")?D.USE_PROFILES&&typeof D.USE_PROFILES=="object"?Lt(D.USE_PROFILES):D.USE_PROFILES:!1,Se=D.ALLOW_ARIA_ATTR!==!1,X=D.ALLOW_DATA_ATTR!==!1,ue=D.ALLOW_UNKNOWN_PROTOCOLS||!1,ke=D.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Me=D.SAFE_FOR_TEMPLATES||!1,Fe=D.SAFE_FOR_XML!==!1,De=D.WHOLE_DOCUMENT||!1,He=D.RETURN_DOM||!1,ge=D.RETURN_DOM_FRAGMENT||!1,Ve=D.RETURN_TRUSTED_TYPE||!1,ze=D.FORCE_BODY||!1,Be=D.SANITIZE_DOM!==!1,Ee=D.SANITIZE_NAMED_PROPS||!1,nt=D.KEEP_CONTENT!==!1,ft=D.IN_PLACE||!1,_e=mm(D.ALLOWED_URI_REGEXP)?D.ALLOWED_URI_REGEXP:Go,ot=typeof D.NAMESPACE=="string"?D.NAMESPACE:Ze,Qt=Ka(D,"MATHML_TEXT_INTEGRATION_POINTS",()=>We({},dn)),yt=Ka(D,"HTML_INTEGRATION_POINTS",()=>We({},bt));const U=Ka(D,"CUSTOM_ELEMENT_HANDLING",()=>Ln(null));if(xe=Ln(null),jt(U,"tagNameCheck")&&Ot(U.tagNameCheck)&&(xe.tagNameCheck=U.tagNameCheck),jt(U,"attributeNameCheck")&&Ot(U.attributeNameCheck)&&(xe.attributeNameCheck=U.attributeNameCheck),jt(U,"allowCustomizedBuiltInElements")&&typeof U.allowCustomizedBuiltInElements=="boolean"&&(xe.allowCustomizedBuiltInElements=U.allowCustomizedBuiltInElements),mt(xe),Me&&(X=!1),ge&&(He=!0),tt&&(Z=We({},Wo),J=Ln(null),tt.html===!0&&(We(Z,zo),We(J,qo)),tt.svg===!0&&(We(Z,Wa),We(J,Ga),We(J,ma)),tt.svgFilters===!0&&(We(Z,qa),We(J,Ga),We(J,ma)),tt.mathMl===!0&&(We(Z,Ua),We(J,Uo),We(J,ma))),ve.tagCheck=null,ve.attributeCheck=null,jt(D,"ADD_TAGS")&&(typeof D.ADD_TAGS=="function"?ve.tagCheck=D.ADD_TAGS:$n(D.ADD_TAGS)&&(Z===ie&&(Z=Lt(Z)),We(Z,D.ADD_TAGS,Xe))),jt(D,"ADD_ATTR")&&(typeof D.ADD_ATTR=="function"?ve.attributeCheck=D.ADD_ATTR:$n(D.ADD_ATTR)&&(J===be&&(J=Lt(J)),We(J,D.ADD_ATTR,Xe))),jt(D,"ADD_FORBID_CONTENTS")&&$n(D.ADD_FORBID_CONTENTS)&&(rt===Ke&&(rt=Lt(rt)),We(rt,D.ADD_FORBID_CONTENTS,Xe)),nt&&(Z["#text"]=!0),De&&We(Z,["html","head","body"]),Z.table&&(We(Z,["tbody"]),delete Ce.tbody),D.TRUSTED_TYPES_POLICY){if(typeof D.TRUSTED_TYPES_POLICY.createHTML!="function")throw kn('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof D.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw kn('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');const se=A;A=D.TRUSTED_TYPES_POLICY;try{S=E("")}catch(we){throw A=se,we}}else D.TRUSTED_TYPES_POLICY===null?(A=void 0,S=""):(A===void 0&&(A=$()),A&&typeof S=="string"&&(S=E("")));ht&&ht(D),Et=D},Yt=We({},[...Wa,...qa,...fm]),tn=We({},[...Ua,...Cm]),nn=function(D,U,se){return U.namespaceURI===Ze?D==="svg":U.namespaceURI===Ye?D==="svg"&&(se==="annotation-xml"||Qt[se]):!!Yt[D]},Pt=function(D,U,se){return U.namespaceURI===Ze?D==="math":U.namespaceURI===Ie?D==="math"&&yt[se]:!!tn[D]},Ht=function(D,U,se){return U.namespaceURI===Ie&&!yt[se]||U.namespaceURI===Ye&&!Qt[se]?!1:!tn[D]&&(Tt[D]||!Yt[D])},pn=function(D){let U=v(D);(!U||!U.tagName)&&(U={namespaceURI:ot,tagName:"template"});const se=Gn(D.tagName),we=Gn(U.tagName);return dt[D.namespaceURI]?D.namespaceURI===Ie?nn(se,U,we):D.namespaceURI===Ye?Pt(se,U,we):D.namespaceURI===Ze?Ht(se,U,we):!!(Rt==="application/xhtml+xml"&&dt[D.namespaceURI]):!1},xt=function(D){Un(n.removed,{element:D});try{v(D).removeChild(D)}catch{if(y(D),!v(D))throw kn("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place")}},Vt=function(D,U,se){try{D.removeAttributeNode(U)}catch{try{D.removeAttribute(se)}catch{}}},Zt=function(D){L(D);const U=f(D);if(U){const we=[];wn(U,Ae=>{Un(we,Ae)}),wn(we,Ae=>{try{y(Ae)}catch{}})}const se=_(D);if(se)for(let we=se.length-1;we>=0;--we){const Ae=se[we],$e=Ae&&Ae.name;typeof $e=="string"&&Vt(D,Ae,$e)}},Nt=function(D,U,se){if(!se)try{se=U.getAttributeNode(D)}catch{se=null}Un(n.removed,{attribute:se||null,from:U});try{se?U.removeAttributeNode(se):U.removeAttribute(D)}catch{try{U.removeAttribute(D)}catch{}}if(D==="is")if(He||ge)try{xt(U)}catch{}else try{U.setAttribute(D,"")}catch{}},R=function(D){const U=_(D);if(U)for(let se=U.length-1;se>=0;--se){const we=U[se],Ae=we&&we.name;typeof Ae!="string"||J[Xe(Ae)]||Vt(D,we,Ae)}},L=function(D){const U=[D];for(;U.length>0;){const se=U.pop();k(se)===$t.element&&R(se);const Ae=f(se);if(Ae)for(let $e=Ae.length-1;$e>=0;--$e)U.push(Ae[$e])}},G=function(D,U){return Fe?D==="patchsrc"?!0:D==="for"&&U!=="label"&&U!=="output":!1},le=function(D){if(!Fe)return;const U=[D];for(;U.length>0;){const se=U.pop(),we=k(se);if(we===$t.processingInstruction||we===$t.comment&&gt(Yo,se.data)){try{y(se)}catch{}continue}if(we===$t.element){const $e=se,et=Xe(j(se));try{$e.hasAttribute&&$e.hasAttribute("patchsrc")&&$e.removeAttribute("patchsrc"),$e.hasAttribute&&$e.hasAttribute("for")&&G("for",et)&&$e.removeAttribute("for")}catch{}}const Ae=f(se);if(Ae)for(let $e=Ae.length-1;$e>=0;--$e)U.push(Ae[$e])}},de=function(D){let U=null,se=null;if(ze)D="<remove></remove>"+D;else{const $e=Fo(D,/^[\r\n\t ]+/);se=$e&&$e[0]}Rt==="application/xhtml+xml"&&ot===Ze&&(D='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+D+"</body></html>");const we=A?E(D):D;if(ot===Ze)try{U=new p().parseFromString(we,Rt)}catch{}if(!U||!U.documentElement){U=Q.createDocument(ot,"template",null);try{U.documentElement.innerHTML=Ft?S:we}catch{}}const Ae=U.body||U.documentElement;return D&&se&&Ae.insertBefore(a.createTextNode(se),Ae.childNodes[0]||null),ot===Ze?O.call(U,De?"html":"body")[0]:De?U.documentElement:Ae},ce=function(D){const U=w?w(D):D.ownerDocument;return ee.call(U||D,D,u.SHOW_ELEMENT|u.SHOW_COMMENT|u.SHOW_TEXT|u.SHOW_PROCESSING_INSTRUCTION|u.SHOW_CDATA_SECTION,null)},Te=function(D){return D=Kn(D,V," "),D=Kn(D,I," "),D=Kn(D,P," "),D},Re=function(D){var U;D.normalize();const se=w?w(D):D.ownerDocument,we=ee.call(se||D,D,u.SHOW_TEXT|u.SHOW_COMMENT|u.SHOW_CDATA_SECTION|u.SHOW_PROCESSING_INSTRUCTION,null);let Ae=we.nextNode();for(;Ae;)Ae.data=Te(Ae.data),Ae=we.nextNode();const $e=(U=D.querySelectorAll)===null||U===void 0?void 0:U.call(D,"template");$e&&wn($e,et=>{pt(et.content)&&Re(et.content)})},Ge=function(D){const U=N?N(D):null;return typeof U!="string"||Xe(U)!=="form"?!1:typeof D.nodeName!="string"||typeof D.textContent!="string"||typeof D.removeChild!="function"||D.attributes!==_(D)||typeof D.removeAttribute!="function"||typeof D.setAttribute!="function"||typeof D.namespaceURI!="string"||typeof D.insertBefore!="function"||typeof D.hasChildNodes!="function"||D.nodeType!==b(D)||D.childNodes!==f(D)},pt=function(D){if(!b||typeof D!="object"||D===null)return!1;try{return b(D)===$t.documentFragment}catch{return!1}},lt=function(D){if(!b||typeof D!="object"||D===null)return!1;try{return typeof b(D)=="number"}catch{return!1}};function Ue(me,D,U){me.length!==0&&wn(me,se=>{se.call(n,D,U,Et)})}const zt=function(D,U){return!!(Fe&&D.hasChildNodes()&&!lt(D.firstElementChild)&&gt(Ko,D.textContent)&&gt(Ko,D.innerHTML)||Fe&&D.namespaceURI===Ze&&Sm[U]&&(lt(D.firstElementChild)||typeof D.textContent=="string"&&gt(Dm[U],D.textContent))||D.nodeType===$t.processingInstruction||Fe&&D.nodeType===$t.comment&&gt(Yo,D.data))},Wt=function(D,U){if(D instanceof RegExp)return gt(D,U);if(D instanceof Function){for(var se=arguments.length,we=new Array(se>2?se-2:0),Ae=2;Ae<se;Ae++)we[Ae-2]=arguments[Ae];return!!D(U,...we)}return!1},Ra=function(D,U,se){if(!Ce[U]&&lo(U)&&Wt(xe.tagNameCheck,U))return!1;if(nt&&!rt[U]){const we=v(D),Ae=f(D);if(Ae&&we){const $e=Ae.length;for(let et=$e-1;et>=0;--et){const at=D===se?g(Ae[et],!0):Ae[et];we.insertBefore(at,C(D))}}}return xt(D),!0},ro=function(D,U,se,we){return D.length===0?U:U===se||U===we?Lt(U):U},oo=function(D,U){return D===U||v(D)!==null?!1:(ft&&L(D),!0)},so=function(D,U){if(Ue(M.beforeSanitizeElements,D,null),oo(D,U))return!0;if(Ge(D))return xt(D),!0;const se=Xe(j(D));if(Z=ro(M.uponSanitizeElement,Z,ie,Le),Ue(M.uponSanitizeElement,D,{tagName:se,allowedTags:Z}),oo(D,U))return!0;if(zt(D,se))return xt(D),!0;if(Ce[se]||!(ve.tagCheck instanceof Function&&ve.tagCheck(se))&&!Z[se]){const Ae=Ra(D,se,U);return Ae===!1&&Ue(M.afterSanitizeElements,D,null),Ae}if(k(D)===$t.element&&!pn(D)||(se==="noscript"||se==="noembed"||se==="noframes")&&gt(Nm,D.innerHTML))return xt(D),!0;if(Me&&D.nodeType===$t.text){const Ae=Te(D.textContent);D.textContent!==Ae&&(Un(n.removed,{element:D.cloneNode()}),D.textContent=Ae)}return Ue(M.afterSanitizeElements,D,null),!1},io=function(D,U,se){if(fe[U]||G(U,D)||Be&&(U==="id"||U==="name")&&(se in a||se in vt))return!1;const we=J[U]||ve.attributeCheck instanceof Function&&ve.attributeCheck(U,D);return X&&gt(z,U)||Se&&gt(ae,U)?!0:we?ut[U]||gt(_e,Kn(se,re,""))||(U==="src"||U==="xlink:href"||U==="href")&&D!=="script"&&Oo(se,"data:")===0&&je[D]||ue&&!gt(ne,Kn(se,re,""))?!0:!se:lo(D)&&Wt(xe.tagNameCheck,D)&&Wt(xe.attributeNameCheck,U,D)||U==="is"&&xe.allowCustomizedBuiltInElements&&Wt(xe.tagNameCheck,se)},fc=We({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),lo=function(D){return!fc[Gn(D)]&&gt(pe,D)},Cc=function(D,U,se,we){if(A&&typeof h=="object"&&typeof h.getAttributeType=="function"&&!se)switch(h.getAttributeType(D,U)){case"TrustedHTML":return E(we);case"TrustedScriptURL":return te(we)}return we},gc=function(D,U,se,we){try{se?D.setAttributeNS(se,U,we):D.setAttribute(U,we),Ge(D)?xt(D):Io(n.removed)}catch{Nt(U,D)}},co=function(D){Ue(M.beforeSanitizeAttributes,D,null);const U=D.attributes;if(!U||Ge(D))return;J=ro(M.uponSanitizeAttribute,J,be,Je);const se={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:J,forceKeepAttr:void 0};let we=U.length;const Ae=Xe(D.nodeName);for(;we--;){const $e=U[we],et=$e.name,at=$e.namespaceURI,Bt=$e.value,St=Xe(et),Ia=Bt;let _t=et==="value"?Ia:lm(Ia);if(se.attrName=St,se.attrValue=_t,se.keepAttr=!0,se.forceKeepAttr=void 0,Ue(M.uponSanitizeAttribute,D,se),_t=se.attrValue,Ee&&(St==="id"||St==="name")&&Oo(_t,Ne)!==0&&(Nt(et,D,$e),_t=Ne+_t),Fe&&gt(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,_t)){Nt(et,D,$e);continue}if(St==="attributename"&&Fo(_t,"href")){Nt(et,D,$e);continue}if(!se.forceKeepAttr){if(!se.keepAttr){Nt(et,D,$e);continue}if(!ke&&gt(Bm,_t)){Nt(et,D,$e);continue}if(Me&&(_t=Te(_t)),!io(Ae,St,_t)){Nt(et,D,$e);continue}_t=Cc(Ae,St,at,_t),_t!==Ia&&gc(D,et,at,_t)}}Ue(M.afterSanitizeAttributes,D,null)},ha=function(D){let U=null;const se=ce(D);for(Ue(M.beforeSanitizeShadowDOM,D,null);U=se.nextNode();)if(Ue(M.uponSanitizeShadowNode,U,null),so(U,D),co(U),pt(U.content)&&ha(U.content),k(U)===$t.element){const we=x(U);pt(we)&&(Pa(we),ha(we))}Ue(M.afterSanitizeShadowDOM,D,null)},Pa=function(D){const U=[{node:D,shadow:null}];for(;U.length>0;){const se=U.pop();if(se.shadow){ha(se.shadow);continue}const we=se.node,$e=k(we)===$t.element,et=f(we);if(et)for(let at=et.length-1;at>=0;--at)U.push({node:et[at],shadow:null});if($e){const at=N?N(we):null;if(typeof at=="string"&&Xe(at)==="template"){const Bt=we.content;pt(Bt)&&U.push({node:Bt,shadow:null})}}if($e){const at=x(we);pt(at)&&U.push({node:null,shadow:at},{node:at,shadow:null})}}};return n.sanitize=function(me){let D=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},U=null,se=null,we=null,Ae=null;if(Ft=!me,Ft&&(me="<!-->"),typeof me!="string"&&!lt(me)&&(me=hm(me),typeof me!="string"))throw kn("dirty is not a string, aborting");if(!n.isSupported)return me;Pe?(Z=Le,J=Je):Mt(D),(M.uponSanitizeElement.length>0||M.uponSanitizeAttribute.length>0)&&(Z=Lt(Z)),M.uponSanitizeAttribute.length>0&&(J=Lt(J)),n.removed=[];const $e=ft&&typeof me!="string"&&lt(me);if($e){le(me);const Bt=j(me);if(typeof Bt=="string"){const St=Xe(Bt);if(!Z[St]||Ce[St])throw Zt(me),kn("root node is forbidden and cannot be sanitized in-place")}if(Ge(me))throw Zt(me),kn("root node is clobbered and cannot be sanitized in-place");try{Pa(me)}catch(St){throw Zt(me),St}}else if(lt(me))U=de("<!---->"),se=U.ownerDocument.importNode(me,!0),se.nodeType===$t.element&&se.nodeName==="BODY"||se.nodeName==="HTML"?U=se:U.appendChild(se),Pa(se);else{if(!He&&!Me&&!De&&me.indexOf("<")===-1)return A&&Ve?E(me):me;if(U=de(me),!U)return He?null:Ve?S:""}U&&ze&&xt(U.firstChild);const et=$e?me:U;try{const Bt=ce(et);for(;we=Bt.nextNode();)so(we,et),co(we),pt(we.content)&&ha(we.content)}catch(Bt){throw $e&&(Zt(me),wn(n.removed,St=>{St.element&&L(St.element)})),Bt}if($e)return wn(n.removed,Bt=>{Bt.element&&L(Bt.element)}),Me&&Re(me),me;if(He){if(Me&&Re(U),ge)for(Ae=Y.call(U.ownerDocument);U.firstChild;)Ae.appendChild(U.firstChild);else Ae=U;return(J.shadowroot||J.shadowrootmode)&&(Ae=T.call(r,Ae,!0)),Ae}let at=De?U.outerHTML:U.innerHTML;return De&&Z["!doctype"]&&U.ownerDocument&&U.ownerDocument.doctype&&U.ownerDocument.doctype.name&&gt(km,U.ownerDocument.doctype.name)&&(at="<!DOCTYPE "+U.ownerDocument.doctype.name+`>
808
- `+at),Me&&(at=Te(at)),A&&Ve?E(at):at},n.setConfig=function(){let me=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Mt(me),Pe=!0,Le=Z,Je=J},n.clearConfig=function(){Et=null,Pe=!1,Le=null,Je=null,A=q,S=""},n.isValidAttribute=function(me,D,U){Et||Mt({});const se=Xe(me),we=Xe(D);return io(se,we,U)},n.addHook=function(me,D){typeof D=="function"&&jt(M,me)&&Un(M[me],D)},n.removeHook=function(me,D){if(jt(M,me)){if(D!==void 0){const U=sm(M[me],D);return U===-1?void 0:im(M[me],U,1)[0]}return Io(M[me])}},n.removeHooks=function(me){jt(M,me)&&(M[me]=[])},n.removeAllHooks=function(){M=Xo()},n}var Em=Jo();const Mm=/^(?:[a-z]+:)?\/\//i,Lm="__ihab_core_asset_base_url__";function $m(){return globalThis[Lm]??""}function Ya(e){const n=String(e||"").trim();if(!n)return"";if(Mm.test(n)||n.startsWith("data:")||n.startsWith("blob:"))return n;const a=n.startsWith("/")?n:`/${n}`,r=$m();return r?`${r}${a}`:a}const Qo="__ihab_core_storage_resolvers__";function Zn(){return globalThis[Qo]??null}function Rm(e){globalThis[Qo]=e}let es=class extends Error{constructor(n){super(`
806
+ */const qh=[["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"}]],Uh=K("thumbs-up",qh),To={"alert-triangle":Co,"align-start-vertical":Bc,anchor:oh,armchair:ih,"arrow-down":Dc,"arrow-left":Tc,"arrow-right":Mc,"arrow-right-left":$c,"arrow-up-a-z":ch,"audio-lines":Pc,baby:Fc,ban:Vc,"bar-chart-2":dh,bell:zc,"book-marked":qc,"book-open":Gc,"bow-arrow":Yc,braces:Xc,bug:Qc,calendar:So,"calendar-check":tu,"calendar-days":au,camera:ou,car:mh,"chart-column":iu,"chart-line":cu,"chart-pie":du,check:go,"chevron-down":Do,"chevron-left":bo,"chevron-right":yo,"chevron-up":jo,circle:Ih,"clipboard-list":Cu,coffee:Ch,combine:bu,copy:vu,"chevrons-left-right-ellipsis":_u,"credit-card":ku,database:vo,diff:Bu,download:xo,ear:ju,edit:Eu,"edit-2":Lu,"edit-3":Ru,ellipsis:_o,eraser:Fu,"external-link":Vu,eye:zu,"file-text":qu,"flip-horizontal":Gu,"folder-open":Yu,"folder-plus":Xu,gamepad:Qu,"gamepad-2":bh,gavel:td,"git-merge":wo,globe:rd,headphones:sd,heart:ld,home:ud,inbox:vh,info:pd,"key-round":md,landmark:Cd,layers:bd,"layout-dashboard":vd,leaf:_d,lightbulb:kd,link:Nd,"link-2":Sd,"link-2-off":jd,list:Ed,"list-checks":Ld,"list-ordered":Rd,"list-tree":_h,loader:Id,lock:Od,"log-out":Hd,mail:Wd,"map-pin":Ud,menu:Hh,"message-circle":Kd,"message-circle-question-mark":Zd,"message-square":Jd,"message-square-more":kh,"message-square-text":ep,minus:Nh,"minus-circle":np,moon:Wh,"more-horizontal":_o,package:rp,palette:sp,"party-popper":lp,pause:up,pencil:pp,phone:mp,play:Cp,"play-circle":bp,plus:vp,printer:_p,"refresh-cw":kp,repeat:Np,replace:Sp,rocket:jp,"rotate-ccw":Ep,"rotate-cw":Lp,salad:Rp,"scan-search":Ip,search:Hp,"circle-alert":ko,"alert-circle":ko,"check-circle":Ao,scissors:Wp,"search-x":Up,send:Kp,settings:Zp,"share-2":Sh,"shield-check":Jp,"shopping-cart":e1,shuffle:n1,"skip-back":r1,"skip-forward":s1,sparkles:jh,square:l1,star:u1,store:p1,"sun-medium":m1,table:C1,"table-2":b1,tag:v1,terminal:_1,"text-cursor-input":k1,"text-initial":N1,"thumbs-up":Uh,ticket:S1,trash:E1,triangle:Oh,"trash-2":j1,"trending-up":L1,"triangle-alert":Co,trophy:R1,type:Eh,unlink:I1,upload:O1,user:Oa,"user-plus":z1,"user-round":q1,"user-round-check":G1,users:Y1,"users-round":X1,volume:Lh,"volume-2":No,wrench:eh,x:Bo,zap:ah};function Gh(e){return To[e]??null}const Eo=new Set;function Kh(e){return ho&&!(e in To)&&!Eo.has(e)&&(Eo.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 Yh=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 Zh(e){const n=e.toLowerCase();if(n.startsWith("http://")||n.startsWith("https://")||n.startsWith("data:")||e.includes("/assets/")||/\.(png|jpe?g|gif|webp|avif|bmp|ico)$/i.test(n))return null;const a=(e.split("/").pop()||"").replace(/\.svg$/,"");return a?Yh(a):null}const Mo=new Map;function Xh(e){const n=typeof e=="string"?Zh(e):null,a=n?Gh(n)??Mo.get(n)??null:null,[r,o]=s.useState(null);return s.useEffect(()=>{if(!n||a)return;let i=!1;return Kh(n).then(l=>{Mo.set(n,l),i||o(l)}),()=>{i=!0}},[n,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 Lo(e,n){(n==null||n>e.length)&&(n=e.length);for(var a=0,r=Array(n);a<n;a++)r[a]=e[a];return r}function Jh(e){if(Array.isArray(e))return e}function Qh(e,n){var a=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(a!=null){var r,o,i,l,c=[],u=!0,d=!1;try{if(i=(a=a.call(e)).next,n!==0)for(;!(u=(r=i.call(a)).done)&&(c.push(r.value),c.length!==n);u=!0);}catch(p){d=!0,o=p}finally{try{if(!u&&a.return!=null&&(l=a.return(),Object(l)!==l))return}finally{if(d)throw o}}return c}}function em(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
807
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function tm(e,n){return Jh(e)||Qh(e,n)||nm(e,n)||em()}function nm(e,n){if(e){if(typeof e=="string")return Lo(e,n);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)?Lo(e,n):void 0}}const $o=Object.entries,Ro=Object.setPrototypeOf,am=Object.isFrozen,rm=Object.getPrototypeOf,om=Object.getOwnPropertyDescriptor;let ht=Object.freeze,mt=Object.seal,Ln=Object.create,Po=typeof Reflect<"u"&&Reflect,Va=Po.apply,Ha=Po.construct;ht||(ht=function(n){return n}),mt||(mt=function(n){return n}),Va||(Va=function(n,a){for(var r=arguments.length,o=new Array(r>2?r-2:0),i=2;i<r;i++)o[i-2]=arguments[i];return n.apply(a,o)}),Ha||(Ha=function(n){for(var a=arguments.length,r=new Array(a>1?a-1:0),o=1;o<a;o++)r[o-1]=arguments[o];return new n(...r)});const wn=ct(Array.prototype.forEach),sm=ct(Array.prototype.lastIndexOf),Io=ct(Array.prototype.pop),Un=ct(Array.prototype.push),im=ct(Array.prototype.splice),$n=Array.isArray,Gn=ct(String.prototype.toLowerCase),za=ct(String.prototype.toString),Fo=ct(String.prototype.match),Kn=ct(String.prototype.replace),Oo=ct(String.prototype.indexOf),lm=ct(String.prototype.trim),cm=ct(Number.prototype.toString),um=ct(Boolean.prototype.toString),Vo=typeof BigInt>"u"?null:ct(BigInt.prototype.toString),Ho=typeof Symbol>"u"?null:ct(Symbol.prototype.toString),jt=ct(Object.prototype.hasOwnProperty),Yn=ct(Object.prototype.toString),gt=ct(RegExp.prototype.test),kn=dm(TypeError);function ct(e){return function(n){n instanceof RegExp&&(n.lastIndex=0);for(var a=arguments.length,r=new Array(a>1?a-1:0),o=1;o<a;o++)r[o-1]=arguments[o];return Va(e,n,r)}}function dm(e){return function(){for(var n=arguments.length,a=new Array(n),r=0;r<n;r++)a[r]=arguments[r];return Ha(e,a)}}function We(e,n){let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Gn;if(Ro&&Ro(e,null),!$n(n))return e;let r=n.length;for(;r--;){let o=n[r];if(typeof o=="string"){const i=a(o);i!==o&&(am(n)||(n[r]=i),o=i)}e[o]=!0}return e}function pm(e){for(let n=0;n<e.length;n++)jt(e,n)||(e[n]=null);return e}function Lt(e){const n=Ln(null);for(const r of $o(e)){var a=tm(r,2);const o=a[0],i=a[1];jt(e,o)&&($n(i)?n[o]=pm(i):i&&typeof i=="object"&&i.constructor===Object?n[o]=Lt(i):n[o]=i)}return n}function hm(e){switch(typeof e){case"string":return e;case"number":return cm(e);case"boolean":return um(e);case"bigint":return Vo?Vo(e):"0";case"symbol":return Ho?Ho(e):"Symbol()";case"undefined":return Yn(e);case"function":case"object":{if(e===null)return Yn(e);const n=e,a=qt(n,"toString");if(typeof a=="function"){const r=a(n);return typeof r=="string"?r:Yn(r)}return Yn(e)}default:return Yn(e)}}function qt(e,n){for(;e!==null;){const r=om(e,n);if(r){if(r.get)return ct(r.get);if(typeof r.value=="function")return ct(r.value)}e=rm(e)}function a(){return null}return a}function mm(e){try{return gt(e,""),!0}catch{return!1}}const zo=ht(["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"]),Wa=ht(["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"]),qa=ht(["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"]),fm=ht(["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"]),Ua=ht(["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"]),Cm=ht(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),Wo=ht(["#text"]),qo=ht(["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"]),Ga=ht(["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"]),Uo=ht(["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"]),ma=ht(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),gm=mt(/{{[\w\W]*|^[\w\W]*}}/g),bm=mt(/<%[\w\W]*|^[\w\W]*%>/g),ym=mt(/\${[\w\W]*/g),vm=mt(/^data-[\-\w.\u00B7-\uFFFF]+$/),xm=mt(/^aria-[\-\w]+$/),Go=mt(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),_m=mt(/^(?:\w+script|data):/i),wm=mt(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),km=mt(/^html$/i),Am=mt(/^[a-z][.\w]*(-[.\w]+)+$/i),Ko=mt(/<[/\w!]/g),Yo=mt(/<[/\w]/g),Nm=mt(/<\/no(script|embed|frames)/i),Bm=mt(/\/>/i),$t={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},Zo=["style","script","xmp","iframe","noembed","noframes","plaintext","noscript"],Sm=ht(We({},Zo)),Dm=(function(){const e={};return wn(Zo,n=>{e[n]=mt(new RegExp("</"+n+"(?=[\\t\\n\\f\\r />])","i"))}),ht(e)})(),jm=function(){return typeof window>"u"?null:window},Tm=function(n,a){if(typeof n!="object"||typeof n.createPolicy!="function")return null;let r=null;const o="data-tt-policy-suffix";a&&a.hasAttribute(o)&&(r=a.getAttribute(o));const i="dompurify"+(r?"#"+r:"");try{return n.createPolicy(i,{createHTML(l){return l},createScriptURL(l){return l}})}catch{return console.warn("TrustedTypes policy "+i+" could not be created."),null}},Xo=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},hn=function(n,a,r,o){return jt(n,a)&&$n(n[a])?We(o.base?Lt(o.base):{},n[a],o.transform):r},Ka=function(n,a,r){const o=jt(n,a)?n[a]:void 0;return o&&typeof o=="object"?Lt(o):r()};function Jo(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:jm();const n=me=>Jo(me);if(n.version="3.4.14",n.removed=[],!e||!e.document||e.document.nodeType!==$t.document||!e.Element)return n.isSupported=!1,n;let a=e.document;const r=a,o=r.currentScript;e.DocumentFragment;const i=e.HTMLTemplateElement,l=e.Node,c=e.Element,u=e.NodeFilter,d=e.NamedNodeMap;d===void 0&&(e.NamedNodeMap||e.MozNamedAttrMap),e.HTMLFormElement;const p=e.DOMParser,h=e.trustedTypes,m=c.prototype,g=qt(m,"cloneNode"),y=qt(m,"remove"),C=qt(m,"nextSibling"),f=qt(m,"childNodes"),v=qt(m,"parentNode"),x=qt(m,"shadowRoot"),_=qt(m,"attributes"),b=l&&l.prototype?qt(l.prototype,"nodeType"):null,N=l&&l.prototype?qt(l.prototype,"nodeName"):null,w=l&&l.prototype?qt(l.prototype,"ownerDocument"):null,k=function(D){return b?b(D):D.nodeType},j=function(D){return N?N(D):D.nodeName};if(typeof i=="function"){const me=a.createElement("template");me.content&&me.content.ownerDocument&&(a=me.content.ownerDocument)}let A,S="",q,W=!1,B=0;const O=function(){if(B>0)throw kn('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.')},E=function(D){O(),B++;try{return A.createHTML(D)}finally{B--}},ee=function(D){O(),B++;try{return A.createScriptURL(D)}finally{B--}},M=function(){return W||(q=Tm(h,o),W=!0),q},H=a,Q=H.implementation,te=H.createNodeIterator,Y=H.createDocumentFragment,V=H.getElementsByTagName,T=r.importNode;let P=Xo();n.isSupported=typeof $o=="function"&&typeof v=="function"&&Q&&Q.createHTMLDocument!==void 0;const F=gm,L=bm,R=ym,z=vm,ae=xm,ne=_m,re=wm,pe=Am;let _e=Go,Z=null;const ie=We({},[...zo,...Wa,...qa,...Ua,...Wo]);let J=null;const be=We({},[...qo,...Ga,...Uo,...ma]);let xe=Object.seal(Ln(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}})),Ce=null,fe=null;const ve=Object.seal(Ln(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}}));let Se=!0,X=!0,ue=!1,ke=!0,Le=!1,Fe=!0,De=!1,Pe=!1,Me=null,Je=null,ze=!1,Ve=!1,ge=!1,He=!1,Be=!0,Ee=!1;const Ne="user-content-";let nt=!0,ft=!1,tt={},rt=null;const Ke=We({},["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 je=null;const Qe=We({},["audio","video","img","source","image","track"]);let ut=null;const qe=We({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Ye="http://www.w3.org/1998/Math/MathML",Ie="http://www.w3.org/2000/svg",Ze="http://www.w3.org/1999/xhtml";let ot=Ze,Ft=!1,dt=null;const At=We({},[Ye,Ie,Ze],za),dn=ht(["mi","mo","mn","ms","mtext"]);let Qt=We({},dn);const bt=ht(["annotation-xml"]);let yt=We({},bt);const Tt=We({},["title","style","font","a","script"]);let Rt=null;const en=["application/xhtml+xml","text/html"],_n="text/html";let Xe=null,Et=null;const vt=a.createElement("form"),Ot=function(D){return D instanceof RegExp||D instanceof Function},Mt=function(){let D=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(Et&&Et===D)return;(!D||typeof D!="object")&&(D={}),D=Lt(D),Rt=en.indexOf(D.PARSER_MEDIA_TYPE)===-1?_n:D.PARSER_MEDIA_TYPE,Xe=Rt==="application/xhtml+xml"?za:Gn,Z=hn(D,"ALLOWED_TAGS",ie,{transform:Xe}),J=hn(D,"ALLOWED_ATTR",be,{transform:Xe}),dt=hn(D,"ALLOWED_NAMESPACES",At,{transform:za}),ut=hn(D,"ADD_URI_SAFE_ATTR",qe,{transform:Xe,base:qe}),je=hn(D,"ADD_DATA_URI_TAGS",Qe,{transform:Xe,base:Qe}),rt=hn(D,"FORBID_CONTENTS",Ke,{transform:Xe}),Ce=hn(D,"FORBID_TAGS",Lt({}),{transform:Xe}),fe=hn(D,"FORBID_ATTR",Lt({}),{transform:Xe}),tt=jt(D,"USE_PROFILES")?D.USE_PROFILES&&typeof D.USE_PROFILES=="object"?Lt(D.USE_PROFILES):D.USE_PROFILES:!1,Se=D.ALLOW_ARIA_ATTR!==!1,X=D.ALLOW_DATA_ATTR!==!1,ue=D.ALLOW_UNKNOWN_PROTOCOLS||!1,ke=D.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Le=D.SAFE_FOR_TEMPLATES||!1,Fe=D.SAFE_FOR_XML!==!1,De=D.WHOLE_DOCUMENT||!1,Ve=D.RETURN_DOM||!1,ge=D.RETURN_DOM_FRAGMENT||!1,He=D.RETURN_TRUSTED_TYPE||!1,ze=D.FORCE_BODY||!1,Be=D.SANITIZE_DOM!==!1,Ee=D.SANITIZE_NAMED_PROPS||!1,nt=D.KEEP_CONTENT!==!1,ft=D.IN_PLACE||!1,_e=mm(D.ALLOWED_URI_REGEXP)?D.ALLOWED_URI_REGEXP:Go,ot=typeof D.NAMESPACE=="string"?D.NAMESPACE:Ze,Qt=Ka(D,"MATHML_TEXT_INTEGRATION_POINTS",()=>We({},dn)),yt=Ka(D,"HTML_INTEGRATION_POINTS",()=>We({},bt));const U=Ka(D,"CUSTOM_ELEMENT_HANDLING",()=>Ln(null));if(xe=Ln(null),jt(U,"tagNameCheck")&&Ot(U.tagNameCheck)&&(xe.tagNameCheck=U.tagNameCheck),jt(U,"attributeNameCheck")&&Ot(U.attributeNameCheck)&&(xe.attributeNameCheck=U.attributeNameCheck),jt(U,"allowCustomizedBuiltInElements")&&typeof U.allowCustomizedBuiltInElements=="boolean"&&(xe.allowCustomizedBuiltInElements=U.allowCustomizedBuiltInElements),mt(xe),Le&&(X=!1),ge&&(Ve=!0),tt&&(Z=We({},Wo),J=Ln(null),tt.html===!0&&(We(Z,zo),We(J,qo)),tt.svg===!0&&(We(Z,Wa),We(J,Ga),We(J,ma)),tt.svgFilters===!0&&(We(Z,qa),We(J,Ga),We(J,ma)),tt.mathMl===!0&&(We(Z,Ua),We(J,Uo),We(J,ma))),ve.tagCheck=null,ve.attributeCheck=null,jt(D,"ADD_TAGS")&&(typeof D.ADD_TAGS=="function"?ve.tagCheck=D.ADD_TAGS:$n(D.ADD_TAGS)&&(Z===ie&&(Z=Lt(Z)),We(Z,D.ADD_TAGS,Xe))),jt(D,"ADD_ATTR")&&(typeof D.ADD_ATTR=="function"?ve.attributeCheck=D.ADD_ATTR:$n(D.ADD_ATTR)&&(J===be&&(J=Lt(J)),We(J,D.ADD_ATTR,Xe))),jt(D,"ADD_FORBID_CONTENTS")&&$n(D.ADD_FORBID_CONTENTS)&&(rt===Ke&&(rt=Lt(rt)),We(rt,D.ADD_FORBID_CONTENTS,Xe)),nt&&(Z["#text"]=!0),De&&We(Z,["html","head","body"]),Z.table&&(We(Z,["tbody"]),delete Ce.tbody),D.TRUSTED_TYPES_POLICY){if(typeof D.TRUSTED_TYPES_POLICY.createHTML!="function")throw kn('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof D.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw kn('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');const se=A;A=D.TRUSTED_TYPES_POLICY;try{S=E("")}catch(we){throw A=se,we}}else D.TRUSTED_TYPES_POLICY===null?(A=void 0,S=""):(A===void 0&&(A=M()),A&&typeof S=="string"&&(S=E("")));ht&&ht(D),Et=D},Yt=We({},[...Wa,...qa,...fm]),tn=We({},[...Ua,...Cm]),nn=function(D,U,se){return U.namespaceURI===Ze?D==="svg":U.namespaceURI===Ye?D==="svg"&&(se==="annotation-xml"||Qt[se]):!!Yt[D]},Pt=function(D,U,se){return U.namespaceURI===Ze?D==="math":U.namespaceURI===Ie?D==="math"&&yt[se]:!!tn[D]},Vt=function(D,U,se){return U.namespaceURI===Ie&&!yt[se]||U.namespaceURI===Ye&&!Qt[se]?!1:!tn[D]&&(Tt[D]||!Yt[D])},pn=function(D){let U=v(D);(!U||!U.tagName)&&(U={namespaceURI:ot,tagName:"template"});const se=Gn(D.tagName),we=Gn(U.tagName);return dt[D.namespaceURI]?D.namespaceURI===Ie?nn(se,U,we):D.namespaceURI===Ye?Pt(se,U,we):D.namespaceURI===Ze?Vt(se,U,we):!!(Rt==="application/xhtml+xml"&&dt[D.namespaceURI]):!1},xt=function(D){Un(n.removed,{element:D});try{v(D).removeChild(D)}catch{if(y(D),!v(D))throw kn("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place")}},Ht=function(D,U,se){try{D.removeAttributeNode(U)}catch{try{D.removeAttribute(se)}catch{}}},Zt=function(D){$(D);const U=f(D);if(U){const we=[];wn(U,Ae=>{Un(we,Ae)}),wn(we,Ae=>{try{y(Ae)}catch{}})}const se=_(D);if(se)for(let we=se.length-1;we>=0;--we){const Ae=se[we],$e=Ae&&Ae.name;typeof $e=="string"&&Ht(D,Ae,$e)}},Nt=function(D,U,se){if(!se)try{se=U.getAttributeNode(D)}catch{se=null}Un(n.removed,{attribute:se||null,from:U});try{se?U.removeAttributeNode(se):U.removeAttribute(D)}catch{try{U.removeAttribute(D)}catch{}}if(D==="is")if(Ve||ge)try{xt(U)}catch{}else try{U.setAttribute(D,"")}catch{}},I=function(D){const U=_(D);if(U)for(let se=U.length-1;se>=0;--se){const we=U[se],Ae=we&&we.name;typeof Ae!="string"||J[Xe(Ae)]||Ht(D,we,Ae)}},$=function(D){const U=[D];for(;U.length>0;){const se=U.pop();k(se)===$t.element&&I(se);const Ae=f(se);if(Ae)for(let $e=Ae.length-1;$e>=0;--$e)U.push(Ae[$e])}},G=function(D,U){return Fe?D==="patchsrc"?!0:D==="for"&&U!=="label"&&U!=="output":!1},le=function(D){if(!Fe)return;const U=[D];for(;U.length>0;){const se=U.pop(),we=k(se);if(we===$t.processingInstruction||we===$t.comment&&gt(Yo,se.data)){try{y(se)}catch{}continue}if(we===$t.element){const $e=se,et=Xe(j(se));try{$e.hasAttribute&&$e.hasAttribute("patchsrc")&&$e.removeAttribute("patchsrc"),$e.hasAttribute&&$e.hasAttribute("for")&&G("for",et)&&$e.removeAttribute("for")}catch{}}const Ae=f(se);if(Ae)for(let $e=Ae.length-1;$e>=0;--$e)U.push(Ae[$e])}},de=function(D){let U=null,se=null;if(ze)D="<remove></remove>"+D;else{const $e=Fo(D,/^[\r\n\t ]+/);se=$e&&$e[0]}Rt==="application/xhtml+xml"&&ot===Ze&&(D='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+D+"</body></html>");const we=A?E(D):D;if(ot===Ze)try{U=new p().parseFromString(we,Rt)}catch{}if(!U||!U.documentElement){U=Q.createDocument(ot,"template",null);try{U.documentElement.innerHTML=Ft?S:we}catch{}}const Ae=U.body||U.documentElement;return D&&se&&Ae.insertBefore(a.createTextNode(se),Ae.childNodes[0]||null),ot===Ze?V.call(U,De?"html":"body")[0]:De?U.documentElement:Ae},ce=function(D){const U=w?w(D):D.ownerDocument;return te.call(U||D,D,u.SHOW_ELEMENT|u.SHOW_COMMENT|u.SHOW_TEXT|u.SHOW_PROCESSING_INSTRUCTION|u.SHOW_CDATA_SECTION,null)},Te=function(D){return D=Kn(D,F," "),D=Kn(D,L," "),D=Kn(D,R," "),D},Re=function(D){var U;D.normalize();const se=w?w(D):D.ownerDocument,we=te.call(se||D,D,u.SHOW_TEXT|u.SHOW_COMMENT|u.SHOW_CDATA_SECTION|u.SHOW_PROCESSING_INSTRUCTION,null);let Ae=we.nextNode();for(;Ae;)Ae.data=Te(Ae.data),Ae=we.nextNode();const $e=(U=D.querySelectorAll)===null||U===void 0?void 0:U.call(D,"template");$e&&wn($e,et=>{pt(et.content)&&Re(et.content)})},Ge=function(D){const U=N?N(D):null;return typeof U!="string"||Xe(U)!=="form"?!1:typeof D.nodeName!="string"||typeof D.textContent!="string"||typeof D.removeChild!="function"||D.attributes!==_(D)||typeof D.removeAttribute!="function"||typeof D.setAttribute!="function"||typeof D.namespaceURI!="string"||typeof D.insertBefore!="function"||typeof D.hasChildNodes!="function"||D.nodeType!==b(D)||D.childNodes!==f(D)},pt=function(D){if(!b||typeof D!="object"||D===null)return!1;try{return b(D)===$t.documentFragment}catch{return!1}},lt=function(D){if(!b||typeof D!="object"||D===null)return!1;try{return typeof b(D)=="number"}catch{return!1}};function Ue(me,D,U){me.length!==0&&wn(me,se=>{se.call(n,D,U,Et)})}const zt=function(D,U){return!!(Fe&&D.hasChildNodes()&&!lt(D.firstElementChild)&&gt(Ko,D.textContent)&&gt(Ko,D.innerHTML)||Fe&&D.namespaceURI===Ze&&Sm[U]&&(lt(D.firstElementChild)||typeof D.textContent=="string"&&gt(Dm[U],D.textContent))||D.nodeType===$t.processingInstruction||Fe&&D.nodeType===$t.comment&&gt(Yo,D.data))},Wt=function(D,U){if(D instanceof RegExp)return gt(D,U);if(D instanceof Function){for(var se=arguments.length,we=new Array(se>2?se-2:0),Ae=2;Ae<se;Ae++)we[Ae-2]=arguments[Ae];return!!D(U,...we)}return!1},Ra=function(D,U,se){if(!Ce[U]&&lo(U)&&Wt(xe.tagNameCheck,U))return!1;if(nt&&!rt[U]){const we=v(D),Ae=f(D);if(Ae&&we){const $e=Ae.length;for(let et=$e-1;et>=0;--et){const at=D===se?g(Ae[et],!0):Ae[et];we.insertBefore(at,C(D))}}}return xt(D),!0},ro=function(D,U,se,we){return D.length===0?U:U===se||U===we?Lt(U):U},oo=function(D,U){return D===U||v(D)!==null?!1:(ft&&$(D),!0)},so=function(D,U){if(Ue(P.beforeSanitizeElements,D,null),oo(D,U))return!0;if(Ge(D))return xt(D),!0;const se=Xe(j(D));if(Z=ro(P.uponSanitizeElement,Z,ie,Me),Ue(P.uponSanitizeElement,D,{tagName:se,allowedTags:Z}),oo(D,U))return!0;if(zt(D,se))return xt(D),!0;if(Ce[se]||!(ve.tagCheck instanceof Function&&ve.tagCheck(se))&&!Z[se]){const Ae=Ra(D,se,U);return Ae===!1&&Ue(P.afterSanitizeElements,D,null),Ae}if(k(D)===$t.element&&!pn(D)||(se==="noscript"||se==="noembed"||se==="noframes")&&gt(Nm,D.innerHTML))return xt(D),!0;if(Le&&D.nodeType===$t.text){const Ae=Te(D.textContent);D.textContent!==Ae&&(Un(n.removed,{element:D.cloneNode()}),D.textContent=Ae)}return Ue(P.afterSanitizeElements,D,null),!1},io=function(D,U,se){if(fe[U]||G(U,D)||Be&&(U==="id"||U==="name")&&(se in a||se in vt))return!1;const we=J[U]||ve.attributeCheck instanceof Function&&ve.attributeCheck(U,D);return X&&gt(z,U)||Se&&gt(ae,U)?!0:we?ut[U]||gt(_e,Kn(se,re,""))||(U==="src"||U==="xlink:href"||U==="href")&&D!=="script"&&Oo(se,"data:")===0&&je[D]||ue&&!gt(ne,Kn(se,re,""))?!0:!se:lo(D)&&Wt(xe.tagNameCheck,D)&&Wt(xe.attributeNameCheck,U,D)||U==="is"&&xe.allowCustomizedBuiltInElements&&Wt(xe.tagNameCheck,se)},fc=We({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),lo=function(D){return!fc[Gn(D)]&&gt(pe,D)},Cc=function(D,U,se,we){if(A&&typeof h=="object"&&typeof h.getAttributeType=="function"&&!se)switch(h.getAttributeType(D,U)){case"TrustedHTML":return E(we);case"TrustedScriptURL":return ee(we)}return we},gc=function(D,U,se,we){try{se?D.setAttributeNS(se,U,we):D.setAttribute(U,we),Ge(D)?xt(D):Io(n.removed)}catch{Nt(U,D)}},co=function(D){Ue(P.beforeSanitizeAttributes,D,null);const U=D.attributes;if(!U||Ge(D))return;J=ro(P.uponSanitizeAttribute,J,be,Je);const se={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:J,forceKeepAttr:void 0};let we=U.length;const Ae=Xe(D.nodeName);for(;we--;){const $e=U[we],et=$e.name,at=$e.namespaceURI,Bt=$e.value,St=Xe(et),Ia=Bt;let _t=et==="value"?Ia:lm(Ia);if(se.attrName=St,se.attrValue=_t,se.keepAttr=!0,se.forceKeepAttr=void 0,Ue(P.uponSanitizeAttribute,D,se),_t=se.attrValue,Ee&&(St==="id"||St==="name")&&Oo(_t,Ne)!==0&&(Nt(et,D,$e),_t=Ne+_t),Fe&&gt(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,_t)){Nt(et,D,$e);continue}if(St==="attributename"&&Fo(_t,"href")){Nt(et,D,$e);continue}if(!se.forceKeepAttr){if(!se.keepAttr){Nt(et,D,$e);continue}if(!ke&&gt(Bm,_t)){Nt(et,D,$e);continue}if(Le&&(_t=Te(_t)),!io(Ae,St,_t)){Nt(et,D,$e);continue}_t=Cc(Ae,St,at,_t),_t!==Ia&&gc(D,et,at,_t)}}Ue(P.afterSanitizeAttributes,D,null)},ha=function(D){let U=null;const se=ce(D);for(Ue(P.beforeSanitizeShadowDOM,D,null);U=se.nextNode();)if(Ue(P.uponSanitizeShadowNode,U,null),so(U,D),co(U),pt(U.content)&&ha(U.content),k(U)===$t.element){const we=x(U);pt(we)&&(Pa(we),ha(we))}Ue(P.afterSanitizeShadowDOM,D,null)},Pa=function(D){const U=[{node:D,shadow:null}];for(;U.length>0;){const se=U.pop();if(se.shadow){ha(se.shadow);continue}const we=se.node,$e=k(we)===$t.element,et=f(we);if(et)for(let at=et.length-1;at>=0;--at)U.push({node:et[at],shadow:null});if($e){const at=N?N(we):null;if(typeof at=="string"&&Xe(at)==="template"){const Bt=we.content;pt(Bt)&&U.push({node:Bt,shadow:null})}}if($e){const at=x(we);pt(at)&&U.push({node:null,shadow:at},{node:at,shadow:null})}}};return n.sanitize=function(me){let D=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},U=null,se=null,we=null,Ae=null;if(Ft=!me,Ft&&(me="<!-->"),typeof me!="string"&&!lt(me)&&(me=hm(me),typeof me!="string"))throw kn("dirty is not a string, aborting");if(!n.isSupported)return me;Pe?(Z=Me,J=Je):Mt(D),(P.uponSanitizeElement.length>0||P.uponSanitizeAttribute.length>0)&&(Z=Lt(Z)),P.uponSanitizeAttribute.length>0&&(J=Lt(J)),n.removed=[];const $e=ft&&typeof me!="string"&&lt(me);if($e){le(me);const Bt=j(me);if(typeof Bt=="string"){const St=Xe(Bt);if(!Z[St]||Ce[St])throw Zt(me),kn("root node is forbidden and cannot be sanitized in-place")}if(Ge(me))throw Zt(me),kn("root node is clobbered and cannot be sanitized in-place");try{Pa(me)}catch(St){throw Zt(me),St}}else if(lt(me))U=de("<!---->"),se=U.ownerDocument.importNode(me,!0),se.nodeType===$t.element&&se.nodeName==="BODY"||se.nodeName==="HTML"?U=se:U.appendChild(se),Pa(se);else{if(!Ve&&!Le&&!De&&me.indexOf("<")===-1)return A&&He?E(me):me;if(U=de(me),!U)return Ve?null:He?S:""}U&&ze&&xt(U.firstChild);const et=$e?me:U;try{const Bt=ce(et);for(;we=Bt.nextNode();)so(we,et),co(we),pt(we.content)&&ha(we.content)}catch(Bt){throw $e&&(Zt(me),wn(n.removed,St=>{St.element&&$(St.element)})),Bt}if($e)return wn(n.removed,Bt=>{Bt.element&&$(Bt.element)}),Le&&Re(me),me;if(Ve){if(Le&&Re(U),ge)for(Ae=Y.call(U.ownerDocument);U.firstChild;)Ae.appendChild(U.firstChild);else Ae=U;return(J.shadowroot||J.shadowrootmode)&&(Ae=T.call(r,Ae,!0)),Ae}let at=De?U.outerHTML:U.innerHTML;return De&&Z["!doctype"]&&U.ownerDocument&&U.ownerDocument.doctype&&U.ownerDocument.doctype.name&&gt(km,U.ownerDocument.doctype.name)&&(at="<!DOCTYPE "+U.ownerDocument.doctype.name+`>
808
+ `+at),Le&&(at=Te(at)),A&&He?E(at):at},n.setConfig=function(){let me=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Mt(me),Pe=!0,Me=Z,Je=J},n.clearConfig=function(){Et=null,Pe=!1,Me=null,Je=null,A=q,S=""},n.isValidAttribute=function(me,D,U){Et||Mt({});const se=Xe(me),we=Xe(D);return io(se,we,U)},n.addHook=function(me,D){typeof D=="function"&&jt(P,me)&&Un(P[me],D)},n.removeHook=function(me,D){if(jt(P,me)){if(D!==void 0){const U=sm(P[me],D);return U===-1?void 0:im(P[me],U,1)[0]}return Io(P[me])}},n.removeHooks=function(me){jt(P,me)&&(P[me]=[])},n.removeAllHooks=function(){P=Xo()},n}var Em=Jo();const Mm=/^(?:[a-z]+:)?\/\//i,Lm="__ihab_core_asset_base_url__";function $m(){return globalThis[Lm]??""}function Ya(e){const n=String(e||"").trim();if(!n)return"";if(Mm.test(n)||n.startsWith("data:")||n.startsWith("blob:"))return n;const a=n.startsWith("/")?n:`/${n}`,r=$m();return r?`${r}${a}`:a}const Qo="__ihab_core_storage_resolvers__";function Zn(){return globalThis[Qo]??null}function Rm(e){globalThis[Qo]=e}let es=class extends Error{constructor(n){super(`
809
809
  [ihabdevteam-core] ${n}() \uD638\uCD9C \uC2E4\uD328 \u2014 configureStorage()\uAC00 \uC124\uC815\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4.
810
810
 
811
811
  \uC571 \uCD08\uAE30\uD654 \uC2DC\uC810(main.tsx \uB4F1)\uC5D0 \uC544\uB798\uC640 \uAC19\uC774 \uD55C \uBC88 \uD638\uCD9C\uD558\uC138\uC694:
@@ -824,18 +824,18 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
824
824
  \uC124\uCE58 \uBA85\uB839\uC5B4 (\uC2A4\uD1A0\uB9AC\uC9C0 SDK \uBBF8\uC124\uCE58 \uC2DC):
825
825
  npm install @supabase/supabase-js
826
826
  pnpm add @supabase/supabase-js
827
- `),this.name="StorageNotConfiguredError"}};function Pm(e){Rm(e)}function ts(e,n){if(!e)return null;const a=Zn();return a?.resolvePath?a.resolvePath(e,n):n?`${n}/${e}.mp3`:null}async function ns(e){if(!e)return null;const n=Zn();if(!n)throw new es("getSignedOrPublicUrl");try{return await n.resolveUrl(e)}catch{return null}}async function as(e){const n=Zn();if(!n)throw new es("downloadSound");return n.download(e)}function Im(){return Zn()?.noiseBaseUrl??"/sounds/noise"}function rs(){const e=Number(Zn()?.noiseFileGain);return Number.isFinite(e)&&e>0?e:1}const os="__ihab_core_tts_config__";function Za(){return globalThis[os]?.urlResolver??null}function Fm(){return globalThis[os]?.fallbackUrlResolver??null}const Om="__ihab_core_pronunciation_resolver__";function Hm(){return globalThis[Om]??null}let mn=null;const Xn=new WeakMap,Xa=new WeakMap,Ja=new WeakMap;let ss=!1;const is=e=>Math.max(0,Math.min(1,Number.isFinite(e)?e:0));function Vm(){if(ss||typeof document>"u")return;ss=!0;const e=()=>{try{mn&&mn.state!=="running"&&mn.resume()}catch{}};for(const n of["pointerdown","touchend","keydown"])document.addEventListener(n,e,{capture:!0,passive:!0})}function ls(){if(mn)return mn;try{const e=window.AudioContext||window.webkitAudioContext;return e?(mn=new e,Vm(),mn):null}catch{return null}}function Qa(){try{mn?.resume()}catch{}}function er(e,n){const a=Xn.get(n);if(a)return a;try{const r=e.createMediaElementSource(n),o=e.createGain(),i=e.createAnalyser();i.fftSize=1024,i.smoothingTimeConstant=.6,o.gain.value=is(Xa.get(n)??n.volume),r.connect(o),o.connect(i),o.connect(e.destination);try{n.volume=1}catch{}const l={gain:o,analyser:i};return Xn.set(n,l),l}catch{return null}}function fa(e){if(!e)return Promise.resolve(null);const n=Xn.get(e);if(n)return Promise.resolve(n.analyser);const a=ls();if(!a)return Promise.resolve(null);if(a.state==="running")return Promise.resolve(er(a,e)?.analyser??null);const r=Ja.get(e);if(r)return r;const o=Promise.resolve().then(()=>a.resume()).then(()=>a.state==="running"?er(a,e)?.analyser??null:null).catch(()=>null).finally(()=>{Ja.delete(e)});return Ja.set(e,o),o}function zm(e){if(!e)return null;const n=Xn.get(e);if(n)return n.analyser;const a=ls();return a?a.state==="running"?er(a,e)?.analyser??null:(fa(e),null):null}function fn(e,n){const a=is(n);Xa.set(e,a);const r=Xn.get(e);if(r){try{e.volume!==1&&(e.volume=1)}catch{}const o=r.gain.gain;try{const i=r.gain.context.currentTime;o.cancelScheduledValues(i),o.setTargetAtTime(a,i,.01)}catch{try{o.value=a}catch{}}return"gain"}try{e.volume=a}catch{}return"element"}function Ca(e){return Xa.get(e)??e.volume}function Wm(e,n){e.getFloatTimeDomainData(n);let a=0;for(let r=0;r<n.length;r++){const o=n[r];a+=o*o}return Math.sqrt(a/n.length)}const qm="__ihab_core_image_config__";function Rn(){return globalThis[qm]??null}const cs="word_image_existence_map_v1";let An=null;const ga=new Map;function Um(){if(An)return An;try{const e=typeof localStorage<"u"?localStorage.getItem(cs):null;An=e?JSON.parse(e):{}}catch{An={}}return An}let tr=null;function Gm(){tr||(tr=setTimeout(()=>{tr=null;try{typeof localStorage<"u"&&An&&localStorage.setItem(cs,JSON.stringify(An))}catch{}},200))}function Km(e,n){return`${e}_${n??1}`}async function us(e,n){const a=Um(),r=Km(e,n);if(r in a)return a[r];if(ga.has(r))return ga.get(r);const o=Rn();if(!o)return!1;const i=o(e,n);if(!i)return!1;const l=fetch(i,{method:"HEAD",signal:AbortSignal.timeout(8e3)}).then(c=>c.status>=500?null:c.ok,()=>null).then(c=>(ga.delete(r),c===null?!1:(a[r]=c,Gm(),c)));return ga.set(r,l),l}const ds=["\u3131","\u3132","\u3134","\u3137","\u3138","\u3139","\u3141","\u3142","\u3143","\u3145","\u3146","\u3147","\u3148","\u3149","\u314A","\u314B","\u314C","\u314D","\u314E"],ps=["\u314F","\u3150","\u3151","\u3152","\u3153","\u3154","\u3155","\u3156","\u3157","\u3158","\u3159","\u315A","\u315B","\u315C","\u315D","\u315E","\u315F","\u3160","\u3161","\u3162","\u3163"],Ym=["","\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 Jn(e){if(!e)return null;const n=e.charCodeAt(0)-44032;return n<0||n>=11172?null:{cho:Math.floor(n/588),jung:Math.floor(n%588/28),jong:n%28}}function Zm(e){const n=Jn(e[0]||"");return n?ds[n.cho]:""}function Xm(e,n){if(!n)return!0;const a=[...n],r=c=>ds.includes(c),o=c=>ps.includes(c),i=a.map(c=>r(c)?"cho":o(c)?"jung":Jn(c)?"syl":"other");if(i.includes("other"))return e.toLowerCase().includes(n.toLowerCase());const l=[...e];for(let c=0;c+a.length<=l.length;c++){let u=!0;for(let d=0;d<a.length;d++){const p=l[c+d],h=i[d];if(h==="cho"){if(Zm(p)!==a[d]){u=!1;break}}else if(h==="jung"){const m=Jn(p);if(!m||ps[m.jung]!==a[d]){u=!1;break}}else{const m=Jn(a[d]);if(m&&m.jong===0){const g=Jn(p);if(!g||g.cho!==m.cho||g.jung!==m.jung){u=!1;break}}else if(p!==a[d]){u=!1;break}}}if(u)return!0}return!1}const Jm={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(Jm).map(([e,n])=>[n.join(""),Ym[Number(e)]]));const Qm="word_pair_index_v2",e0="word_pair_index_sig_v2";let ba=null;function t0(){try{if(typeof localStorage>"u")return null;const e=localStorage.getItem(Qm),n=localStorage.getItem(e0);return!e||!n?null:{index:JSON.parse(e),sig:n}}catch{return null}}function n0(){if(ba)return ba;const e=t0();return e?(ba=e.index,e.sig,ba):null}const a0={\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"}},nr=/[ㄱ-ㅎ]/,r0=/[ㅏ-ㅣ]/;function hs(e){for(let n=e.length-1;n>=0;n--){const a=e[n],r=a.charCodeAt(0);if(r>=44032&&r<=55203||nr.test(a)||r0.test(a))return a}return null}function o0(e){const n=hs(e);if(!n)return"\uAC00";const a=n.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uC774":"\uAC00":nr.test(n)?"\uC774":"\uAC00"}function s0(e){return`${e}${o0(e)}`}function i0(e){const n=hs(e);if(!n)return"\uB97C";const a=n.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uC744":"\uB97C":nr.test(n)?"\uC744":"\uB97C"}function l0(e){return`${e}${i0(e)}`}function c0(e,n,a){const r=e.slice(),[o]=r.splice(n,1);return r.splice(a,0,o),r}function Qn(e,n=Math.random){const a=e.slice();for(let r=a.length-1;r>0;r--){const o=Math.floor(n()*(r+1));[a[r],a[o]]=[a[o],a[r]]}return a}const u0=()=>{const e="\uC54C \uC218 \uC5C6\uB294 \uC624\uB958",n=typeof Dt?.t=="function"?Dt.t("common.unknownError",{defaultValue:e}):void 0;return typeof n=="string"&&n?n:e};function ms(e,n){if(n===void 0&&(n=u0()),e instanceof Error)return e.message||n;if(typeof e=="string")return e||n;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 n}const d0="__ihab_core_word_pool__";function p0(){return globalThis[d0]??null}const fs=globalThis;function Cs(e,n){const a=r=>{};try{const r=n();r&&typeof r.catch=="function"&&r.catch(a)}catch(r){a(r)}}function h0(e){Cs("time",()=>fs.__ihabTrainingTimeLogger?.(e))}function m0(e){Cs("completion",()=>fs.__ihabTrainingCompletionLogger?.(e))}function Ut(e){return typeof e=="string"?e.trim()||null:typeof e=="number"?String(e):null}function f0(e){for(const n of["correct","isCorrect","heard","judgement"])if(typeof e[n]=="boolean")return e[n];return e.score===1?!0:e.score===0?!1:null}function C0(e){return Array.isArray(e)?e.map((n,a)=>{const r=n??{};return{index:a,itemId:Ut(r.contextCode)??Ut(r.itemId)??Ut(r.itemCode)??Ut(r.id),question:Ut(r.question)??Ut(r.sentence)??Ut(r.word)??Ut(r.targetSyllable),answer:Ut(r.answer),selected:Ut(r.selectedText)??Ut(r.selected),correct:f0(r)}}):[]}const ar=globalThis;async function g0(){try{return await ar.__ihabNoiseSettingsStore?.load()??null}catch{return null}}function gs(e){const n=a=>{};try{const a=ar.__ihabNoiseSettingsStore?.save(e);a&&typeof a.catch=="function"&&a.catch(n)}catch(a){n(a)}}function ya(e){try{ar.__ihabNoiseSettingsStore?.applied?.(e)}catch{}}async function b0(e){if(typeof document<"u"){const n=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),n&&n!==document.activeElement&&typeof n.focus=="function"&&n.isConnected)try{n.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}function y0(){return rr(new Date)}function rr(e){if(e==null||e==="")return"";const n=e instanceof Date?e:new Date(e);return isNaN(n.getTime())?"":new Intl.DateTimeFormat("fr-CA",{timeZone:"Asia/Seoul"}).format(n)}function bs(e,n){if(!e)return"";const a=new Date(e).getTime();if(Number.isNaN(a))return"";const r=Math.max(0,Math.floor((Date.now()-a)/1e3)),o=Math.floor(r/60),i=Math.floor(o/60),l=Math.floor(i/24),c=Math.floor(l/7),u=Math.floor(l/30),d=Math.floor(l/365);return o<1?n("store.time.justNow","\uBC29\uAE08 \uC804"):o<60?n("store.time.minutesAgo",{n:o}):i<24?n("store.time.hoursAgo",{n:i}):l<7?n("store.time.daysAgo",{n:l}):c<5?n("store.time.weeksAgo",{n:c}):l<365?n("store.time.monthsAgo",{n:Math.min(u,11)}):n("store.time.yearsAgo",{n:d})}function ys(e,n={}){const{sep:a=".",pad:r=!0,trailingDot:o=!1,fallback:i="\u2014"}=n;if(!e)return i;const l=rr(e instanceof Date?e:String(e));if(!l)return i;const[c,u,d]=l.split("-"),p=r?u:String(Number(u)),h=r?d:String(Number(d));return`${c}${a}${p}${a}${h}${o?".":""}`}function ea(e){if(!e)return e;const n=e.trim();return/^[₩$]/.test(n)?n:/원\s*$/.test(n)?"\u20A9"+n.replace(/\s*원\s*$/,"").trim():n}function vs(e,n){if(!e)return"-";const a=/^(\d{1,2}):(\d{2})$/.exec(e.trim());if(!a)return e;const r=Number(a[1]),o=Number(a[2]),i=a[1].padStart(2,"0");return o===0?n("date.timeH",{h:r,hh:i,mm:a[2]}):n("date.timeHM",{h:r,hh:i,m:o,mm:a[2]})}function or(e){return(e??0).toLocaleString("ko-KR")}const v0=[{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"}]}],x0=[{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 xs(){return v0}function _0(){return x0}const w0=[],k0=[],A0=[],N0=[];function B0(){return{LISTEN_IN_NOISE:w0,SHORT_STORY:k0,LONG_STORY:A0,ORDERING_SENTENCE:N0}}const S0=[{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."}],_s={LISTEN_IN_NOISE:"listenInNoise",SHORT_STORY:"shortStory",LONG_STORY:"longStory",ORDERING_SENTENCE:"orderingSentence"};function D0(e){return S0.map(n=>{const a=_s[n.key];return a?{...n,label:e(`trainingType.${a}.title`),desc:e(`trainingType.${a}.desc`)}:n})}let va=null,ws=null,ks=null;function j0(){const e=p0();if(e&&e.entries.length>0){const n=n0();if(va&&ws===e&&ks===n)return va;const a=new Set,r=[];for(const o of e.entries)!o.word||a.has(o.word)||(a.add(o.word),r.push({w:o.word,s:o.syllables,p:n?.[o.word]?[...n[o.word].cho??[],...n[o.word].jung??[],...n[o.word].jong??[]]:[],pron:o.pronunciation||o.word,grade:o.grade}));return va=r,ws=e,ks=n,va}return[]}new Proxy([],{get(e,n){const a=j0(),r=a[n];return typeof r=="function"?r.bind(a):r}});const T0="0.138.0";function E0(e){return typeof window>"u"?"":Em.sanitize(e,{USE_PROFILES:{svg:!0,svgFilters:!0},FORBID_TAGS:["script","use"],FORBID_ATTR:["xlink:href","href"]})}function M0(e){const[n,a]=s.useState(null),[r,o]=s.useState(null),[i,l]=s.useState(null),[c,u]=s.useState(null);return s.useEffect(()=>{if(!e||typeof e!="string"||!e.endsWith(".svg")){a(null),o(null),l(null);return}const d=e.split("/").pop();let p=e;d&&(e.startsWith("/")?p=Ya(e):/^(Logo|Symbol)/i.test(d)?p=Ya(`logo/${d}`):(/^https?:\/\//i.test(e)||e.startsWith("data:"),p=e)),o(null),l(null),a(p)},[e]),s.useEffect(()=>{if(!n)return;let d=!1;async function p(){try{let h=await fetch(n);h.ok||(h=await fetch(n));const m=h.headers.get("content-type")||"";if(d)return;if(m.includes("svg")){o("mask");return}if(m.startsWith("image/")){o("img");return}const g=await fetch(n);if(!g.ok)throw new Error("not ok");const y=await g.text();if(d)return;if(/^\s*<svg[\s>]/i.test(y)){const C=E0(y);if(!C){o("none");return}l(C),o("inline");return}o("none")}catch{d||o("none")}}return p(),()=>{d=!0}},[n]),s.useEffect(()=>{let d=!1,p=null;return r==="mask"&&n&&fetch(n).then(h=>{if(!h.ok)throw new Error("fetch failed");return h.blob()}).then(h=>{d||(p=URL.createObjectURL(h),u(p))}).catch(()=>{d||o("img")}),()=>{d=!0,p&&URL.revokeObjectURL(p),u(null)}},[r,n]),{iconToUse:n,mode:r,svgText:i,blobUrl:c}}function Oe(e){const{icon:n,label:a,className:r,imgClassName:o,maskClassName:i,svgClassName:l,wrapperStyle:c,size:u}=e||{},d=r??"iconRenderer-icon",p=o??"iconRenderer-icon-image",h=i??"iconRenderer-icon-mask",m=l??"iconRenderer-icon-svg",g=typeof n=="string"?n:null,y=Xh(g),{iconToUse:C,mode:f,svgText:v,blobUrl:x}=M0(g),_=(k,j={})=>t.jsx("span",{className:d,style:c,...j,children:k}),b=(k,j={})=>t.jsx("img",{src:k,alt:typeof a=="string"?a:typeof a=="number"?String(a):"",className:p,...j});if(!n)return null;if(typeof n!="string")return _(n);if(n==="none")return _(t.jsx("span",{className:m,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 _(s.createElement(y,{className:m,size:typeof u=="number"?u:20}),{"aria-hidden":"true"})}catch{}if(C&&C.endsWith(".svg")){if(f==="mask"){const k={"--icon-url":x?`url(${x})`:`url(${C})`,...typeof u=="number"?{"--icon-size":`${u}px`}:null};return _(t.jsx("span",{className:h,style:k}),{"aria-hidden":"true"})}return f==="img"?_(b(C,{onError:k=>{k.currentTarget.onerror=null,k.currentTarget.style.display="none"}}),{"aria-hidden":"true"}):f==="inline"?_(t.jsx("span",{className:m,dangerouslySetInnerHTML:v?{__html:v}:void 0}),{"aria-hidden":"true"}):_(null,{"aria-hidden":"true"})}if(n.startsWith("/")||n.includes("/assets/")||n.match(/\.(png|jpg|jpeg|webp|gif)$/i))return b(Ya(n),{style:c,onError:k=>{k.currentTarget.onerror=null,k.currentTarget.style.display="none"}});const N=typeof u=="number"?u:20,w=`<svg width="${N}" height="${N}" 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 _(t.jsx("span",{className:m,dangerouslySetInnerHTML:{__html:w}}),{"aria-hidden":"true"})}function L0({icon:e,emoji:n,title:a,message:r,hint:o,action:i,compact:l,className:c}){return t.jsxs("div",{className:ye("empty-state",l&&"empty-state--compact",c),children:[n&&t.jsx("span",{className:"empty-state__emoji",children:n}),e&&t.jsx(Oe,{icon:e,className:"empty-state__icon"}),a&&t.jsx("p",{className:"empty-state__title body-2",children:a}),r&&t.jsx("p",{className:"empty-state__message body-3",children:r}),o&&t.jsx("p",{className:"empty-state__hint caption-1",children:o}),i&&t.jsxs("button",{type:"button",className:"empty-state__action button button40 button40--bar button--variant-main button--align-center button--shape-rounded",onClick:i.onClick,children:[i.icon&&t.jsx(Oe,{icon:i.icon,className:"button__icon"}),t.jsx("span",{className:"button__label button-1",children:i.label})]})]})}function $0({message:e,hint:n,icon:a="triangle-alert",onRetry:r,retryLabel:o,className:i}){const{t:l}=he.useTranslation();return t.jsxs("div",{className:ye("empty-state","error-state",i),role:"alert",children:[t.jsx(Oe,{icon:a,className:"empty-state__icon error-state__icon"}),t.jsx("p",{className:"empty-state__message body-3",children:e??l("common.errorState.message",{defaultValue:"\uBD88\uB7EC\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."})}),n&&t.jsx("p",{className:"empty-state__hint caption-1",children:n}),r&&t.jsxs("button",{type:"button",className:"empty-state__action button button40 button40--bar button--variant-main button--align-center button--shape-rounded",onClick:r,children:[t.jsx(Oe,{icon:"rotate-cw",className:"button__icon"}),t.jsx("span",{className:"button__label button-1",children:o??l("common.errorState.retry",{defaultValue:"\uB2E4\uC2DC \uC2DC\uB3C4"})})]})]})}function R0({icon:e,title:n,description:a,cta:r,tone:o="main",disabled:i=!1,onClick:l,className:c=""}){const u=()=>{i||l?.()};return t.jsx("section",{role:"button",tabIndex:i?-1:0,"aria-disabled":i||void 0,"aria-label":n,onClick:u,onKeyDown:d=>{(d.key==="Enter"||d.key===" ")&&(d.preventDefault(),u())},className:ye("action-card",`action-card--${o}`,i&&"action-card--disabled",c),children:t.jsxs("div",{className:"action-card__body",children:[t.jsx("span",{"aria-hidden":!0,className:"action-card__chip",children:t.jsx(Oe,{icon:e,size:34})}),t.jsxs("div",{className:"action-card__text",children:[t.jsx("h2",{className:"action-card__title",children:n}),t.jsx("p",{className:"action-card__desc",children:a})]}),t.jsxs("div",{className:"action-card__cta",children:[t.jsx("span",{children:r}),t.jsx("span",{"aria-hidden":!0,className:"action-card__arrow",children:t.jsx(Oe,{icon:"arrow-right",size:18})})]})]})})}function P0({as:e="div",className:n="",children:a,storage:r,...o}){r&&Pm({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=ye("ihabdevteam-core-scope",n);return t.jsx(e,{className:i,...o,children:a})}function I0({title:e="",lines:n=[],notices:a=null,children:r,variant:o="default",dismissible:i=!1,className:l=""}){const{t:c}=he.useTranslation(),[u,d]=s.useState(!1),p=s.useCallback(()=>d(!0),[]);if(u)return null;const h=`notice-box notice-box--${o} body-2 ${l}`.trim();if(a&&Array.isArray(a)&&a.length)return t.jsx("div",{className:h,role:"note",children:a.map((g,y)=>t.jsxs("div",{className:"notice-box__inner",children:[g.title?t.jsx("span",{className:"notice-box__title body-3",children:g.title}):null,t.jsx("div",{className:"notice-box__body",children:g.lines&&g.lines.length?t.jsx("div",{children:g.lines.map((C,f)=>t.jsx("span",{className:"notice-box__line body-3",children:C},f))}):g.children??null})]},y))});const m=e||n.length?t.jsxs("div",{className:"notice-box__inner",children:[e?t.jsx("span",{className:"notice-box__title body-1",children:e}):null,t.jsx("div",{className:"notice-box__body",children:n.length?t.jsx("ul",{children:n.map((g,y)=>t.jsx("li",{className:"notice-box__line",children:g},y))}):r})]}):t.jsx("div",{className:"notice-box__inner",children:r});return t.jsxs("div",{className:h,role:"note",children:[m,i&&t.jsx("button",{type:"button",className:"notice-box__dismiss",onClick:p,"aria-label":c("common.close","\uB2EB\uAE30"),children:"\xD7"})]})}function sr(e,n=!0){s.useEffect(()=>{if(!n)return;const a=e.current;if(!a)return;const r=o=>{if(o.key!=="Tab")return;const i=Array.from(a.querySelectorAll(Nn)).filter(p=>!p.closest('[aria-hidden="true"]'));if(!i.length){o.preventDefault();return}const l=i[0],c=i[i.length-1],u=document.activeElement,d=u===a;o.shiftKey&&(u===l||d)?(o.preventDefault(),c.focus()):!o.shiftKey&&u===c&&(o.preventDefault(),l.focus())};return a.addEventListener("keydown",r),()=>a.removeEventListener("keydown",r)},[e,n])}const Nn='a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])',Pn=[];let xa=!1;function As(e){if(e.key!=="Escape"||e.defaultPrevented)return;const n=Pn[Pn.length-1];n&&(e.stopPropagation(),n())}function Bn(e){return Pn.push(e),!xa&&typeof document<"u"&&(document.addEventListener("keydown",As),xa=!0),()=>{const n=Pn.lastIndexOf(e);n>=0&&Pn.splice(n,1),Pn.length===0&&xa&&typeof document<"u"&&(document.removeEventListener("keydown",As),xa=!1)}}function Cn(e){const{anchorRect:n,anchorEl:a,offset:r=20,edgeMargin:o=20,onClose:i,closeOnOutsideClick:l=!0,className:c="",role:u="dialog",ariaLabel:d="",children:p,backdrop:h=!1,isMobilePopup:m=!1,useBorder:g=!0,header:y}=e||{},C=s.useRef(null),[f,v]=s.useState({position:"fixed",left:0,top:-9999}),[x,_]=s.useState(!1),[b,N]=s.useState("bottom"),[w,k]=s.useState(!1),[j,A]=s.useState(!1),S=!n&&!a,q=s.useCallback(($=!1)=>{if(j&&m)return;const H=a?a.getBoundingClientRect():n;if(!H||!C.current)return;const Q=C.current,{offsetWidth:ee,offsetHeight:Y}=Q,O=window.innerWidth,T=window.innerHeight,M=O-H.right,V=H.left,I=H.top,P=T-H.bottom;let z=0,ae=0,ne="top";if(I>=Y+r)ne="top",ae=H.top-r-Y,z=H.left+H.width/2-ee/2;else if(P>=Y+r)ne="bottom",ae=H.bottom+r,z=H.left+H.width/2-ee/2;else if(M>=ee+r)ne="right",z=H.right+r,ae=H.top+H.height/2-Y/2;else if(V>=ee+r)ne="left",z=H.left-r-ee,ae=H.top+H.height/2-Y/2;else{const Z=Math.max(I,P,M,V);Z===I?(ne="top",ae=H.top-r-Y,z=H.left+H.width/2-ee/2):Z===P?(ne="bottom",ae=H.bottom+r,z=H.left+H.width/2-ee/2):Z===M?(ne="right",z=H.right+r,ae=H.top+H.height/2-Y/2):(ne="left",z=H.left-r-ee,ae=H.top+H.height/2-Y/2)}const re=Number(o)||8;z=Math.min(Math.max(z,re),O-ee-re),ae=Math.min(Math.max(ae,re),T-Y-re);const pe=Math.round(z),_e=Math.round(ae);$&&C.current?(C.current.style.left=`${pe}px`,C.current.style.top=`${_e}px`,C.current.dataset.placement=ne):(N(ne||b),v({position:"fixed",left:pe,top:_e}),k(!0))},[j,m,a,n,r,o,b]);s.useLayoutEffect(()=>{if(S)return;if(j&&m){v({position:"fixed",left:"50%",top:"50%",transform:"translate(-50%, -50%)",width:"calc(100% - 40px)",maxWidth:"calc(100% - 40px)"}),k(!0);return}q();const $=requestAnimationFrame(()=>q());return()=>cancelAnimationFrame($)},[n,a,r,p,o,S,j,m,q]),s.useEffect(()=>{if(S||j&&m||!C.current||typeof ResizeObserver>"u")return;const $=new ResizeObserver(()=>{n&&q()});return $.observe(C.current),()=>$.disconnect()},[n,p,o,S,j,m,q]),s.useEffect(()=>{if(S||j&&m)return;const $=()=>q(!0);return window.addEventListener("resize",$),document.addEventListener("scroll",$,{passive:!0,capture:!0}),()=>{window.removeEventListener("resize",$),document.removeEventListener("scroll",$,{capture:!0})}},[n,r,p,o,S,j,m,q]),s.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const $=window.matchMedia("(max-width: 768px)"),H=()=>A(!!$.matches);H();try{$.addEventListener?$.addEventListener("change",H):$.addListener(H)}catch{try{$.addListener(H)}catch{}}return()=>{try{$.removeEventListener?$.removeEventListener("change",H):$.removeListener(H)}catch{}}},[]);const W=s.useRef(!1),B=s.useCallback(($=!1)=>{if(i&&!(x||W.current)){if(W.current=!0,$){_(!0);try{i&&i()}catch{}return}_(!0),setTimeout(()=>{i&&i()},200)}},[x,i,_]);s.useEffect(()=>{if(S)return;const $=ee=>{const Y=C.current;if(!Y)return;const O=ee.target;if(O&&!Y.contains(O)){try{if(O.closest&&O.closest("[data-tooltip-ignore]"))return}catch{}l&&B(!0)}},H=ee=>{const Y=C.current;if(!Y)return;const O=ee.target;if(O&&!Y.contains(O)){try{if(O.closest&&O.closest("[data-tooltip-ignore]"))return}catch{}l&&B(!0)}},Q=ee=>{if(ee.key==="Tab"){const Y=C.current;if(!Y)return;const O=Y.querySelectorAll(Nn);if(!O||O.length===0)return;const T=O[0],M=O[O.length-1],V=document.activeElement;ee.shiftKey?V===T&&(ee.preventDefault(),M.focus()):V===M&&(ee.preventDefault(),T.focus())}};return document.addEventListener("pointerdown",$,!0),document.addEventListener("click",H,!0),document.addEventListener("keydown",Q),()=>{document.removeEventListener("pointerdown",$,!0),document.removeEventListener("click",H,!0),document.removeEventListener("keydown",Q)}},[i,l,B,S]);const F=s.useRef(B);s.useEffect(()=>{F.current=B});const E=!!i;s.useEffect(()=>{if(!(S||!E))return Bn(()=>F.current())},[S,E]),s.useEffect(()=>{const $=()=>{B(!0)};return typeof document<"u"&&document.addEventListener("speechear-close-tooltips",$),()=>{typeof document<"u"&&document.removeEventListener("speechear-close-tooltips",$)}},[B]);const te=t.jsxs("div",{ref:C,className:`tooltip-content ${S?"tooltip-content--inline":""} ${g?"tooltip-content--bordered":""} ${x?"is-closing":""} ${c} ${j&&m?"is-mobile":""}`,role:u,"aria-label":d||void 0,style:S?{}:{...f,visibility:w?"visible":"hidden"},tabIndex:-1,"data-placement":b,"data-left":S?"":f.left,"data-top":S?"":f.top,"data-anchor-left":n?Math.round(n.left):"","data-anchor-top":n?Math.round(n.top):"","data-anchor-width":n?Math.round(n.width):"","data-anchor-height":n?Math.round(n.height):"",children:[y!=null&&t.jsx("div",{className:"tooltip-content__header h5",children:y}),p]});if(S||typeof document>"u")return te;if(h||j&&m){const $=t.jsxs("div",{className:"tooltip-portal",children:[t.jsx("div",{className:"tooltip-backdrop",onClick:()=>{l&&B(!0)}}),te]});return It.createPortal($,document.body)}return It.createPortal(te,document.body)}function gn(e){const{anchorRect:n,text:a,offset:r=8,onClose:o,className:i="",ariaLabel:l}=e||{};return a?t.jsx(Cn,{anchorRect:n,offset:r,onClose:o,closeOnOutsideClick:!1,className:`tooltip-info ${i}`,ariaLabel:l||a,children:t.jsx("div",{className:"tooltip-info__content body-3",children:a})}):null}function Sn(e){const{t:n}=he.useTranslation(),{anchorRect:a,title:r,items:o,activeIndex:i=-1,showIndex:l=!0,onClose:c,offset:u=12,closeOnOutsideClick:d=!0}=e||{},p=(Array.isArray(o)?o:o?[o]:[]).map(h=>typeof h=="string"?{text:h}:h);return!p.length&&!r?null:t.jsx(Cn,{anchorRect:a,offset:u,onClose:c,closeOnOutsideClick:d,useBorder:!1,className:"tooltip-description",ariaLabel:r||n("tooltip.description","\uC124\uBA85"),children:t.jsxs("div",{className:"tooltip-description__box",children:[r&&t.jsx("span",{className:"tooltip-description__title body-2",children:r}),t.jsx("ol",{className:"tooltip-description__items",children:p.map((h,m)=>t.jsxs("li",{className:`tooltip-description__item body-3${m===i?" tooltip-description__item--active":""}`,children:[l&&p.length>1&&t.jsxs("span",{className:"tooltip-description__index button-1",children:[m+1,"."]}),h.color&&t.jsx("span",{className:"tooltip-description__dot",style:{background:h.color},"aria-hidden":"true"}),t.jsx("span",{children:h.text})]},m))})]})})}function oe(e){const{size:n=48,type:a,htmlType:r,href:o,target:i,rel:l,icon:c,rightIcon:u,label:d,count:p,subLabel:h,children:m,ariaLabel:g,variant:y="default",align:C="center",selected:f,toggleable:v=!1,disabled:x=!1,useLabel:_=!0,useBorder:b=!0,useBG:N=!0,useDisabledCovered:w=!1,useDisabledInvisible:k=!1,width:j,minWidth:A,onClick:S,onDisabledClick:q,showTooltipInfo:W=!1,tooltipInfoText:B=null,tooltipDescription:F=null,tooltipOnly:E=!1,iconSize:te="medium",iconColor:$,shape:H="rounded",color:Q,className:ee,...Y}=e,O=typeof n=="string"&&isNaN(Number(n))?n.toLowerCase():String(Number(n)||48),T=O.match(/^\d+$/)?`button${O}`:`button-${O}`,M=Number(n),V=!isNaN(M)&&M<40?"button-2":"button-1",I=d??m,P=x||!!Y.disabled,z=P?w?"disabled-covered":k?"disabled-invisibled":"disabled":y,ae=z?`button--variant-${z}`:"",ne=C?`button--align-${C}`:"",re=H?`button--shape-${H}`:"",pe=typeof $=="string"&&$.startsWith("--")?`var(${$})`:$,_e={...j?{width:typeof j=="number"?`${j}px`:j}:{},...A?{minWidth:typeof A=="number"?`${A}px`:A}:{},...b?{}:{"--button-border":P?"0":"1px solid transparent"},...pe?{"--button-icon-color":pe}:{},...Q?{"--color-main":Q}:{}},Z=_===!1?"":I,ie=Array.isArray(Z)?Z.length>0:!!Z,J=!!u,be=a??(ie||c||J?"bar":"dot"),xe=`${T}--${be}`,Ce=s.useRef(null),fe=s.useRef(P),[ve,Se]=s.useState(!!f),[X,ue]=s.useState(!1),[ke,Me]=s.useState(null),Fe=s.useCallback(()=>ue(!1),[]);s.useEffect(()=>{typeof f=="boolean"&&Se(f)},[f]),s.useEffect(()=>{if(fe.current&&!P&&Ce.current){const je=Ce.current;let Qe=!1;try{Qe=je.matches(":focus:not(:focus-visible)")}catch{Qe=!1}Qe&&je.blur(),je.style.pointerEvents="none";const ut=requestAnimationFrame(()=>{requestAnimationFrame(()=>{Ce.current&&(Ce.current.style.pointerEvents="")})});return()=>cancelAnimationFrame(ut)}fe.current=P},[P]);const De=typeof f=="boolean"?!!f:ve,Pe=v||typeof f=="boolean"?De?"true":"false":void 0,Le=ye("button",T,xe,ae,ne,re,De?"is-selected":null,N?null:"button--no-bg",E?"button--tooltip-only":null,ee),Je=`button__icon button__icon--${te}`,ze=Array.isArray(h)?h:h!==void 0?[h]:[],He=()=>{if(Array.isArray(Z))return Z.map((Qe,ut)=>{const qe=ze[ut];return t.jsxs("span",{className:`button__label-text${qe!==void 0?" button__label-text--has-sub":""}`,children:[Qe,qe!==void 0&&t.jsx("span",{className:"button__sub-label-text caption-1",children:qe})]},ut)});const je=h!==void 0;return t.jsxs("span",{className:`button__label-text${je?" button__label-text--has-sub":""}`,children:[Z,p!=null&&t.jsx("span",{className:"button__count",children:p}),je&&t.jsx("span",{className:"button__sub-label-text caption-1",children:h})]})},ge=je=>{P||(typeof Y.onMouseLeave=="function"&&Y.onMouseLeave(je),typeof f!="boolean"&&Se(!1),je.currentTarget.blur())},Ve=je=>{if(P){q?.(je);return}typeof f!="boolean"&&v&&Se(Qe=>!Qe),S?.(je)},Be=s.useCallback(()=>{(W||F)&&(ue(!0),Me(Ce.current?.getBoundingClientRect()??null))},[W,F]),Ee=s.useCallback(()=>{(W||F)&&(ue(!1),Me(null))},[W,F]),Ne={...Y};delete Ne.disabled,delete Ne.className,delete Ne.faded,delete Ne.useFaded,delete Ne.loading,delete Ne.onMouseLeave,delete Ne.onPointerEnter,delete Ne.onPointerLeave,delete Ne.onFocus,delete Ne.onBlur,P&&(Object.keys(Ne).forEach(je=>{/^on[A-Z]/.test(je)&&typeof Ne[je]=="function"&&delete Ne[je]}),Ne["aria-disabled"]="true");const nt=(typeof W=="string"?W:null)??(typeof B=="string"?B:null)??(typeof g=="string"?g:null)??(typeof I=="string"?I:null)??void 0,ft=typeof g=="string"?g:typeof I=="string"?I:nt,tt=(je,Qe)=>t.jsx(Oe,{icon:je,label:Qe??ft,className:Je,imgClassName:"button__icon-img",maskClassName:"button__icon-mask",svgClassName:"button__icon-svg"}),rt=()=>be==="dot"?t.jsxs(t.Fragment,{children:[tt(c),ie&&t.jsx("span",{className:`button__label ${V}`,children:He()})]}):C==="center"&&c?t.jsxs(t.Fragment,{children:[t.jsxs("span",{className:"button__center-group",children:[t.jsx("span",{className:"button__left",children:tt(c)}),ie&&t.jsx("span",{className:`button__label ${V}`,children:He()})]}),J&&t.jsx("span",{className:"button__right",children:tt(u)})]}):t.jsxs(t.Fragment,{children:[c&&t.jsx("span",{className:"button__left",children:tt(c,g??I)}),ie&&t.jsx("span",{className:`button__label ${V}`,children:He()}),J&&t.jsx("span",{className:"button__right",children:tt(u)})]}),Ke=!!o&&!P;return t.jsxs(t.Fragment,{children:[t.jsx(Ke?"a":"button",{...Ne,ref:Ce,...Ke?{href:o,target:i,rel:l??(i==="_blank"?"noreferrer":void 0)}:{type:r,disabled:P&&!q},className:Le,"aria-pressed":Pe,"aria-label":ft,"aria-disabled":P&&(Ke||q)?!0:void 0,style:_e,onClick:Ve,onMouseLeave:ge,onPointerEnter:je=>{Be(),!P&&typeof Y.onPointerEnter=="function"&&Y.onPointerEnter(je)},onPointerLeave:je=>{Ee(),!P&&typeof Y.onPointerLeave=="function"&&Y.onPointerLeave(je)},onFocus:je=>{Be(),!P&&typeof Y.onFocus=="function"&&Y.onFocus(je)},onBlur:je=>{ge(je),Ee(),!P&&typeof Y.onBlur=="function"&&Y.onBlur(je)},children:rt()}),X&&F?t.jsx(Sn,{anchorRect:ke,title:F.title,items:F.items,onClose:Fe}):X&&nt?t.jsx(gn,{anchorRect:ke,text:nt,onClose:Fe}):null]})}function st(e,n,a){const r=s.useRef(null);return s.useLayoutEffect(()=>{const o=r.current?.parentElement??null;return n(o,e),()=>a(o)},[e,n,a]),r}const ta={title:"--promo-banner-bg-title",description:"--promo-banner-bg-description"},ir=new WeakMap;function lr(e){if(e)return ir.get(e)}function wt(e,n){e&&(e.style.setProperty(ta.title,n.title),e.style.setProperty(ta.description,n.description),ir.set(e,n))}function kt(e){e&&(e.style.removeProperty(ta.title),e.style.removeProperty(ta.description),ir.delete(e))}const Ns={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"default"};function Bs(){const e=st(Ns,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-main","aria-hidden":"true"})}const Ss={title:"var(--color-main)",description:"var(--color-gray)",actionVariant:"main"};function Ds(){const e=st(Ss,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft","aria-hidden":"true"})}const js={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Ts(){const e=st(js,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-sub","aria-hidden":"true"})}const Es={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Ms(){const e=st(Es,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-deep","aria-hidden":"true"})}const Ls={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function $s(){const e=st(Ls,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft-sub","aria-hidden":"true"})}const Rs={title:"var(--color-black)",description:"var(--color-darkGray)",actionVariant:"main"};function Ps(){const e=st(Rs,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-warm","aria-hidden":"true"})}const Is={title:"var(--color-white)",description:"var(--color-lightGray)",actionVariant:"main"};function Fs(){const e=st(Is,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dark","aria-hidden":"true"})}const Os={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Hs(){const e=st(Os,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-radial","aria-hidden":"true"})}const Vs={title:"var(--color-darkMain)",description:"var(--color-gray)",actionVariant:"main"};function zs(){const e=st(Vs,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-diagonal","aria-hidden":"true"})}const Ws={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function qs(){const e=st(Ws,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dots","aria-hidden":"true"})}const Us={title:"var(--color-black)",description:"var(--color-gray)",actionVariant:"main"};function Gs(){const e=st(Us,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-outline","aria-hidden":"true",children:t.jsx("span",{className:"promo-banner-bg-outline__dot"})})}const Ks={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Ys(){const e=st(Ks,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-success","aria-hidden":"true"})}const Zs={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"sub"};function Xs(){const e=st(Zs,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-naver","aria-hidden":"true"})}const Js={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"transparent-white"};function Qs(){const e=st(Js,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-instagram","aria-hidden":"true"})}const F0=[{key:"main",label:"\uBA54\uC778 \uADF8\uB77C\uB514\uC5B8\uD2B8",textTone:"light"},{key:"soft",label:"\uC18C\uD504\uD2B8",textTone:"dark"},{key:"sub",label:"\uC11C\uBE0C \uCEEC\uB7EC",textTone:"light"},{key:"deep",label:"\uB525 \uADF8\uB77C\uB514\uC5B8\uD2B8",textTone:"light"},{key:"softSub",label:"\uC18C\uD504\uD2B8 \uC11C\uBE0C",textTone:"dark"},{key:"warm",label:"\uC6DC(\uAC15\uC870)",textTone:"dark"},{key:"dark",label:"\uB2E4\uD06C",textTone:"light"},{key:"radial",label:"\uBC29\uC0AC\uD615 \uADF8\uB77C\uB514\uC5B8\uD2B8",textTone:"light"},{key:"diagonal",label:"\uB300\uAC01\uC120 \uD328\uD134",textTone:"dark"},{key:"dots",label:"\uB3C4\uD2B8 \uD328\uD134",textTone:"dark"},{key:"outline",label:"\uC544\uC6C3\uB77C\uC778",textTone:"dark"},{key:"success",label:"\uC131\uACF5/\uC644\uB8CC",textTone:"light"},{key:"naver",label:"\uB124\uC774\uBC84 \uBE14\uB85C\uADF8 \uC548\uB0B4",textTone:"light"},{key:"instagram",label:"\uC778\uC2A4\uD0C0\uADF8\uB7A8 \uC548\uB0B4",textTone:"light"}],ei={main:Bs,soft:Ds,sub:Ts,deep:Ms,softSub:$s,warm:Ps,dark:Fs,radial:Hs,diagonal:zs,dots:qs,outline:Gs,success:Ys,naver:Xs,instagram:Qs};function ti({storageKey:e="fontScale",baseFont:n=20,minScale:a=.8,maxScale:r=1.4,step:o=.1,lineHeightRatio:i=1.4}={}){const l=_=>Math.max(a,Math.min(r,Number(_))),c=_=>{try{const b=localStorage.getItem(_),N=b?Number(b):1;return Number.isFinite(N)?l(N):l(1)}catch{return l(1)}},[u,d]=s.useState(()=>c(e)),[p,h]=s.useState(e);p!==e&&(h(e),d(c(e))),s.useEffect(()=>{try{localStorage.setItem(e,String(u))}catch{}},[e,u]);const m=_=>{d(typeof _=="function"?b=>l(_(b)):l(_))},g=()=>m(_=>+(_+o).toFixed(6)),y=()=>m(_=>+(_-o).toFixed(6)),C=u<r-Number.EPSILON,f=u>a+Number.EPSILON,v=Math.round(n*u),x=Math.round(v*i);return{scale:u,setScale:m,increase:g,decrease:y,canIncrease:C,canDecrease:f,fontSize:v,lineHeight:x}}const ni=s.createContext(null);function O0(e){return/max-width:\s*7[0-9][0-9]px/.test(e)}const ai=e=>typeof window>"u"||!window.matchMedia?!1:window.matchMedia(e).matches;function H0(e){const n=s.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 uo.useSyncExternalStore(n,()=>ai(e),()=>!1)}function V0(e){const[n,a]=s.useState(ai(e));return s.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const r=window.matchMedia(e),o=l=>a(l.matches),i=r;return i.addEventListener?i.addEventListener("change",o):i.addListener&&i.addListener(o),a(r.matches),()=>{i.removeEventListener?i.removeEventListener("change",o):i.removeListener&&i.removeListener(o)}},[e]),n}const z0=typeof uo.useSyncExternalStore=="function"?H0:V0;function Xt(e){const n=s.useContext(ni),a=z0(e);return n&&typeof n.mobile=="boolean"&&O0(e)?n.mobile:a}function cr(e){const n=s.useRef(e);return s.useEffect(()=>{n.current=e}),n}function ri(e,n){const a=cr(n);s.useEffect(()=>{const r=()=>a.current();try{window.addEventListener(e,r)}catch{}return()=>{try{window.removeEventListener(e,r)}catch{}}},[e,a])}const ur=" \xB7 ",oi=(()=>{if(typeof document>"u")return"";const e=document.title;return e.includes(ur)?e.split(ur).pop()??e:e})(),W0=s.createContext(!1),Dn=[];let si=null;function q0(e){const n=s.useContext(W0);s.useEffect(()=>{if(n||typeof e!="string"||!e)return;Dn.length===0&&(si=document.title);const a={text:oi?`${e}${ur}${oi}`:e};return Dn.push(a),document.title=a.text,()=>{const r=Dn.lastIndexOf(a);r>=0&&Dn.splice(r,1),document.title=Dn.length?Dn[Dn.length-1].text:si??document.title}},[e,n])}const ii=[{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"}];function U0(e,n,a){const{t:r}=he.useTranslation(),[o,i]=s.useState(()=>{const y=a?.initialPageSize;return y&&ii.some(C=>C.value===y)?y:"25"}),[l,c]=s.useState(1),[u,d]=s.useState(n);u!==n&&(d(n),l!==1&&c(1));const p=s.useMemo(()=>ii.map(y=>({...y,label:r("visits.showN",{n:y.value})})),[r]),h=s.useCallback(y=>{i(y),c(1)},[]),m=Math.max(1,Math.ceil(e.length/Number(o)));l>m&&c(m);const g=Math.min(l,m);return{pageRows:s.useMemo(()=>e.slice((g-1)*Number(o),g*Number(o)),[e,g,o]),pageSizeProps:{options:p,value:o,onChange:h},paginationProps:{page:g,total:m,onChange:c},setPage:c}}function G0(){const[e,n]=s.useState(null),a=s.useCallback(o=>{n(i=>i?.key===o?{key:o,asc:!i.asc}:{key:o,asc:!0})},[]),r=s.useCallback((o,i)=>({label:o,sortDir:e?.key===i?e.asc?"asc":"desc":null,onClick:()=>a(i)}),[e,a]);return{\uC815\uB82C:e,\uCE78:r}}const Jt="\uC804\uCCB4";Object.fromEntries(Object.entries(a0).map(([e,{nucleus:n}])=>[e,n]));const K0={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"})},Y0={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"})},Z0={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 X0(e,n){if("place"in n)return K0[n.place](e);const a=Y0[n.vowel](e);return n.glide?`${a} \xB7 ${Z0[n.glide](e)}`:a}const J0=(e,{defaultValue:n})=>n,li=(e,n)=>({jamos:e,phonetic:n,tooltip:X0(J0,n)}),rn=(e,n)=>n.map(a=>li([a],{place:e})),Ct=(e,n,a)=>li([...e],a?{vowel:n,glide:a}:{vowel:n}),dr={cho:[rn("labial",["\u3142","\u3143","\u314D","\u3141"]),rn("alveolar",["\u3137","\u3138","\u314C","\u3134","\u3139"]),rn("alveolar",["\u3145","\u3146"]),rn("palatal",["\u3148","\u3149","\u314A"]),rn("velar",["\u3131","\u3132","\u314B"]),rn("glottal",["\u314E"])],jung:[[Ct("\u3163","frontHigh"),Ct("\u315F","frontHigh","w"),Ct("\u3162","frontHigh","velar")],[Ct("\u3161","backHighUnrounded")],[Ct("\u315C","backHighRounded"),Ct("\u3160","backHighRounded","j")],[Ct("\u3154\u3150","frontMid"),Ct("\u3156\u3152","frontMid","j"),Ct("\u3159\u315A\u315E","frontMid","w")],[Ct("\u3153","backMidUnrounded"),Ct("\u3155","backMidUnrounded","j"),Ct("\u315D","backMidUnrounded","w")],[Ct("\u3157","backMidRounded"),Ct("\u315B","backMidRounded","j")],[Ct("\u314F","low"),Ct("\u3151","low","j"),Ct("\u3158","low","w")]],jong:[rn("labial",["\u3142","\u3141"]),rn("alveolar",["\u3137","\u3134","\u3139"]),rn("velar",["\u3131","\u3147"])]},Q0=e=>e===e2?[]:Array.from(e),e2="__NO_CODA__",pr=e=>e.map(n=>n.map(({jamos:a,phonetic:r,tooltip:o})=>({v:a.join(""),phonetic:r,tooltip:o}))),ci={cho:pr(dr.cho),jung:pr(dr.jung),jong:pr(dr.jong)};ci.jung.flat().forEach(({v:e})=>{for(const n of Q0(e));}),new Set(ci.cho.flat().map(e=>e.v));function t2(e,n=!0){const a=cr(e);s.useEffect(()=>{if(n)return Bn(()=>{a.current?.()})},[n,a])}function _a(){const[e,n]=s.useState(null),a=s.useCallback(i=>n(i.getBoundingClientRect()),[]),r=s.useCallback(()=>n(null),[]),o=s.useCallback(i=>{const l=i.getBoundingClientRect();n(c=>c?null:l)},[]);return{anchorRect:e,isOpen:e!=null,openAt:a,close:r,toggleAt:o}}function ui(e="warning"){const[n,a]=s.useState(""),[r,o]=s.useState(e),[i,l]=s.useState(0),c=s.useCallback((h,m)=>{o(m),a(h),l(g=>g+1)},[]),u=s.useCallback(h=>c(h,"warning"),[c]),d=s.useCallback(h=>c(h,"normal"),[c]),p=s.useCallback(()=>a(""),[]);return{toastMessage:n,toastType:r,toastKey:i,showToast:c,showWarning:u,showNormal:d,clearToast:p}}function na({computeStyle:e,onScroll:n="close",onResize:a="close",ignoreOutsideClickSelector:r}){const[o,i]=s.useState(!1),[l,c]=s.useState({}),u=s.useRef(null),d=s.useRef(null),p=s.useCallback(()=>{u.current&&c(e(u.current.getBoundingClientRect()))},[e]);s.useEffect(()=>{if(!o)return;p();const g=f=>{const v=f.target;r&&v.closest?.(r)||u.current?.contains(v)||d.current?.contains(v)||i(!1)};document.addEventListener("mousedown",g);const y=f=>{d.current?.contains(f.target)||(n==="reposition"?p():n==="close"&&i(!1))};n!=="ignore"&&window.addEventListener("scroll",y,!0);const C=()=>{a==="reposition"?p():a==="close"&&i(!1)};return a!=="ignore"&&window.addEventListener("resize",C),()=>{document.removeEventListener("mousedown",g),n!=="ignore"&&window.removeEventListener("scroll",y,!0),a!=="ignore"&&window.removeEventListener("resize",C)}},[o,p,n,a,r]),s.useEffect(()=>{if(o)return Bn(()=>i(!1))},[o]);const h=s.useCallback(()=>i(g=>!g),[]),m=s.useCallback(()=>i(!1),[]);return{open:o,setOpen:i,toggle:h,close:m,style:l,triggerRef:u,menuRef:d}}function n2(e,{mode:n="playback",autoStart:a=!1,onPlaySpeaker:r,onComplete:o,playMs:i=1100,feedbackMs:l=1500}={}){const[c,u]=s.useState([]),[d,p]=s.useState(0),[h,m]=s.useState("idle"),[g,y]=s.useState(null),[C,f]=s.useState([]),[v,x]=s.useState(null),[_,b]=s.useState(0),N=s.useRef(0),w=s.useCallback(O=>{N.current=typeof O=="function"?O(N.current):O,b(N.current)},[]),k=s.useRef(r),j=s.useRef(o);s.useEffect(()=>{k.current=r,j.current=o},[r,o]);const A=s.useRef([]),S=()=>{A.current.forEach(clearTimeout),A.current=[]},q=(O,T)=>{A.current.push(setTimeout(T,O))};s.useEffect(()=>()=>S(),[]);const W=c[d]?.id??null,B=s.useRef(null),F=s.useCallback(()=>{S(),m("playing"),f([]),x(null),w(0);let O=0;e.forEach((T,M)=>{q(O,()=>{p(M),y(T.id),k.current?.(T)}),q(O+1e3,()=>{y(null),f(V=>[...V,T.id])}),O+=1300}),q(O,()=>{m("done"),j.current?.({score:0,total:e.length})})},[e,w]),E=s.useCallback((O,T)=>{if(T>=O.length){m("done"),j.current?.({score:N.current,total:O.length});return}B.current=null,p(T),x(null),m("playing"),y(O[T].id),k.current?.(O[T]),q(i,()=>{y(null),m("waiting")})},[i]),te=s.useCallback(()=>{S();const O=Qn(e);u(O),w(0),f([]),E(O,0)},[e,E,w]),$=s.useCallback(()=>{n==="playback"?(u(e),F()):te()},[n,e,F,te]),H=s.useCallback(()=>{S(),m("idle"),y(null),f([]),x(null),p(0),w(0),u([])},[w]),Q=e.map(O=>O.id).join("|");s.useEffect(()=>(a?$():H(),()=>S()),[n,Q,a]);const ee=s.useCallback(O=>{h!=="waiting"||n==="playback"||B.current===d||(B.current=d,x(O),O===c[d]?.id&&w(T=>T+1),n==="exam"?(m("playing"),q(400,()=>E(c,d+1))):(m("feedback"),q(l,()=>E(c,d+1))))},[h,n,c,d,E,l,w]),Y=n==="playback"?e.length:c.length;return{bind:{activeSpeakerId:g,playedIds:C,selectedId:v,answerId:W,showFeedback:h==="feedback",clickable:h==="waiting",onSelectSpeaker:ee},index:d,total:Y,score:_,phase:h,done:h==="done",start:$,reset:H}}function a2({title:e,description:n,actionLabel:a,onAction:r,bg:o,color:i,size:l="medium",actionVariant:c,titleColor:u,descriptionColor:d,className:p=""}){const h=o??i??"main",m=s.useRef(null),[g,y]=s.useState("main"),C=Xt("(max-width: 767px)"),f=s.useRef({title:!1,description:!1});s.useLayoutEffect(()=>{const _=m.current;if(!_)return;const b=lr(_),N=(w,k,j)=>{if(j!==void 0)_.style.setProperty(k,j),f.current[w]=!0;else if(f.current[w]){const A=b?.[w];A?_.style.setProperty(k,A):_.style.removeProperty(k),f.current[w]=!1}};N("title","--promo-banner-bg-title",u),N("description","--promo-banner-bg-description",d)},[u,d,h]),s.useLayoutEffect(()=>{const _=m.current;if(!_)return;const b=lr(_);y(b?.actionVariant??"main")},[h]);const v=ye("promo-banner",`promo-banner--${l}`,p),x=ei[h];return t.jsxs("div",{ref:m,className:v,role:"note",children:[t.jsx(x,{}),t.jsxs("div",{className:"promo-banner__text",children:[t.jsx("span",{className:`promo-banner__title ${l==="small"?"body-2":"h2"}`,children:e}),n&&t.jsx("span",{className:"promo-banner__description body-3",children:n})]}),a&&r&&t.jsx(oe,{htmlType:"button",size:40,variant:c??g,shape:"pill",useBorder:!0,onClick:r,ariaLabel:a,...C?{type:"dot",icon:"arrow-right"}:{rightIcon:"arrow-right",label:a,minWidth:140}})]})}function r2({children:e,interval:n=5e3,dotTone:a,className:r="","aria-label":o}){const{t:i}=he.useTranslation(),l=o??i("topBanner.ariaLabel","\uBC30\uB108"),c=s.Children.toArray(e),u=c.length,[d,p]=s.useState(0),[h,m]=s.useState(!1),g=u>0?d%u:0;return s.useEffect(()=>{if(u<2||n<=0||h)return;const y=window.setInterval(()=>p(C=>(C+1)%u),n);return()=>window.clearInterval(y)},[u,n,h]),u===0?null:t.jsxs("section",{className:ye("top-banner",r),"aria-label":l,"aria-roledescription":"carousel",onMouseEnter:()=>m(!0),onMouseLeave:()=>m(!1),onFocus:()=>m(!0),onBlur:()=>m(!1),children:[t.jsx("div",{className:"top-banner__viewport",children:t.jsx("div",{className:"top-banner__track",style:{transform:`translateX(-${g*100}%)`},children:c.map((y,C)=>t.jsx("div",{className:"top-banner__slide","aria-hidden":C!==g,...C!==g?{inert:!0}:{},children:y},C))})}),u>1&&t.jsx("div",{className:`top-banner__dots${(a?.[g]??"light")==="dark"?" top-banner__dots--dark":""}`,children:c.map((y,C)=>t.jsx("button",{type:"button",className:`top-banner__dot${C===g?" top-banner__dot--active":""}`,"aria-label":i("topBanner.dotAriaLabel",{count:u,index:C+1,defaultValue:`${u}\uAC1C \uC911 ${C+1}\uBC88\uC9F8 \uBC30\uB108`}),"aria-current":C===g,onClick:()=>p(C)},C))})]})}function o2({title:e,body:n,open:a=!1,onToggle:r,avatar:o,titleClassName:i="body-2",bodyClassName:l="body-2",className:c=""}){const{t:u}=he.useTranslation();return t.jsxs("div",{className:`accordion-item ${a?"accordion-item--open":""} ${c}`.trim(),role:"listitem",children:[t.jsxs("div",{className:"accordion-item__header",role:"button",tabIndex:0,"aria-expanded":a,"data-accordion-header":!0,onClick:r,onKeyDown:d=>{if(d.key==="Enter"||d.key===" ")d.preventDefault(),r?.();else if(d.key==="ArrowDown"||d.key==="ArrowUp"){d.preventDefault();const p=d.currentTarget.closest('[role="list"]');if(!p)return;const h=Array.from(p.querySelectorAll("[data-accordion-header]")),m=h.indexOf(d.currentTarget);(d.key==="ArrowDown"?h[m+1]:h[m-1])?.focus()}},children:[o&&t.jsx("div",{className:"accordion-item__avatar",children:o}),t.jsx("div",{className:`accordion-item__title ${i}`,children:e}),t.jsx("div",{className:"accordion-item__chevron",children:t.jsx(Oe,{icon:a?"chevron-up":"chevron-down",label:a?u("accordion.collapse","\uC811\uAE30"):u("accordion.expand","\uD3BC\uCE58\uAE30"),className:"accordion-item__chevron-icon",imgClassName:"accordion-item__chevron-image"})})]}),a&&t.jsx("div",{className:`accordion-item__body ${l}`,children:typeof n=="string"?t.jsx("p",{children:n}):n})]})}function s2({items:e=[],defaultOpenIndex:n=0,size:a=72,className:r="",bodyClassName:o}){const[i,l]=s.useState(n);return t.jsx("div",{className:`accordion-group accordion-group--s${a} ${r}`.trim(),role:"list",children:e.map((c,u)=>t.jsx(o2,{title:c.title,body:c.body,avatar:c.avatar,open:u===i,onToggle:()=>l(u===i?-1:u),bodyClassName:o},u))})}function i2(){return t.jsx("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:t.jsx("polyline",{points:"2,6 5,9 10,3"})})}function l2(){return t.jsxs("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round","aria-hidden":"true",children:[t.jsx("line",{x1:"3",y1:"3",x2:"9",y2:"9"}),t.jsx("line",{x1:"9",y1:"3",x2:"3",y2:"9"})]})}function c2(){return t.jsx("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round","aria-hidden":"true",children:t.jsx("line",{x1:"2.5",y1:"6",x2:"9.5",y2:"6"})})}function it(e){const{t:n}=he.useTranslation(),{type:a="bar",size:r,className:o="","aria-label":i,"aria-hidden":l}=e;if(a==="dot"){const{icon:N,number:w,position:k="top-right",onClick:j,animate:A=!1}=e,S=N??"check",q=w!==void 0?"number":S,W=typeof r=="number"?r:32,B=ye("circle-badge",`circle-badge--${q}`,`circle-badge--${k}`,`circle-badge--${W}`,A?"circle-badge--animate":"",j?"circle-badge--clickable":"",o),F=w!==void 0?n("badge.nthSelected",{n:w,defaultValue:"{{n}}\uBC88\uC9F8 \uC120\uD0DD"}):{check:n("badge.selected","\uC120\uD0DD\uB428"),remove:n("badge.remove","\uC81C\uAC70"),minus:n("badge.exclude","\uC81C\uC678")}[S];return t.jsxs("span",{className:B,onClick:j,onKeyDown:j?E=>{E.key!=="Enter"&&E.key!==" "||(E.preventDefault(),E.currentTarget.click())}:void 0,"aria-label":l?void 0:i??F,"aria-hidden":l||void 0,role:j?"button":void 0,tabIndex:j?0:void 0,children:[w!==void 0&&w,w===void 0&&S==="check"&&t.jsx(i2,{}),w===void 0&&S==="remove"&&t.jsx(l2,{}),w===void 0&&S==="minus"&&t.jsx(c2,{})]})}const{label:c,children:u,variant:d="default",fill:p="filled",minWidth:h,iconLeft:m,iconRight:g,color:y}=e,C=typeof r=="number"?"medium":r??"medium",f={small:"caption-2b",medium:"body-3b",large:"body-2b"}[C]??"body-2b",v={small:12,medium:14,large:16}[C]??14,x=ye("badge",`badge--${d}`,`badge--${C}`,p!=="filled"?`badge--${p}`:"",f,o),_=y?.startsWith("--")?`var(${y})`:y,b=h!==void 0||_?{...h!==void 0?{minWidth:typeof h=="number"?`${h}px`:h}:{},..._?{"--badge-color":_}:{}}:void 0;return t.jsxs("span",{className:x,style:b,"aria-label":l?void 0:i,role:i&&!l?"img":void 0,"aria-hidden":l||void 0,children:[m&&t.jsx(Oe,{icon:m,size:v,className:"badge__icon"}),c??u,g&&t.jsx(Oe,{icon:g,size:v,className:"badge__icon"})]})}function wa({columns:e=[],onClose:n,className:a="",size:r="medium"}){const{t:o}=he.useTranslation(),i=r==="small"?40:48,[l,c]=s.useState([]),u=s.useMemo(()=>{const f=[{title:null,columns:e}];let v=e;for(const x of l){const _=v?.[x.ci]?.items?.[x.ii];if(!_||!Array.isArray(_.children)||!_.children.length)break;v=[{title:null,items:_.children}],f.push({title:_.label||null,columns:v})}return f},[e,l]),d=u[u.length-1],p=u.length-1,h=s.useCallback(()=>c(f=>f.slice(0,Math.max(0,Math.min(f.length,p)-1))),[p]),m=s.useRef(null),g=s.useRef(null),y=u.length;s.useEffect(()=>{g.current||(g.current=document.activeElement);let f=0,v=0;const x=()=>{const _=m.current?.querySelector("button:not([disabled])");if(_&&_.offsetParent){_.focus({preventScroll:!0});return}v++<20&&(f=requestAnimationFrame(x))};return f=requestAnimationFrame(x),()=>cancelAnimationFrame(f)},[y]),s.useEffect(()=>()=>{g.current?.focus?.({preventScroll:!0})},[]);const C=s.useCallback((f,v,x)=>{if(f){if(Array.isArray(f.children)&&f.children.length){c(_=>[..._.slice(0,p),{ci:v,ii:x}]);return}try{typeof f.onClick=="function"&&f.onClick()}catch{}try{f&&f.closeOnSelect&&typeof n=="function"&&n()}catch{}}},[n,p]);return t.jsxs("div",{className:`tooltip-menu tooltip-menu--${r} ${a}`,children:[(u.length>1||d.title)&&t.jsxs("div",{className:"tooltip-menu__header",children:[u.length>1?t.jsx(oe,{htmlType:"button",size:i,type:"dot",icon:"chevron-left",ariaLabel:o("common.back","\uB4A4\uB85C"),onClick:h,variant:"transparent-gray",useBorder:!1}):null,t.jsx("div",{className:"tooltip-menu__title button-1",children:d.title})]}),t.jsx("div",{className:"tooltip-menu__columns",ref:m,children:d.columns&&d.columns.map((f,v)=>t.jsxs("div",{className:"tooltip-menu__column",children:[f.title?t.jsx("div",{className:"tooltip-menu__column-title body-3",children:f.title}):null,t.jsx("div",{className:"tooltip-menu__items",children:(f.items||[]).map((x,_)=>t.jsx(oe,{htmlType:"button",className:"tooltip-menu__item",size:i,type:x.label?"bar":"dot",icon:x.selected?"check":x.icon||"none",rightIcon:Array.isArray(x.children)&&x.children.length?"chevron-right":x.badgeCount?t.jsx(it,{type:"dot",position:"inline",number:Math.min(x.badgeCount,99),size:24,"aria-hidden":!0}):void 0,label:x.label,ariaLabel:x.label&&x.badgeCount&&x.badgeCount>0?o("nav.badgeLabel",{label:x.label,count:x.badgeCount,defaultValue:"{{label}}, {{count}}\uAC1C"}):x.label,onClick:()=>C(x,v,_),selected:x.selected,disabled:x.disabled,showTooltipInfo:x.tooltip||!1,useBorder:!1,align:"left"},_))})]},v))})]})}const u2=52,di=10,pi=e=>e&&e>0?e:0;function hi({items:e=[],activeKey:n,onChange:a,appMode:r,onAppModeChange:o,moreItems:i=[]}){const{t:l}=he.useTranslation(),c=r==="manager"?"malgwi":"manager",u=r==="manager"?"arrow-left":"arrow-right",d=r==="manager"?l("nav.modeLabelMalgwi","\uB9D0\uADC0"):l("nav.modeLabelManager","\uB9D0\uADC0 \uB9E4\uB2C8\uC800"),p=s.useRef(null),[h,m]=s.useState(0),g=e.length;s.useEffect(()=>{const $=p.current;if(!$||(m($.clientWidth),typeof ResizeObserver>"u"))return;const H=new ResizeObserver(Q=>m(Q[0].contentRect.width));return H.observe($),()=>H.disconnect()},[]);const y=h>0?Math.floor((h+di)/(u2+di)):g,C=h>0&&y<g,f=C?y:g,v=e.slice(0,f),x=e.slice(f),_=C||i.length>0,b=s.useCallback($=>({position:"fixed",bottom:window.innerHeight-$.top+8,right:window.innerWidth-$.right,zIndex:1e4}),[]),N=s.useId(),{open:w,toggle:k,close:j,style:A,triggerRef:S,menuRef:q}=na({computeStyle:b,onScroll:"ignore",onResize:"ignore"}),W=s.useCallback(($,H)=>H>0?l("nav.badgeLabel",{label:$,count:H,defaultValue:"{{label}}, {{count}}\uAC1C"}):$,[l]),B=s.useCallback(()=>o?.(c),[o,c]),F=s.useMemo(()=>x.find($=>$.key===n)??i.find($=>$.selected||$.key&&$.key===n),[x,n,i]),E=s.useMemo(()=>[{items:[...x.map($=>({label:$.label,icon:$.icon,badgeCount:$.badgeCount,selected:$.key===n,closeOnSelect:!0,onClick:()=>{$.key&&a&&a($.key),j()}})),...i.map($=>({label:$.label,icon:$.icon,badgeCount:$.badgeCount,selected:$.selected??(!!$.key&&$.key===n),closeOnSelect:!0,onClick:()=>{$.onClick?.(),j()}}))]}],[x,i,n,a,j]),te=[...x,...i].reduce(($,H)=>$+pi(H.badgeCount),0);return t.jsxs("nav",{className:"bottom-nav","aria-label":l("nav.bottomNav","\uD558\uB2E8 \uB124\uBE44\uAC8C\uC774\uC158"),children:[o&&t.jsxs(t.Fragment,{children:[t.jsx("div",{className:"bottom-nav__left",children:t.jsx(oe,{htmlType:"button",size:52,type:"dot",icon:u,ariaLabel:d,className:"bottom-nav-item",onClick:B})}),t.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"})]}),t.jsx("div",{className:"bottom-nav__items",ref:p,children:v.map($=>{const H=pi($.badgeCount);return t.jsxs("span",{className:"bottom-nav__slot",children:[t.jsx(oe,{htmlType:"button",size:52,type:"dot",icon:$.icon,ariaLabel:W($.label,H),selected:$.key===n,disabled:$.state==="disabled",className:"bottom-nav-item",onClick:()=>$.key&&a?.($.key)}),H>0&&t.jsx("span",{"aria-hidden":"true",children:t.jsx(it,{type:"dot",position:"top-right",number:Math.min(H,99),size:24})})]},$.key)})}),_&&t.jsxs(t.Fragment,{children:[t.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"}),t.jsx("div",{className:"bottom-nav__right",children:t.jsxs("div",{ref:S,className:"bottom-nav__slot",children:[t.jsx(oe,{htmlType:"button",size:52,type:"dot",icon:F?.icon??"ellipsis",ariaLabel:W(F?.label??l("nav.more","\uB354\uBCF4\uAE30"),te),selected:!!F,className:"bottom-nav-item",onClick:k,"aria-expanded":w,"aria-controls":w?N:void 0}),te>0&&t.jsx("span",{"aria-hidden":"true",children:t.jsx(it,{type:"dot",position:"top-right",number:Math.min(te,99),size:24})}),w&&It.createPortal(t.jsx("div",{id:N,role:"group","aria-label":l("nav.moreMenu","\uB354\uBCF4\uAE30 \uBA54\uB274"),className:"tooltip-content",style:A,ref:q,children:t.jsx(wa,{columns:E,onClose:j})}),document.body)]})})]})]})}function mi(e,n,a){return a&&a>0?e("nav.badgeLabel",{label:n,count:a,defaultValue:"{{label}}, {{count}}\uAC1C"}):n}function d2(e){const{t:n}=he.useTranslation(),{activeKey:a,unreadCount:r,onDebug:o,onNotification:i,onSetting:l,onHelp:c,onAccount:u}=e||{},d="default";return o||i||l||c||u?t.jsxs("div",{className:"side-nav__footer",children:[o&&t.jsx(oe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:d,icon:"terminal",ariaLabel:n("nav.debug","\uB514\uBC84\uADF8"),onClick:o,selected:a==="debug"}),i&&t.jsxs("span",{className:"side-nav__notification-wrap",children:[t.jsx(oe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:d,icon:"bell",ariaLabel:mi(n,n("nav.notifications","\uC54C\uB9BC"),r),onClick:i,selected:a==="notifications"}),!!r&&r>0&&t.jsx(it,{type:"dot",number:Math.min(r,99),size:24,"aria-hidden":!0})]}),l&&t.jsx(oe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:d,icon:"settings",ariaLabel:n("nav.settings","\uC124\uC815"),onClick:l,selected:a==="settings"}),c&&t.jsx(oe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:d,icon:"message-circle-question-mark",ariaLabel:n("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:c,selected:a==="help"}),u&&t.jsx(oe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:d,icon:"user-round",ariaLabel:n("nav.account","\uACC4\uC815"),onClick:u,selected:a==="account"})]}):null}function fi(e){const{t:n}=he.useTranslation(),{item:a,itemKey:r,label:o,icon:i,active:l,onClick:c,style:u,state:d,labelStyle:p}=e||{},h=a?.key??r??"",m=a?.label??o??"",g=a?.icon??i??"",y=a?.badge??0,C=t.jsx("span",{className:"side-nav__icon-wrap",children:t.jsx(Oe,{icon:g,label:typeof m=="string"?m:void 0,className:"side-nav__icon",maskClassName:"side-nav__icon-image",imgClassName:void 0,svgClassName:void 0})}),f=d==="disabled",v=`side-nav__item ${l?"active":""} ${d||""} ${f?"disabled":""} ${a?.child?"side-nav__item--child":""}`,x=s.useCallback(_=>{if(f)return;const b=_.detail>0;if(b)try{_.currentTarget.blur()}catch{}c?.(h,_.currentTarget,b)},[f,h,c]);return t.jsxs("button",{type:"button",className:v,onClick:x,"aria-label":typeof m=="string"?mi(n,m,y):void 0,style:u,"aria-disabled":f,children:[C,t.jsx("span",{className:"side-nav__label button-1 f",style:p,children:m}),y>0&&t.jsx(it,{type:"dot",position:"inline",number:Math.min(y,99),size:24,"aria-hidden":!0}),d==="loading"&&t.jsx("span",{className:"side-nav__spinner",role:"img","aria-label":n("loader.loading","\uBD88\uB7EC\uC624\uB294 \uC911\u2026")})]})}function Ci(e){const{t:n}=he.useTranslation(),{items:a=[],activeKey:r,onChange:o,unreadCount:i,onDebug:l,onNotification:c,onAccount:u,onSetting:d,onHelp:p,appMode:h,onAppModeChange:m}=e||{},g=h==="manager",y=s.useCallback(()=>m?.(g?"malgwi":"manager"),[m,g]);return t.jsxs("nav",{"aria-label":n("nav.mainMenu","\uBA54\uC778 \uBA54\uB274"),className:"side-nav__menu",children:[t.jsxs("div",{className:"side-nav__menu-list",children:[(a||[]).filter(C=>!C.section&&(C.key||C.label)).map((C,f)=>t.jsxs(s.Fragment,{children:[C.divider&&t.jsx("div",{className:"side-nav__separator"}),t.jsx(fi,{item:C,active:C.key===r,state:C.disabled?"disabled":void 0,onClick:(v,x,_)=>{if(C.disabled)return;if(C.href){if(window.open(C.href,"_blank","noopener,noreferrer"),_)try{x?.blur()}catch{}return}o?.(C.key);try{const N=document.querySelector(".content-area");N?N.scrollTop=0:window.scrollTo({top:0})}catch{}if(!_)return;try{x?.blur()}catch{}if(typeof window<"u"&&window.matchMedia){if(!window.matchMedia("(min-width: 768px) and (max-width: 1023px)").matches)return}else return;const b=document.querySelector(".header");if(b&&!(typeof b.matches=="function"&&b.matches(":hover"))){b.classList.add("header--force-collapsed");const N=()=>{b.classList.remove("header--force-collapsed"),b.removeEventListener("mouseenter",N)};b.addEventListener("mouseenter",N)}}})]},C.key??`side-nav__item-${f}`)),m&&t.jsx("div",{className:"side-nav__separator side-nav__separator--short"}),m&&t.jsx(fi,{item:{key:"__mode-switch__",label:g?n("nav.goToMalgwi","\uB9D0\uADC0\uB85C \uC774\uB3D9"):n("nav.goToManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800\uB85C \uC774\uB3D9"),icon:g?"arrow-left":"arrow-right"},onClick:y})]}),t.jsx(d2,{activeKey:r,unreadCount:i,onDebug:l,onNotification:c,onAccount:u,onSetting:d,onHelp:p})]})}var hr='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',mr='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',p2='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 gi({appMode:e}){const{t:n}=he.useTranslation(),a=e==="manager",r=a?mr:hr,o=p2,i=Xt("(min-width: 768px) and (max-width: 1023px)");return t.jsx("div",{className:"brand-identity__root","aria-label":n("header.biArea","BI \uC601\uC5ED"),children:i?t.jsx("img",{src:o,alt:n("header.biSymbol","BI \uC2EC\uBCFC"),className:"brand-identity__image"}):t.jsx("img",{src:r,alt:a?n("header.logoManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800 \uB85C\uACE0"):n("header.logoMalgwi","\uB9D0\uADC0 \uB85C\uACE0"),className:"brand-identity__image"})})}function bi({activeKey:e,onChange:n,items:a,malgwiItems:r,managerItems:o,unreadCount:i,onDebug:l,onNotification:c,onAccount:u,onSetting:d,onHelp:p,appMode:h,onAppModeChange:m}){const{t:g}=he.useTranslation(),y=Xt("(max-width: 767px)"),C=s.useMemo(()=>(a??[]).filter(q=>!q.section&&(q.key||q.label)).map(q=>({key:q.key,label:typeof q.label=="string"?q.label:void 0,icon:q.icon,state:q.disabled?"disabled":void 0,badgeCount:q.badge})),[a]),f=s.useCallback(q=>{const W=a?.find(B=>B.key===q);if(!W?.disabled){if(W?.href){window.open(W.href,"_blank","noopener,noreferrer");return}n?.(q)}},[a,n]),v=s.useMemo(()=>{const q=[];return l&&q.push({key:"debug",icon:"terminal",label:g("nav.debug","\uB514\uBC84\uADF8"),onClick:l}),c&&q.push({key:"notifications",icon:"bell",label:g("nav.notifications","\uC54C\uB9BC"),badgeCount:i,onClick:c}),d&&q.push({key:"settings",icon:"settings",label:g("nav.settings","\uC124\uC815"),onClick:d}),p&&q.push({key:"help",icon:"message-circle-question-mark",label:g("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:p}),u&&q.push({key:"account",icon:"user-round",label:g("nav.account","\uACC4\uC815"),onClick:u}),q},[g,l,c,d,p,u,i]),x=s.useCallback(q=>({position:"fixed",top:q.bottom+8,right:Math.max(8,window.innerWidth-q.right),zIndex:1e4}),[]),_=s.useId(),{open:b,toggle:N,close:w,style:k,triggerRef:j,menuRef:A}=na({computeStyle:x,onScroll:"ignore",onResize:"ignore"}),S=s.useMemo(()=>[{items:v.map(q=>({label:q.label,icon:q.icon,badgeCount:q.badgeCount,selected:q.selected??(!!q.key&&q.key===e),closeOnSelect:!0,onClick:()=>{q.onClick?.(),w()}}))}],[v,e,w]);return t.jsxs("aside",{className:`header${h==="manager"?" header--manager":""}`,children:[t.jsxs("div",{className:"header__bi",children:[t.jsx(gi,{appMode:h}),t.jsxs("div",{className:"header__menu-button",ref:j,children:[t.jsx(oe,{htmlType:"button",size:48,type:"dot",shape:"pill",variant:"default",icon:"menu",ariaLabel:c&&i&&i>0?g("nav.badgeLabel",{label:g("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),count:i,defaultValue:"{{label}}, {{count}}\uAC1C"}):g("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),onClick:N,"aria-expanded":b,"aria-controls":b?_:void 0}),!!c&&!!i&&i>0&&t.jsx(it,{type:"dot",number:Math.min(i,99),size:24,"aria-hidden":!0}),b&&It.createPortal(t.jsx("div",{id:_,role:"group","aria-label":g("header.utilMenu","\uC720\uD2F8\uB9AC\uD2F0 \uBA54\uB274"),className:"tooltip-content",style:k,ref:A,children:t.jsx(wa,{columns:S,onClose:w})}),document.body)]})]}),t.jsx(Ci,{items:a,activeKey:e??void 0,onChange:n,unreadCount:i,onDebug:l,onNotification:c,onAccount:u,onSetting:d,onHelp:p,appMode:h,onAppModeChange:m}),y&&t.jsx(hi,{items:C,activeKey:e??void 0,onChange:f,appMode:h,onAppModeChange:m})]})}const h2=bi;var m2={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",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."},f2={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"},C2={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"}},g2={clearAriaLabel:"\uAC80\uC0C9\uC5B4 \uC9C0\uC6B0\uAE30"},b2={starLabel:"{{n}}\uBC88\uC9F8 \uBCC4 \uC120\uD0DD",valueLabel:"{{max}}\uC810 \uB9CC\uC810\uC5D0 {{value}}\uC810",groupLabel:"\uBCC4\uC810"},y2={selected:"\uC120\uD0DD\uB428"},v2={placeholder:"\uC120\uD0DD"},x2={collapse:"\uC811\uAE30",expand:"\uD3BC\uCE58\uAE30"},_2={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"},w2={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",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"},k2={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."}}},A2={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."}},N2={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"}}},B2={guide:{faq:{title:"\uC790\uC8FC \uBB3B\uB294 \uC9C8\uBB38",desc:"FAQ \uBAA8\uC544\uBCF4\uAE30"}}},S2={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.",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:{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"}},D2={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"},j2={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"}},T2={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"}}}},E2={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"}},M2={unitVisit:"\uAC74",periodAll:"\uC804\uCCB4",showN:"{{n}}\uAC1C\uC529"},L2={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"}},$2={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."}},R2={comingSoon:"\uB2E8\uC5B4\uD6C8\uB828 \uAE30\uB2A5\uC744 \uC900\uBE44 \uC911\uC785\uB2C8\uB2E4."},P2={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"},I2={title:"\uC8FC\uC694 \uB2E8\uC5B4",empty:"\uCD94\uCD9C\uB41C \uC8FC\uC694 \uB2E8\uC5B4\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4."},F2={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:"\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\uC744 \uB20C\uB7EC \u25CB \xB7 \u25B3 \xB7 \u2715 \uB97C \uB9E4\uAE30\uC138\uC694.",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"}},O2={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"},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"}},H2={clearAllSelection:"\uBAA8\uB450 \uC120\uD0DD \uD574\uC81C",divLine:"\uB300\uB9BD\uC120",removePair:"\uB300\uB9BD\uC30D \uBE7C\uAE30",removeWord:"\uB2E8\uC5B4 \uBE7C\uAE30"},V2={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"}},z2={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"}},W2={passwordPlaceholder:"\uBE44\uBC00\uBC88\uD638 \uC785\uB825"},q2={subtitle:"\uC8FC\uC81C\uB97C \uC120\uD0DD\uD558\uC5EC \uB4E3\uAE30 \uC5F0\uC2B5\uC744 \uC9C4\uD589\uD558\uC138\uC694."},U2={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"}},G2={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"}},K2={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."]},Y2={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"}},Z2={lead:`\uC544\uC774\uD574\uBE0C\uB294 \uC18C\uB9AC\uB97C \uD1B5\uD574
827
+ `),this.name="StorageNotConfiguredError"}};function Pm(e){Rm(e)}function ts(e,n){if(!e)return null;const a=Zn();return a?.resolvePath?a.resolvePath(e,n):n?`${n}/${e}.mp3`:null}async function ns(e){if(!e)return null;const n=Zn();if(!n)throw new es("getSignedOrPublicUrl");try{return await n.resolveUrl(e)}catch{return null}}async function as(e){const n=Zn();if(!n)throw new es("downloadSound");return n.download(e)}function Im(){return Zn()?.noiseBaseUrl??"/sounds/noise"}function rs(){const e=Number(Zn()?.noiseFileGain);return Number.isFinite(e)&&e>0?e:1}const os="__ihab_core_tts_config__";function Za(){return globalThis[os]?.urlResolver??null}function Fm(){return globalThis[os]?.fallbackUrlResolver??null}const Om="__ihab_core_pronunciation_resolver__";function Vm(){return globalThis[Om]??null}let mn=null;const Xn=new WeakMap,Xa=new WeakMap,Ja=new WeakMap;let ss=!1;const is=e=>Math.max(0,Math.min(1,Number.isFinite(e)?e:0));function Hm(){if(ss||typeof document>"u")return;ss=!0;const e=()=>{try{mn&&mn.state!=="running"&&mn.resume()}catch{}};for(const n of["pointerdown","touchend","keydown"])document.addEventListener(n,e,{capture:!0,passive:!0})}function ls(){if(mn)return mn;try{const e=window.AudioContext||window.webkitAudioContext;return e?(mn=new e,Hm(),mn):null}catch{return null}}function Qa(){try{mn?.resume()}catch{}}function er(e,n){const a=Xn.get(n);if(a)return a;try{const r=e.createMediaElementSource(n),o=e.createGain(),i=e.createAnalyser();i.fftSize=1024,i.smoothingTimeConstant=.6,o.gain.value=is(Xa.get(n)??n.volume),r.connect(o),o.connect(i),o.connect(e.destination);try{n.volume=1}catch{}const l={gain:o,analyser:i};return Xn.set(n,l),l}catch{return null}}function fa(e){if(!e)return Promise.resolve(null);const n=Xn.get(e);if(n)return Promise.resolve(n.analyser);const a=ls();if(!a)return Promise.resolve(null);if(a.state==="running")return Promise.resolve(er(a,e)?.analyser??null);const r=Ja.get(e);if(r)return r;const o=Promise.resolve().then(()=>a.resume()).then(()=>a.state==="running"?er(a,e)?.analyser??null:null).catch(()=>null).finally(()=>{Ja.delete(e)});return Ja.set(e,o),o}function zm(e){if(!e)return null;const n=Xn.get(e);if(n)return n.analyser;const a=ls();return a?a.state==="running"?er(a,e)?.analyser??null:(fa(e),null):null}function fn(e,n){const a=is(n);Xa.set(e,a);const r=Xn.get(e);if(r){try{e.volume!==1&&(e.volume=1)}catch{}const o=r.gain.gain;try{const i=r.gain.context.currentTime;o.cancelScheduledValues(i),o.setTargetAtTime(a,i,.01)}catch{try{o.value=a}catch{}}return"gain"}try{e.volume=a}catch{}return"element"}function Ca(e){return Xa.get(e)??e.volume}function Wm(e,n){e.getFloatTimeDomainData(n);let a=0;for(let r=0;r<n.length;r++){const o=n[r];a+=o*o}return Math.sqrt(a/n.length)}const qm="__ihab_core_image_config__";function Rn(){return globalThis[qm]??null}const cs="word_image_existence_map_v1";let An=null;const ga=new Map;function Um(){if(An)return An;try{const e=typeof localStorage<"u"?localStorage.getItem(cs):null;An=e?JSON.parse(e):{}}catch{An={}}return An}let tr=null;function Gm(){tr||(tr=setTimeout(()=>{tr=null;try{typeof localStorage<"u"&&An&&localStorage.setItem(cs,JSON.stringify(An))}catch{}},200))}function Km(e,n){return`${e}_${n??1}`}async function us(e,n){const a=Um(),r=Km(e,n);if(r in a)return a[r];if(ga.has(r))return ga.get(r);const o=Rn();if(!o)return!1;const i=o(e,n);if(!i)return!1;const l=fetch(i,{method:"HEAD",signal:AbortSignal.timeout(8e3)}).then(c=>c.status>=500?null:c.ok,()=>null).then(c=>(ga.delete(r),c===null?!1:(a[r]=c,Gm(),c)));return ga.set(r,l),l}const ds=["\u3131","\u3132","\u3134","\u3137","\u3138","\u3139","\u3141","\u3142","\u3143","\u3145","\u3146","\u3147","\u3148","\u3149","\u314A","\u314B","\u314C","\u314D","\u314E"],ps=["\u314F","\u3150","\u3151","\u3152","\u3153","\u3154","\u3155","\u3156","\u3157","\u3158","\u3159","\u315A","\u315B","\u315C","\u315D","\u315E","\u315F","\u3160","\u3161","\u3162","\u3163"],Ym=["","\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 Jn(e){if(!e)return null;const n=e.charCodeAt(0)-44032;return n<0||n>=11172?null:{cho:Math.floor(n/588),jung:Math.floor(n%588/28),jong:n%28}}function Zm(e){const n=Jn(e[0]||"");return n?ds[n.cho]:""}function Xm(e,n){if(!n)return!0;const a=[...n],r=c=>ds.includes(c),o=c=>ps.includes(c),i=a.map(c=>r(c)?"cho":o(c)?"jung":Jn(c)?"syl":"other");if(i.includes("other"))return e.toLowerCase().includes(n.toLowerCase());const l=[...e];for(let c=0;c+a.length<=l.length;c++){let u=!0;for(let d=0;d<a.length;d++){const p=l[c+d],h=i[d];if(h==="cho"){if(Zm(p)!==a[d]){u=!1;break}}else if(h==="jung"){const m=Jn(p);if(!m||ps[m.jung]!==a[d]){u=!1;break}}else{const m=Jn(a[d]);if(m&&m.jong===0){const g=Jn(p);if(!g||g.cho!==m.cho||g.jung!==m.jung){u=!1;break}}else if(p!==a[d]){u=!1;break}}}if(u)return!0}return!1}const Jm={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(Jm).map(([e,n])=>[n.join(""),Ym[Number(e)]]));const Qm="word_pair_index_v2",e0="word_pair_index_sig_v2";let ba=null;function t0(){try{if(typeof localStorage>"u")return null;const e=localStorage.getItem(Qm),n=localStorage.getItem(e0);return!e||!n?null:{index:JSON.parse(e),sig:n}}catch{return null}}function n0(){if(ba)return ba;const e=t0();return e?(ba=e.index,e.sig,ba):null}const a0={\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"}},nr=/[ㄱ-ㅎ]/,r0=/[ㅏ-ㅣ]/;function hs(e){for(let n=e.length-1;n>=0;n--){const a=e[n],r=a.charCodeAt(0);if(r>=44032&&r<=55203||nr.test(a)||r0.test(a))return a}return null}function o0(e){const n=hs(e);if(!n)return"\uAC00";const a=n.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uC774":"\uAC00":nr.test(n)?"\uC774":"\uAC00"}function s0(e){return`${e}${o0(e)}`}function i0(e){const n=hs(e);if(!n)return"\uB97C";const a=n.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uC744":"\uB97C":nr.test(n)?"\uC744":"\uB97C"}function l0(e){return`${e}${i0(e)}`}function c0(e,n,a){const r=e.slice(),[o]=r.splice(n,1);return r.splice(a,0,o),r}function Qn(e,n=Math.random){const a=e.slice();for(let r=a.length-1;r>0;r--){const o=Math.floor(n()*(r+1));[a[r],a[o]]=[a[o],a[r]]}return a}const u0=()=>{const e="\uC54C \uC218 \uC5C6\uB294 \uC624\uB958",n=typeof Dt?.t=="function"?Dt.t("common.unknownError",{defaultValue:e}):void 0;return typeof n=="string"&&n?n:e};function ms(e,n){if(n===void 0&&(n=u0()),e instanceof Error)return e.message||n;if(typeof e=="string")return e||n;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 n}const d0="__ihab_core_word_pool__";function p0(){return globalThis[d0]??null}const fs=globalThis;function Cs(e,n){const a=r=>{};try{const r=n();r&&typeof r.catch=="function"&&r.catch(a)}catch(r){a(r)}}function h0(e){Cs("time",()=>fs.__ihabTrainingTimeLogger?.(e))}function m0(e){Cs("completion",()=>fs.__ihabTrainingCompletionLogger?.(e))}function Ut(e){return typeof e=="string"?e.trim()||null:typeof e=="number"?String(e):null}function f0(e){for(const n of["correct","isCorrect","heard","judgement"])if(typeof e[n]=="boolean")return e[n];return e.score===1?!0:e.score===0?!1:null}function C0(e){return Array.isArray(e)?e.map((n,a)=>{const r=n??{};return{index:a,itemId:Ut(r.contextCode)??Ut(r.itemId)??Ut(r.itemCode)??Ut(r.id),question:Ut(r.question)??Ut(r.sentence)??Ut(r.word)??Ut(r.targetSyllable),answer:Ut(r.answer),selected:Ut(r.selectedText)??Ut(r.selected),correct:f0(r)}}):[]}const ar=globalThis;async function g0(){try{return await ar.__ihabNoiseSettingsStore?.load()??null}catch{return null}}function gs(e){const n=a=>{};try{const a=ar.__ihabNoiseSettingsStore?.save(e);a&&typeof a.catch=="function"&&a.catch(n)}catch(a){n(a)}}function ya(e){try{ar.__ihabNoiseSettingsStore?.applied?.(e)}catch{}}async function b0(e){if(typeof document<"u"){const n=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),n&&n!==document.activeElement&&typeof n.focus=="function"&&n.isConnected)try{n.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}function y0(){return rr(new Date)}function rr(e){if(e==null||e==="")return"";const n=e instanceof Date?e:new Date(e);return isNaN(n.getTime())?"":new Intl.DateTimeFormat("fr-CA",{timeZone:"Asia/Seoul"}).format(n)}function bs(e,n){if(!e)return"";const a=new Date(e).getTime();if(Number.isNaN(a))return"";const r=Math.max(0,Math.floor((Date.now()-a)/1e3)),o=Math.floor(r/60),i=Math.floor(o/60),l=Math.floor(i/24),c=Math.floor(l/7),u=Math.floor(l/30),d=Math.floor(l/365);return o<1?n("store.time.justNow","\uBC29\uAE08 \uC804"):o<60?n("store.time.minutesAgo",{n:o}):i<24?n("store.time.hoursAgo",{n:i}):l<7?n("store.time.daysAgo",{n:l}):c<5?n("store.time.weeksAgo",{n:c}):l<365?n("store.time.monthsAgo",{n:Math.min(u,11)}):n("store.time.yearsAgo",{n:d})}function ys(e,n={}){const{sep:a=".",pad:r=!0,trailingDot:o=!1,fallback:i="\u2014"}=n;if(!e)return i;const l=rr(e instanceof Date?e:String(e));if(!l)return i;const[c,u,d]=l.split("-"),p=r?u:String(Number(u)),h=r?d:String(Number(d));return`${c}${a}${p}${a}${h}${o?".":""}`}function ea(e){if(!e)return e;const n=e.trim();return/^[₩$]/.test(n)?n:/원\s*$/.test(n)?"\u20A9"+n.replace(/\s*원\s*$/,"").trim():n}function vs(e,n){if(!e)return"-";const a=/^(\d{1,2}):(\d{2})$/.exec(e.trim());if(!a)return e;const r=Number(a[1]),o=Number(a[2]),i=a[1].padStart(2,"0");return o===0?n("date.timeH",{h:r,hh:i,mm:a[2]}):n("date.timeHM",{h:r,hh:i,m:o,mm:a[2]})}function or(e){return(e??0).toLocaleString("ko-KR")}const v0=[{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"}]}],x0=[{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 xs(){return v0}function _0(){return x0}const w0=[],k0=[],A0=[],N0=[];function B0(){return{LISTEN_IN_NOISE:w0,SHORT_STORY:k0,LONG_STORY:A0,ORDERING_SENTENCE:N0}}const S0=[{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."}],_s={LISTEN_IN_NOISE:"listenInNoise",SHORT_STORY:"shortStory",LONG_STORY:"longStory",ORDERING_SENTENCE:"orderingSentence"};function D0(e){return S0.map(n=>{const a=_s[n.key];return a?{...n,label:e(`trainingType.${a}.title`),desc:e(`trainingType.${a}.desc`)}:n})}let va=null,ws=null,ks=null;function j0(){const e=p0();if(e&&e.entries.length>0){const n=n0();if(va&&ws===e&&ks===n)return va;const a=new Set,r=[];for(const o of e.entries)!o.word||a.has(o.word)||(a.add(o.word),r.push({w:o.word,s:o.syllables,p:n?.[o.word]?[...n[o.word].cho??[],...n[o.word].jung??[],...n[o.word].jong??[]]:[],pron:o.pronunciation||o.word,grade:o.grade}));return va=r,ws=e,ks=n,va}return[]}new Proxy([],{get(e,n){const a=j0(),r=a[n];return typeof r=="function"?r.bind(a):r}});const T0="0.139.0";function E0(e){return typeof window>"u"?"":Em.sanitize(e,{USE_PROFILES:{svg:!0,svgFilters:!0},FORBID_TAGS:["script","use"],FORBID_ATTR:["xlink:href","href"]})}function M0(e){const[n,a]=s.useState(null),[r,o]=s.useState(null),[i,l]=s.useState(null),[c,u]=s.useState(null);return s.useEffect(()=>{if(!e||typeof e!="string"||!e.endsWith(".svg")){a(null),o(null),l(null);return}const d=e.split("/").pop();let p=e;d&&(e.startsWith("/")?p=Ya(e):/^(Logo|Symbol)/i.test(d)?p=Ya(`logo/${d}`):(/^https?:\/\//i.test(e)||e.startsWith("data:"),p=e)),o(null),l(null),a(p)},[e]),s.useEffect(()=>{if(!n)return;let d=!1;async function p(){try{let h=await fetch(n);h.ok||(h=await fetch(n));const m=h.headers.get("content-type")||"";if(d)return;if(m.includes("svg")){o("mask");return}if(m.startsWith("image/")){o("img");return}const g=await fetch(n);if(!g.ok)throw new Error("not ok");const y=await g.text();if(d)return;if(/^\s*<svg[\s>]/i.test(y)){const C=E0(y);if(!C){o("none");return}l(C),o("inline");return}o("none")}catch{d||o("none")}}return p(),()=>{d=!0}},[n]),s.useEffect(()=>{let d=!1,p=null;return r==="mask"&&n&&fetch(n).then(h=>{if(!h.ok)throw new Error("fetch failed");return h.blob()}).then(h=>{d||(p=URL.createObjectURL(h),u(p))}).catch(()=>{d||o("img")}),()=>{d=!0,p&&URL.revokeObjectURL(p),u(null)}},[r,n]),{iconToUse:n,mode:r,svgText:i,blobUrl:c}}function Oe(e){const{icon:n,label:a,className:r,imgClassName:o,maskClassName:i,svgClassName:l,wrapperStyle:c,size:u}=e||{},d=r??"iconRenderer-icon",p=o??"iconRenderer-icon-image",h=i??"iconRenderer-icon-mask",m=l??"iconRenderer-icon-svg",g=typeof n=="string"?n:null,y=Xh(g),{iconToUse:C,mode:f,svgText:v,blobUrl:x}=M0(g),_=(k,j={})=>t.jsx("span",{className:d,style:c,...j,children:k}),b=(k,j={})=>t.jsx("img",{src:k,alt:typeof a=="string"?a:typeof a=="number"?String(a):"",className:p,...j});if(!n)return null;if(typeof n!="string")return _(n);if(n==="none")return _(t.jsx("span",{className:m,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 _(s.createElement(y,{className:m,size:typeof u=="number"?u:20}),{"aria-hidden":"true"})}catch{}if(C&&C.endsWith(".svg")){if(f==="mask"){const k={"--icon-url":x?`url(${x})`:`url(${C})`,...typeof u=="number"?{"--icon-size":`${u}px`}:null};return _(t.jsx("span",{className:h,style:k}),{"aria-hidden":"true"})}return f==="img"?_(b(C,{onError:k=>{k.currentTarget.onerror=null,k.currentTarget.style.display="none"}}),{"aria-hidden":"true"}):f==="inline"?_(t.jsx("span",{className:m,dangerouslySetInnerHTML:v?{__html:v}:void 0}),{"aria-hidden":"true"}):_(null,{"aria-hidden":"true"})}if(n.startsWith("/")||n.includes("/assets/")||n.match(/\.(png|jpg|jpeg|webp|gif)$/i))return b(Ya(n),{style:c,onError:k=>{k.currentTarget.onerror=null,k.currentTarget.style.display="none"}});const N=typeof u=="number"?u:20,w=`<svg width="${N}" height="${N}" 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 _(t.jsx("span",{className:m,dangerouslySetInnerHTML:{__html:w}}),{"aria-hidden":"true"})}function L0({icon:e,emoji:n,title:a,message:r,hint:o,action:i,compact:l,className:c}){return t.jsxs("div",{className:ye("empty-state",l&&"empty-state--compact",c),children:[n&&t.jsx("span",{className:"empty-state__emoji",children:n}),e&&t.jsx(Oe,{icon:e,className:"empty-state__icon"}),a&&t.jsx("p",{className:"empty-state__title body-2",children:a}),r&&t.jsx("p",{className:"empty-state__message body-3",children:r}),o&&t.jsx("p",{className:"empty-state__hint caption-1",children:o}),i&&t.jsxs("button",{type:"button",className:"empty-state__action button button40 button40--bar button--variant-main button--align-center button--shape-rounded",onClick:i.onClick,children:[i.icon&&t.jsx(Oe,{icon:i.icon,className:"button__icon"}),t.jsx("span",{className:"button__label button-1",children:i.label})]})]})}function $0({message:e,hint:n,icon:a="triangle-alert",onRetry:r,retryLabel:o,className:i}){const{t:l}=he.useTranslation();return t.jsxs("div",{className:ye("empty-state","error-state",i),role:"alert",children:[t.jsx(Oe,{icon:a,className:"empty-state__icon error-state__icon"}),t.jsx("p",{className:"empty-state__message body-3",children:e??l("common.errorState.message",{defaultValue:"\uBD88\uB7EC\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."})}),n&&t.jsx("p",{className:"empty-state__hint caption-1",children:n}),r&&t.jsxs("button",{type:"button",className:"empty-state__action button button40 button40--bar button--variant-main button--align-center button--shape-rounded",onClick:r,children:[t.jsx(Oe,{icon:"rotate-cw",className:"button__icon"}),t.jsx("span",{className:"button__label button-1",children:o??l("common.errorState.retry",{defaultValue:"\uB2E4\uC2DC \uC2DC\uB3C4"})})]})]})}function R0({icon:e,title:n,description:a,cta:r,tone:o="main",disabled:i=!1,onClick:l,className:c=""}){const u=()=>{i||l?.()};return t.jsx("section",{role:"button",tabIndex:i?-1:0,"aria-disabled":i||void 0,"aria-label":n,onClick:u,onKeyDown:d=>{(d.key==="Enter"||d.key===" ")&&(d.preventDefault(),u())},className:ye("action-card",`action-card--${o}`,i&&"action-card--disabled",c),children:t.jsxs("div",{className:"action-card__body",children:[t.jsx("span",{"aria-hidden":!0,className:"action-card__chip",children:t.jsx(Oe,{icon:e,size:34})}),t.jsxs("div",{className:"action-card__text",children:[t.jsx("h2",{className:"action-card__title",children:n}),t.jsx("p",{className:"action-card__desc",children:a})]}),t.jsxs("div",{className:"action-card__cta",children:[t.jsx("span",{children:r}),t.jsx("span",{"aria-hidden":!0,className:"action-card__arrow",children:t.jsx(Oe,{icon:"arrow-right",size:18})})]})]})})}function P0({as:e="div",className:n="",children:a,storage:r,...o}){r&&Pm({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=ye("ihabdevteam-core-scope",n);return t.jsx(e,{className:i,...o,children:a})}function I0({title:e="",lines:n=[],notices:a=null,children:r,variant:o="default",dismissible:i=!1,className:l=""}){const{t:c}=he.useTranslation(),[u,d]=s.useState(!1),p=s.useCallback(()=>d(!0),[]);if(u)return null;const h=`notice-box notice-box--${o} body-2 ${l}`.trim();if(a&&Array.isArray(a)&&a.length)return t.jsx("div",{className:h,role:"note",children:a.map((g,y)=>t.jsxs("div",{className:"notice-box__inner",children:[g.title?t.jsx("span",{className:"notice-box__title body-3",children:g.title}):null,t.jsx("div",{className:"notice-box__body",children:g.lines&&g.lines.length?t.jsx("div",{children:g.lines.map((C,f)=>t.jsx("span",{className:"notice-box__line body-3",children:C},f))}):g.children??null})]},y))});const m=e||n.length?t.jsxs("div",{className:"notice-box__inner",children:[e?t.jsx("span",{className:"notice-box__title body-1",children:e}):null,t.jsx("div",{className:"notice-box__body",children:n.length?t.jsx("ul",{children:n.map((g,y)=>t.jsx("li",{className:"notice-box__line",children:g},y))}):r})]}):t.jsx("div",{className:"notice-box__inner",children:r});return t.jsxs("div",{className:h,role:"note",children:[m,i&&t.jsx("button",{type:"button",className:"notice-box__dismiss",onClick:p,"aria-label":c("common.close","\uB2EB\uAE30"),children:"\xD7"})]})}function sr(e,n=!0){s.useEffect(()=>{if(!n)return;const a=e.current;if(!a)return;const r=o=>{if(o.key!=="Tab")return;const i=Array.from(a.querySelectorAll(Nn)).filter(p=>!p.closest('[aria-hidden="true"]'));if(!i.length){o.preventDefault();return}const l=i[0],c=i[i.length-1],u=document.activeElement,d=u===a;o.shiftKey&&(u===l||d)?(o.preventDefault(),c.focus()):!o.shiftKey&&u===c&&(o.preventDefault(),l.focus())};return a.addEventListener("keydown",r),()=>a.removeEventListener("keydown",r)},[e,n])}const Nn='a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])',Pn=[];let xa=!1;function As(e){if(e.key!=="Escape"||e.defaultPrevented)return;const n=Pn[Pn.length-1];n&&(e.stopPropagation(),n())}function Bn(e){return Pn.push(e),!xa&&typeof document<"u"&&(document.addEventListener("keydown",As),xa=!0),()=>{const n=Pn.lastIndexOf(e);n>=0&&Pn.splice(n,1),Pn.length===0&&xa&&typeof document<"u"&&(document.removeEventListener("keydown",As),xa=!1)}}function Cn(e){const{anchorRect:n,anchorEl:a,offset:r=20,edgeMargin:o=20,onClose:i,closeOnOutsideClick:l=!0,className:c="",role:u="dialog",ariaLabel:d="",children:p,backdrop:h=!1,isMobilePopup:m=!1,useBorder:g=!0,header:y}=e||{},C=s.useRef(null),[f,v]=s.useState({position:"fixed",left:0,top:-9999}),[x,_]=s.useState(!1),[b,N]=s.useState("bottom"),[w,k]=s.useState(!1),[j,A]=s.useState(!1),S=!n&&!a,q=s.useCallback((M=!1)=>{if(j&&m)return;const H=a?a.getBoundingClientRect():n;if(!H||!C.current)return;const Q=C.current,{offsetWidth:te,offsetHeight:Y}=Q,V=window.innerWidth,T=window.innerHeight,P=V-H.right,F=H.left,L=H.top,R=T-H.bottom;let z=0,ae=0,ne="top";if(L>=Y+r)ne="top",ae=H.top-r-Y,z=H.left+H.width/2-te/2;else if(R>=Y+r)ne="bottom",ae=H.bottom+r,z=H.left+H.width/2-te/2;else if(P>=te+r)ne="right",z=H.right+r,ae=H.top+H.height/2-Y/2;else if(F>=te+r)ne="left",z=H.left-r-te,ae=H.top+H.height/2-Y/2;else{const Z=Math.max(L,R,P,F);Z===L?(ne="top",ae=H.top-r-Y,z=H.left+H.width/2-te/2):Z===R?(ne="bottom",ae=H.bottom+r,z=H.left+H.width/2-te/2):Z===P?(ne="right",z=H.right+r,ae=H.top+H.height/2-Y/2):(ne="left",z=H.left-r-te,ae=H.top+H.height/2-Y/2)}const re=Number(o)||8;z=Math.min(Math.max(z,re),V-te-re),ae=Math.min(Math.max(ae,re),T-Y-re);const pe=Math.round(z),_e=Math.round(ae);M&&C.current?(C.current.style.left=`${pe}px`,C.current.style.top=`${_e}px`,C.current.dataset.placement=ne):(N(ne||b),v({position:"fixed",left:pe,top:_e}),k(!0))},[j,m,a,n,r,o,b]);s.useLayoutEffect(()=>{if(S)return;if(j&&m){v({position:"fixed",left:"50%",top:"50%",transform:"translate(-50%, -50%)",width:"calc(100% - 40px)",maxWidth:"calc(100% - 40px)"}),k(!0);return}q();const M=requestAnimationFrame(()=>q());return()=>cancelAnimationFrame(M)},[n,a,r,p,o,S,j,m,q]),s.useEffect(()=>{if(S||j&&m||!C.current||typeof ResizeObserver>"u")return;const M=new ResizeObserver(()=>{n&&q()});return M.observe(C.current),()=>M.disconnect()},[n,p,o,S,j,m,q]),s.useEffect(()=>{if(S||j&&m)return;const M=()=>q(!0);return window.addEventListener("resize",M),document.addEventListener("scroll",M,{passive:!0,capture:!0}),()=>{window.removeEventListener("resize",M),document.removeEventListener("scroll",M,{capture:!0})}},[n,r,p,o,S,j,m,q]),s.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const M=window.matchMedia("(max-width: 768px)"),H=()=>A(!!M.matches);H();try{M.addEventListener?M.addEventListener("change",H):M.addListener(H)}catch{try{M.addListener(H)}catch{}}return()=>{try{M.removeEventListener?M.removeEventListener("change",H):M.removeListener(H)}catch{}}},[]);const W=s.useRef(!1),B=s.useCallback((M=!1)=>{if(i&&!(x||W.current)){if(W.current=!0,M){_(!0);try{i&&i()}catch{W.current=!1,_(!1)}return}_(!0),setTimeout(()=>{try{i&&i()}catch{W.current=!1,_(!1)}},200)}},[x,i,_]);s.useEffect(()=>{if(S)return;const M=te=>{const Y=C.current;if(!Y)return;const V=te.target;if(V&&!Y.contains(V)){try{if(V.closest&&V.closest("[data-tooltip-ignore]"))return}catch{}l&&B(!0)}},H=te=>{const Y=C.current;if(!Y)return;const V=te.target;if(V&&!Y.contains(V)){try{if(V.closest&&V.closest("[data-tooltip-ignore]"))return}catch{}l&&B(!0)}},Q=te=>{if(te.key==="Tab"){const Y=C.current;if(!Y)return;const V=Y.querySelectorAll(Nn);if(!V||V.length===0)return;const T=V[0],P=V[V.length-1],F=document.activeElement;te.shiftKey?F===T&&(te.preventDefault(),P.focus()):F===P&&(te.preventDefault(),T.focus())}};return document.addEventListener("pointerdown",M,!0),document.addEventListener("click",H,!0),document.addEventListener("keydown",Q),()=>{document.removeEventListener("pointerdown",M,!0),document.removeEventListener("click",H,!0),document.removeEventListener("keydown",Q)}},[i,l,B,S]);const O=s.useRef(B);s.useEffect(()=>{O.current=B});const E=!!i;s.useEffect(()=>{if(!(S||!E))return Bn(()=>O.current())},[S,E]),s.useEffect(()=>{const M=()=>{B(!0)};return typeof document<"u"&&document.addEventListener("speechear-close-tooltips",M),()=>{typeof document<"u"&&document.removeEventListener("speechear-close-tooltips",M)}},[B]);const ee=t.jsxs("div",{ref:C,className:`tooltip-content ${S?"tooltip-content--inline":""} ${g?"tooltip-content--bordered":""} ${x?"is-closing":""} ${c} ${j&&m?"is-mobile":""}`,role:u,"aria-label":d||void 0,style:S?{}:{...f,visibility:w?"visible":"hidden"},tabIndex:-1,"data-placement":b,"data-left":S?"":f.left,"data-top":S?"":f.top,"data-anchor-left":n?Math.round(n.left):"","data-anchor-top":n?Math.round(n.top):"","data-anchor-width":n?Math.round(n.width):"","data-anchor-height":n?Math.round(n.height):"",children:[y!=null&&t.jsx("div",{className:"tooltip-content__header h5",children:y}),p]});if(S||typeof document>"u")return ee;if(h||j&&m){const M=t.jsxs("div",{className:"tooltip-portal",children:[t.jsx("div",{className:"tooltip-backdrop",onClick:()=>{l&&B(!0)}}),ee]});return It.createPortal(M,document.body)}return It.createPortal(ee,document.body)}function gn(e){const{anchorRect:n,text:a,offset:r=8,onClose:o,className:i="",ariaLabel:l}=e||{};return a?t.jsx(Cn,{anchorRect:n,offset:r,onClose:o,closeOnOutsideClick:!1,className:`tooltip-info ${i}`,ariaLabel:l||a,children:t.jsx("div",{className:"tooltip-info__content body-3",children:a})}):null}function Sn(e){const{t:n}=he.useTranslation(),{anchorRect:a,title:r,items:o,activeIndex:i=-1,showIndex:l=!0,onClose:c,offset:u=12,closeOnOutsideClick:d=!0}=e||{},p=(Array.isArray(o)?o:o?[o]:[]).map(h=>typeof h=="string"?{text:h}:h);return!p.length&&!r?null:t.jsx(Cn,{anchorRect:a,offset:u,onClose:c,closeOnOutsideClick:d,useBorder:!1,className:"tooltip-description",ariaLabel:r||n("tooltip.description","\uC124\uBA85"),children:t.jsxs("div",{className:"tooltip-description__box",children:[r&&t.jsx("span",{className:"tooltip-description__title body-2",children:r}),t.jsx("ol",{className:"tooltip-description__items",children:p.map((h,m)=>t.jsxs("li",{className:`tooltip-description__item body-3${m===i?" tooltip-description__item--active":""}`,children:[l&&p.length>1&&t.jsxs("span",{className:"tooltip-description__index button-1",children:[m+1,"."]}),h.color&&t.jsx("span",{className:"tooltip-description__dot",style:{background:h.color},"aria-hidden":"true"}),t.jsx("span",{children:h.text})]},m))})]})})}function oe(e){const{size:n=48,type:a,htmlType:r,href:o,target:i,rel:l,icon:c,rightIcon:u,label:d,count:p,subLabel:h,children:m,ariaLabel:g,variant:y="default",align:C="center",selected:f,toggleable:v=!1,disabled:x=!1,useLabel:_=!0,useBorder:b=!0,useBG:N=!0,useDisabledCovered:w=!1,useDisabledInvisible:k=!1,width:j,minWidth:A,onClick:S,onDisabledClick:q,showTooltipInfo:W=!1,tooltipInfoText:B=null,tooltipDescription:O=null,tooltipOnly:E=!1,iconSize:ee="medium",iconColor:M,shape:H="rounded",color:Q,className:te,...Y}=e,V=typeof n=="string"&&isNaN(Number(n))?n.toLowerCase():String(Number(n)||48),T=V.match(/^\d+$/)?`button${V}`:`button-${V}`,P=Number(n),F=!isNaN(P)&&P<40?"button-2":"button-1",L=d??m,R=x||!!Y.disabled,z=R?w?"disabled-covered":k?"disabled-invisibled":"disabled":y,ae=z?`button--variant-${z}`:"",ne=C?`button--align-${C}`:"",re=H?`button--shape-${H}`:"",pe=typeof M=="string"&&M.startsWith("--")?`var(${M})`:M,_e={...j?{width:typeof j=="number"?`${j}px`:j}:{},...A?{minWidth:typeof A=="number"?`${A}px`:A}:{},...b?{}:{"--button-border":R?"0":"1px solid transparent"},...pe?{"--button-icon-color":pe}:{},...Q?{"--color-main":Q}:{}},Z=_===!1?"":L,ie=Array.isArray(Z)?Z.length>0:!!Z,J=!!u,be=a??(ie||c||J?"bar":"dot"),xe=`${T}--${be}`,Ce=s.useRef(null),fe=s.useRef(R),[ve,Se]=s.useState(!!f),[X,ue]=s.useState(!1),[ke,Le]=s.useState(null),Fe=s.useCallback(()=>ue(!1),[]);s.useEffect(()=>{typeof f=="boolean"&&Se(f)},[f]),s.useEffect(()=>{if(fe.current&&!R&&Ce.current){const je=Ce.current;let Qe=!1;try{Qe=je.matches(":focus:not(:focus-visible)")}catch{Qe=!1}Qe&&je.blur(),je.style.pointerEvents="none";const ut=requestAnimationFrame(()=>{requestAnimationFrame(()=>{Ce.current&&(Ce.current.style.pointerEvents="")})});return()=>cancelAnimationFrame(ut)}fe.current=R},[R]);const De=typeof f=="boolean"?!!f:ve,Pe=v||typeof f=="boolean"?De?"true":"false":void 0,Me=ye("button",T,xe,ae,ne,re,De?"is-selected":null,N?null:"button--no-bg",E?"button--tooltip-only":null,te),Je=`button__icon button__icon--${ee}`,ze=Array.isArray(h)?h:h!==void 0?[h]:[],Ve=()=>{if(Array.isArray(Z))return Z.map((Qe,ut)=>{const qe=ze[ut];return t.jsxs("span",{className:`button__label-text${qe!==void 0?" button__label-text--has-sub":""}`,children:[Qe,qe!==void 0&&t.jsx("span",{className:"button__sub-label-text caption-1",children:qe})]},ut)});const je=h!==void 0;return t.jsxs("span",{className:`button__label-text${je?" button__label-text--has-sub":""}`,children:[Z,p!=null&&t.jsx("span",{className:"button__count",children:p}),je&&t.jsx("span",{className:"button__sub-label-text caption-1",children:h})]})},ge=je=>{R||(typeof Y.onMouseLeave=="function"&&Y.onMouseLeave(je),typeof f!="boolean"&&Se(!1),je.currentTarget.blur())},He=je=>{if(R){q?.(je);return}typeof f!="boolean"&&v&&Se(Qe=>!Qe),S?.(je)},Be=s.useCallback(()=>{(W||O)&&(ue(!0),Le(Ce.current?.getBoundingClientRect()??null))},[W,O]),Ee=s.useCallback(()=>{(W||O)&&(ue(!1),Le(null))},[W,O]),Ne={...Y};delete Ne.disabled,delete Ne.className,delete Ne.faded,delete Ne.useFaded,delete Ne.loading,delete Ne.onMouseLeave,delete Ne.onPointerEnter,delete Ne.onPointerLeave,delete Ne.onFocus,delete Ne.onBlur,R&&(Object.keys(Ne).forEach(je=>{/^on[A-Z]/.test(je)&&typeof Ne[je]=="function"&&delete Ne[je]}),Ne["aria-disabled"]="true");const nt=(typeof W=="string"?W:null)??(typeof B=="string"?B:null)??(typeof g=="string"?g:null)??(typeof L=="string"?L:null)??void 0,ft=typeof g=="string"?g:typeof L=="string"?L:nt,tt=(je,Qe)=>t.jsx(Oe,{icon:je,label:Qe??ft,className:Je,imgClassName:"button__icon-img",maskClassName:"button__icon-mask",svgClassName:"button__icon-svg"}),rt=()=>be==="dot"?t.jsxs(t.Fragment,{children:[tt(c),ie&&t.jsx("span",{className:`button__label ${F}`,children:Ve()})]}):C==="center"&&c?t.jsxs(t.Fragment,{children:[t.jsxs("span",{className:"button__center-group",children:[t.jsx("span",{className:"button__left",children:tt(c)}),ie&&t.jsx("span",{className:`button__label ${F}`,children:Ve()})]}),J&&t.jsx("span",{className:"button__right",children:tt(u)})]}):t.jsxs(t.Fragment,{children:[c&&t.jsx("span",{className:"button__left",children:tt(c,g??L)}),ie&&t.jsx("span",{className:`button__label ${F}`,children:Ve()}),J&&t.jsx("span",{className:"button__right",children:tt(u)})]}),Ke=!!o&&!R;return t.jsxs(t.Fragment,{children:[t.jsx(Ke?"a":"button",{...Ne,ref:Ce,...Ke?{href:o,target:i,rel:l??(i==="_blank"?"noreferrer":void 0)}:{type:r,disabled:R&&!q},className:Me,"aria-pressed":Pe,"aria-label":ft,"aria-disabled":R&&(Ke||q)?!0:void 0,style:_e,onClick:He,onMouseLeave:ge,onPointerEnter:je=>{Be(),!R&&typeof Y.onPointerEnter=="function"&&Y.onPointerEnter(je)},onPointerLeave:je=>{Ee(),!R&&typeof Y.onPointerLeave=="function"&&Y.onPointerLeave(je)},onFocus:je=>{Be(),!R&&typeof Y.onFocus=="function"&&Y.onFocus(je)},onBlur:je=>{ge(je),Ee(),!R&&typeof Y.onBlur=="function"&&Y.onBlur(je)},children:rt()}),X&&O?t.jsx(Sn,{anchorRect:ke,title:O.title,items:O.items,onClose:Fe}):X&&nt?t.jsx(gn,{anchorRect:ke,text:nt,onClose:Fe}):null]})}function st(e,n,a){const r=s.useRef(null);return s.useLayoutEffect(()=>{const o=r.current?.parentElement??null;return n(o,e),()=>a(o)},[e,n,a]),r}const ta={title:"--promo-banner-bg-title",description:"--promo-banner-bg-description"},ir=new WeakMap;function lr(e){if(e)return ir.get(e)}function wt(e,n){e&&(e.style.setProperty(ta.title,n.title),e.style.setProperty(ta.description,n.description),ir.set(e,n))}function kt(e){e&&(e.style.removeProperty(ta.title),e.style.removeProperty(ta.description),ir.delete(e))}const Ns={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"default"};function Bs(){const e=st(Ns,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-main","aria-hidden":"true"})}const Ss={title:"var(--color-main)",description:"var(--color-gray)",actionVariant:"main"};function Ds(){const e=st(Ss,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft","aria-hidden":"true"})}const js={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Ts(){const e=st(js,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-sub","aria-hidden":"true"})}const Es={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Ms(){const e=st(Es,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-deep","aria-hidden":"true"})}const Ls={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function $s(){const e=st(Ls,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft-sub","aria-hidden":"true"})}const Rs={title:"var(--color-black)",description:"var(--color-darkGray)",actionVariant:"main"};function Ps(){const e=st(Rs,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-warm","aria-hidden":"true"})}const Is={title:"var(--color-white)",description:"var(--color-lightGray)",actionVariant:"main"};function Fs(){const e=st(Is,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dark","aria-hidden":"true"})}const Os={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Vs(){const e=st(Os,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-radial","aria-hidden":"true"})}const Hs={title:"var(--color-darkMain)",description:"var(--color-gray)",actionVariant:"main"};function zs(){const e=st(Hs,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-diagonal","aria-hidden":"true"})}const Ws={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function qs(){const e=st(Ws,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dots","aria-hidden":"true"})}const Us={title:"var(--color-black)",description:"var(--color-gray)",actionVariant:"main"};function Gs(){const e=st(Us,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-outline","aria-hidden":"true",children:t.jsx("span",{className:"promo-banner-bg-outline__dot"})})}const Ks={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Ys(){const e=st(Ks,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-success","aria-hidden":"true"})}const Zs={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"sub"};function Xs(){const e=st(Zs,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-naver","aria-hidden":"true"})}const Js={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"transparent-white"};function Qs(){const e=st(Js,wt,kt);return t.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-instagram","aria-hidden":"true"})}const F0=[{key:"main",label:"\uBA54\uC778 \uADF8\uB77C\uB514\uC5B8\uD2B8",textTone:"light"},{key:"soft",label:"\uC18C\uD504\uD2B8",textTone:"dark"},{key:"sub",label:"\uC11C\uBE0C \uCEEC\uB7EC",textTone:"light"},{key:"deep",label:"\uB525 \uADF8\uB77C\uB514\uC5B8\uD2B8",textTone:"light"},{key:"softSub",label:"\uC18C\uD504\uD2B8 \uC11C\uBE0C",textTone:"dark"},{key:"warm",label:"\uC6DC(\uAC15\uC870)",textTone:"dark"},{key:"dark",label:"\uB2E4\uD06C",textTone:"light"},{key:"radial",label:"\uBC29\uC0AC\uD615 \uADF8\uB77C\uB514\uC5B8\uD2B8",textTone:"light"},{key:"diagonal",label:"\uB300\uAC01\uC120 \uD328\uD134",textTone:"dark"},{key:"dots",label:"\uB3C4\uD2B8 \uD328\uD134",textTone:"dark"},{key:"outline",label:"\uC544\uC6C3\uB77C\uC778",textTone:"dark"},{key:"success",label:"\uC131\uACF5/\uC644\uB8CC",textTone:"light"},{key:"naver",label:"\uB124\uC774\uBC84 \uBE14\uB85C\uADF8 \uC548\uB0B4",textTone:"light"},{key:"instagram",label:"\uC778\uC2A4\uD0C0\uADF8\uB7A8 \uC548\uB0B4",textTone:"light"}],ei={main:Bs,soft:Ds,sub:Ts,deep:Ms,softSub:$s,warm:Ps,dark:Fs,radial:Vs,diagonal:zs,dots:qs,outline:Gs,success:Ys,naver:Xs,instagram:Qs};function ti({storageKey:e="fontScale",baseFont:n=20,minScale:a=.8,maxScale:r=1.4,step:o=.1,lineHeightRatio:i=1.4}={}){const l=_=>Math.max(a,Math.min(r,Number(_))),c=_=>{try{const b=localStorage.getItem(_),N=b?Number(b):1;return Number.isFinite(N)?l(N):l(1)}catch{return l(1)}},[u,d]=s.useState(()=>c(e)),[p,h]=s.useState(e);p!==e&&(h(e),d(c(e))),s.useEffect(()=>{try{localStorage.setItem(e,String(u))}catch{}},[e,u]);const m=_=>{d(typeof _=="function"?b=>l(_(b)):l(_))},g=()=>m(_=>+(_+o).toFixed(6)),y=()=>m(_=>+(_-o).toFixed(6)),C=u<r-Number.EPSILON,f=u>a+Number.EPSILON,v=Math.round(n*u),x=Math.round(v*i);return{scale:u,setScale:m,increase:g,decrease:y,canIncrease:C,canDecrease:f,fontSize:v,lineHeight:x}}const ni=s.createContext(null);function O0(e){return/max-width:\s*7[0-9][0-9]px/.test(e)}const ai=e=>typeof window>"u"||!window.matchMedia?!1:window.matchMedia(e).matches;function V0(e){const n=s.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 uo.useSyncExternalStore(n,()=>ai(e),()=>!1)}function H0(e){const[n,a]=s.useState(ai(e));return s.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const r=window.matchMedia(e),o=l=>a(l.matches),i=r;return i.addEventListener?i.addEventListener("change",o):i.addListener&&i.addListener(o),a(r.matches),()=>{i.removeEventListener?i.removeEventListener("change",o):i.removeListener&&i.removeListener(o)}},[e]),n}const z0=typeof uo.useSyncExternalStore=="function"?V0:H0;function Xt(e){const n=s.useContext(ni),a=z0(e);return n&&typeof n.mobile=="boolean"&&O0(e)?n.mobile:a}function cr(e){const n=s.useRef(e);return s.useEffect(()=>{n.current=e}),n}function ri(e,n){const a=cr(n);s.useEffect(()=>{const r=()=>a.current();try{window.addEventListener(e,r)}catch{}return()=>{try{window.removeEventListener(e,r)}catch{}}},[e,a])}const ur=" \xB7 ",oi=(()=>{if(typeof document>"u")return"";const e=document.title;return e.includes(ur)?e.split(ur).pop()??e:e})(),W0=s.createContext(!1),Dn=[];let si=null;function q0(e){const n=s.useContext(W0);s.useEffect(()=>{if(n||typeof e!="string"||!e)return;Dn.length===0&&(si=document.title);const a={text:oi?`${e}${ur}${oi}`:e};return Dn.push(a),document.title=a.text,()=>{const r=Dn.lastIndexOf(a);r>=0&&Dn.splice(r,1),document.title=Dn.length?Dn[Dn.length-1].text:si??document.title}},[e,n])}const ii=[{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"}];function U0(e,n,a){const{t:r}=he.useTranslation(),[o,i]=s.useState(()=>{const y=a?.initialPageSize;return y&&ii.some(C=>C.value===y)?y:"25"}),[l,c]=s.useState(1),[u,d]=s.useState(n);u!==n&&(d(n),l!==1&&c(1));const p=s.useMemo(()=>ii.map(y=>({...y,label:r("visits.showN",{n:y.value})})),[r]),h=s.useCallback(y=>{i(y),c(1)},[]),m=Math.max(1,Math.ceil(e.length/Number(o)));l>m&&c(m);const g=Math.min(l,m);return{pageRows:s.useMemo(()=>e.slice((g-1)*Number(o),g*Number(o)),[e,g,o]),pageSizeProps:{options:p,value:o,onChange:h},paginationProps:{page:g,total:m,onChange:c},setPage:c}}function G0(){const[e,n]=s.useState(null),a=s.useCallback(o=>{n(i=>i?.key===o?{key:o,asc:!i.asc}:{key:o,asc:!0})},[]),r=s.useCallback((o,i)=>({label:o,sortDir:e?.key===i?e.asc?"asc":"desc":null,onClick:()=>a(i)}),[e,a]);return{\uC815\uB82C:e,\uCE78:r}}const Jt="\uC804\uCCB4";Object.fromEntries(Object.entries(a0).map(([e,{nucleus:n}])=>[e,n]));const K0={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"})},Y0={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"})},Z0={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 X0(e,n){if("place"in n)return K0[n.place](e);const a=Y0[n.vowel](e);return n.glide?`${a} \xB7 ${Z0[n.glide](e)}`:a}const J0=(e,{defaultValue:n})=>n,li=(e,n)=>({jamos:e,phonetic:n,tooltip:X0(J0,n)}),rn=(e,n)=>n.map(a=>li([a],{place:e})),Ct=(e,n,a)=>li([...e],a?{vowel:n,glide:a}:{vowel:n}),dr={cho:[rn("labial",["\u3142","\u3143","\u314D","\u3141"]),rn("alveolar",["\u3137","\u3138","\u314C","\u3134","\u3139"]),rn("alveolar",["\u3145","\u3146"]),rn("palatal",["\u3148","\u3149","\u314A"]),rn("velar",["\u3131","\u3132","\u314B"]),rn("glottal",["\u314E"])],jung:[[Ct("\u3163","frontHigh"),Ct("\u315F","frontHigh","w"),Ct("\u3162","frontHigh","velar")],[Ct("\u3161","backHighUnrounded")],[Ct("\u315C","backHighRounded"),Ct("\u3160","backHighRounded","j")],[Ct("\u3154\u3150","frontMid"),Ct("\u3156\u3152","frontMid","j"),Ct("\u3159\u315A\u315E","frontMid","w")],[Ct("\u3153","backMidUnrounded"),Ct("\u3155","backMidUnrounded","j"),Ct("\u315D","backMidUnrounded","w")],[Ct("\u3157","backMidRounded"),Ct("\u315B","backMidRounded","j")],[Ct("\u314F","low"),Ct("\u3151","low","j"),Ct("\u3158","low","w")]],jong:[rn("labial",["\u3142","\u3141"]),rn("alveolar",["\u3137","\u3134","\u3139"]),rn("velar",["\u3131","\u3147"])]},Q0=e=>e===e2?[]:Array.from(e),e2="__NO_CODA__",pr=e=>e.map(n=>n.map(({jamos:a,phonetic:r,tooltip:o})=>({v:a.join(""),phonetic:r,tooltip:o}))),ci={cho:pr(dr.cho),jung:pr(dr.jung),jong:pr(dr.jong)};ci.jung.flat().forEach(({v:e})=>{for(const n of Q0(e));}),new Set(ci.cho.flat().map(e=>e.v));function t2(e,n=!0){const a=cr(e);s.useEffect(()=>{if(n)return Bn(()=>{a.current?.()})},[n,a])}function _a(){const[e,n]=s.useState(null),a=s.useCallback(i=>n(i.getBoundingClientRect()),[]),r=s.useCallback(()=>n(null),[]),o=s.useCallback(i=>{const l=i.getBoundingClientRect();n(c=>c?null:l)},[]);return{anchorRect:e,isOpen:e!=null,openAt:a,close:r,toggleAt:o}}function ui(e="warning"){const[n,a]=s.useState(""),[r,o]=s.useState(e),[i,l]=s.useState(0),c=s.useCallback((h,m)=>{o(m),a(h),l(g=>g+1)},[]),u=s.useCallback(h=>c(h,"warning"),[c]),d=s.useCallback(h=>c(h,"normal"),[c]),p=s.useCallback(()=>a(""),[]);return{toastMessage:n,toastType:r,toastKey:i,showToast:c,showWarning:u,showNormal:d,clearToast:p}}function na({computeStyle:e,onScroll:n="close",onResize:a="close",ignoreOutsideClickSelector:r}){const[o,i]=s.useState(!1),[l,c]=s.useState({}),u=s.useRef(null),d=s.useRef(null),p=s.useCallback(()=>{u.current&&c(e(u.current.getBoundingClientRect()))},[e]);s.useEffect(()=>{if(!o)return;p();const g=f=>{const v=f.target;r&&v.closest?.(r)||u.current?.contains(v)||d.current?.contains(v)||i(!1)};document.addEventListener("mousedown",g);const y=f=>{d.current?.contains(f.target)||(n==="reposition"?p():n==="close"&&i(!1))};n!=="ignore"&&window.addEventListener("scroll",y,!0);const C=()=>{a==="reposition"?p():a==="close"&&i(!1)};return a!=="ignore"&&window.addEventListener("resize",C),()=>{document.removeEventListener("mousedown",g),n!=="ignore"&&window.removeEventListener("scroll",y,!0),a!=="ignore"&&window.removeEventListener("resize",C)}},[o,p,n,a,r]),s.useEffect(()=>{if(o)return Bn(()=>i(!1))},[o]);const h=s.useCallback(()=>i(g=>!g),[]),m=s.useCallback(()=>i(!1),[]);return{open:o,setOpen:i,toggle:h,close:m,style:l,triggerRef:u,menuRef:d}}function n2(e,{mode:n="playback",autoStart:a=!1,onPlaySpeaker:r,onComplete:o,playMs:i=1100,feedbackMs:l=1500}={}){const[c,u]=s.useState([]),[d,p]=s.useState(0),[h,m]=s.useState("idle"),[g,y]=s.useState(null),[C,f]=s.useState([]),[v,x]=s.useState(null),[_,b]=s.useState(0),N=s.useRef(0),w=s.useCallback(V=>{N.current=typeof V=="function"?V(N.current):V,b(N.current)},[]),k=s.useRef(r),j=s.useRef(o);s.useEffect(()=>{k.current=r,j.current=o},[r,o]);const A=s.useRef([]),S=()=>{A.current.forEach(clearTimeout),A.current=[]},q=(V,T)=>{A.current.push(setTimeout(T,V))};s.useEffect(()=>()=>S(),[]);const W=c[d]?.id??null,B=s.useRef(null),O=s.useCallback(()=>{S(),m("playing"),f([]),x(null),w(0);let V=0;e.forEach((T,P)=>{q(V,()=>{p(P),y(T.id),k.current?.(T)}),q(V+1e3,()=>{y(null),f(F=>[...F,T.id])}),V+=1300}),q(V,()=>{m("done"),j.current?.({score:0,total:e.length})})},[e,w]),E=s.useCallback((V,T)=>{if(T>=V.length){m("done"),j.current?.({score:N.current,total:V.length});return}B.current=null,p(T),x(null),m("playing"),y(V[T].id),k.current?.(V[T]),q(i,()=>{y(null),m("waiting")})},[i]),ee=s.useCallback(()=>{S();const V=Qn(e);u(V),w(0),f([]),E(V,0)},[e,E,w]),M=s.useCallback(()=>{n==="playback"?(u(e),O()):ee()},[n,e,O,ee]),H=s.useCallback(()=>{S(),m("idle"),y(null),f([]),x(null),p(0),w(0),u([])},[w]),Q=e.map(V=>V.id).join("|");s.useEffect(()=>(a?M():H(),()=>S()),[n,Q,a]);const te=s.useCallback(V=>{h!=="waiting"||n==="playback"||B.current===d||(B.current=d,x(V),V===c[d]?.id&&w(T=>T+1),n==="exam"?(m("playing"),q(400,()=>E(c,d+1))):(m("feedback"),q(l,()=>E(c,d+1))))},[h,n,c,d,E,l,w]),Y=n==="playback"?e.length:c.length;return{bind:{activeSpeakerId:g,playedIds:C,selectedId:v,answerId:W,showFeedback:h==="feedback",clickable:h==="waiting",onSelectSpeaker:te},index:d,total:Y,score:_,phase:h,done:h==="done",start:M,reset:H}}function a2({title:e,description:n,actionLabel:a,onAction:r,bg:o,color:i,size:l="medium",actionVariant:c,titleColor:u,descriptionColor:d,className:p=""}){const h=o??i??"main",m=s.useRef(null),[g,y]=s.useState("main"),C=Xt("(max-width: 767px)"),f=s.useRef({title:!1,description:!1});s.useLayoutEffect(()=>{const _=m.current;if(!_)return;const b=lr(_),N=(w,k,j)=>{if(j!==void 0)_.style.setProperty(k,j),f.current[w]=!0;else if(f.current[w]){const A=b?.[w];A?_.style.setProperty(k,A):_.style.removeProperty(k),f.current[w]=!1}};N("title","--promo-banner-bg-title",u),N("description","--promo-banner-bg-description",d)},[u,d,h]),s.useLayoutEffect(()=>{const _=m.current;if(!_)return;const b=lr(_);y(b?.actionVariant??"main")},[h]);const v=ye("promo-banner",`promo-banner--${l}`,p),x=ei[h];return t.jsxs("div",{ref:m,className:v,role:"note",children:[t.jsx(x,{}),t.jsxs("div",{className:"promo-banner__text",children:[t.jsx("span",{className:`promo-banner__title ${l==="small"?"body-2":"h2"}`,children:e}),n&&t.jsx("span",{className:"promo-banner__description body-3",children:n})]}),a&&r&&t.jsx(oe,{htmlType:"button",size:40,variant:c??g,shape:"pill",useBorder:!0,onClick:r,ariaLabel:a,...C?{type:"dot",icon:"arrow-right"}:{rightIcon:"arrow-right",label:a,minWidth:140}})]})}function r2({children:e,interval:n=5e3,dotTone:a,className:r="","aria-label":o}){const{t:i}=he.useTranslation(),l=o??i("topBanner.ariaLabel","\uBC30\uB108"),c=s.Children.toArray(e),u=c.length,[d,p]=s.useState(0),[h,m]=s.useState(!1),g=u>0?d%u:0;return s.useEffect(()=>{if(u<2||n<=0||h)return;const y=window.setInterval(()=>p(C=>(C+1)%u),n);return()=>window.clearInterval(y)},[u,n,h]),u===0?null:t.jsxs("section",{className:ye("top-banner",r),"aria-label":l,"aria-roledescription":"carousel",onMouseEnter:()=>m(!0),onMouseLeave:()=>m(!1),onFocus:()=>m(!0),onBlur:()=>m(!1),children:[t.jsx("div",{className:"top-banner__viewport",children:t.jsx("div",{className:"top-banner__track",style:{transform:`translateX(-${g*100}%)`},children:c.map((y,C)=>t.jsx("div",{className:"top-banner__slide","aria-hidden":C!==g,...C!==g?{inert:!0}:{},children:y},C))})}),u>1&&t.jsx("div",{className:`top-banner__dots${(a?.[g]??"light")==="dark"?" top-banner__dots--dark":""}`,children:c.map((y,C)=>t.jsx("button",{type:"button",className:`top-banner__dot${C===g?" top-banner__dot--active":""}`,"aria-label":i("topBanner.dotAriaLabel",{count:u,index:C+1,defaultValue:`${u}\uAC1C \uC911 ${C+1}\uBC88\uC9F8 \uBC30\uB108`}),"aria-current":C===g,onClick:()=>p(C)},C))})]})}function o2({title:e,body:n,open:a=!1,onToggle:r,avatar:o,titleClassName:i="body-2",bodyClassName:l="body-2",className:c=""}){const{t:u}=he.useTranslation();return t.jsxs("div",{className:`accordion-item ${a?"accordion-item--open":""} ${c}`.trim(),role:"listitem",children:[t.jsxs("div",{className:"accordion-item__header",role:"button",tabIndex:0,"aria-expanded":a,"data-accordion-header":!0,onClick:r,onKeyDown:d=>{if(d.key==="Enter"||d.key===" ")d.preventDefault(),r?.();else if(d.key==="ArrowDown"||d.key==="ArrowUp"){d.preventDefault();const p=d.currentTarget.closest('[role="list"]');if(!p)return;const h=Array.from(p.querySelectorAll("[data-accordion-header]")),m=h.indexOf(d.currentTarget);(d.key==="ArrowDown"?h[m+1]:h[m-1])?.focus()}},children:[o&&t.jsx("div",{className:"accordion-item__avatar",children:o}),t.jsx("div",{className:`accordion-item__title ${i}`,children:e}),t.jsx("div",{className:"accordion-item__chevron",children:t.jsx(Oe,{icon:a?"chevron-up":"chevron-down",label:a?u("accordion.collapse","\uC811\uAE30"):u("accordion.expand","\uD3BC\uCE58\uAE30"),className:"accordion-item__chevron-icon",imgClassName:"accordion-item__chevron-image"})})]}),a&&t.jsx("div",{className:`accordion-item__body ${l}`,children:typeof n=="string"?t.jsx("p",{children:n}):n})]})}function s2({items:e=[],defaultOpenIndex:n=0,size:a=72,className:r="",bodyClassName:o}){const[i,l]=s.useState(n);return t.jsx("div",{className:`accordion-group accordion-group--s${a} ${r}`.trim(),role:"list",children:e.map((c,u)=>t.jsx(o2,{title:c.title,body:c.body,avatar:c.avatar,open:u===i,onToggle:()=>l(u===i?-1:u),bodyClassName:o},u))})}function i2(){return t.jsx("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:t.jsx("polyline",{points:"2,6 5,9 10,3"})})}function l2(){return t.jsxs("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round","aria-hidden":"true",children:[t.jsx("line",{x1:"3",y1:"3",x2:"9",y2:"9"}),t.jsx("line",{x1:"9",y1:"3",x2:"3",y2:"9"})]})}function c2(){return t.jsx("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round","aria-hidden":"true",children:t.jsx("line",{x1:"2.5",y1:"6",x2:"9.5",y2:"6"})})}function it(e){const{t:n}=he.useTranslation(),{type:a="bar",size:r,className:o="","aria-label":i,"aria-hidden":l}=e;if(a==="dot"){const{icon:N,number:w,position:k="top-right",onClick:j,animate:A=!1}=e,S=N??"check",q=w!==void 0?"number":S,W=typeof r=="number"?r:32,B=ye("circle-badge",`circle-badge--${q}`,`circle-badge--${k}`,`circle-badge--${W}`,A?"circle-badge--animate":"",j?"circle-badge--clickable":"",o),O=w!==void 0?n("badge.nthSelected",{n:w,defaultValue:"{{n}}\uBC88\uC9F8 \uC120\uD0DD"}):{check:n("badge.selected","\uC120\uD0DD\uB428"),remove:n("badge.remove","\uC81C\uAC70"),minus:n("badge.exclude","\uC81C\uC678")}[S];return t.jsxs("span",{className:B,onClick:j,onKeyDown:j?E=>{E.key!=="Enter"&&E.key!==" "||(E.preventDefault(),E.currentTarget.click())}:void 0,"aria-label":l?void 0:i??O,"aria-hidden":l||void 0,role:j?"button":void 0,tabIndex:j?0:void 0,children:[w!==void 0&&w,w===void 0&&S==="check"&&t.jsx(i2,{}),w===void 0&&S==="remove"&&t.jsx(l2,{}),w===void 0&&S==="minus"&&t.jsx(c2,{})]})}const{label:c,children:u,variant:d="default",fill:p="filled",minWidth:h,iconLeft:m,iconRight:g,color:y}=e,C=typeof r=="number"?"medium":r??"medium",f={small:"caption-2b",medium:"body-3b",large:"body-2b"}[C]??"body-2b",v={small:12,medium:14,large:16}[C]??14,x=ye("badge",`badge--${d}`,`badge--${C}`,p!=="filled"?`badge--${p}`:"",f,o),_=y?.startsWith("--")?`var(${y})`:y,b=h!==void 0||_?{...h!==void 0?{minWidth:typeof h=="number"?`${h}px`:h}:{},..._?{"--badge-color":_}:{}}:void 0;return t.jsxs("span",{className:x,style:b,"aria-label":l?void 0:i,role:i&&!l?"img":void 0,"aria-hidden":l||void 0,children:[m&&t.jsx(Oe,{icon:m,size:v,className:"badge__icon"}),c??u,g&&t.jsx(Oe,{icon:g,size:v,className:"badge__icon"})]})}function wa({columns:e=[],onClose:n,className:a="",size:r="medium"}){const{t:o}=he.useTranslation(),i=r==="small"?40:48,[l,c]=s.useState([]),u=s.useMemo(()=>{const f=[{title:null,columns:e}];let v=e;for(const x of l){const _=v?.[x.ci]?.items?.[x.ii];if(!_||!Array.isArray(_.children)||!_.children.length)break;v=[{title:null,items:_.children}],f.push({title:_.label||null,columns:v})}return f},[e,l]),d=u[u.length-1],p=u.length-1,h=s.useCallback(()=>c(f=>f.slice(0,Math.max(0,Math.min(f.length,p)-1))),[p]),m=s.useRef(null),g=s.useRef(null),y=u.length;s.useEffect(()=>{g.current||(g.current=document.activeElement);let f=0,v=0;const x=()=>{const _=m.current?.querySelector("button:not([disabled])");if(_&&_.offsetParent){_.focus({preventScroll:!0});return}v++<20&&(f=requestAnimationFrame(x))};return f=requestAnimationFrame(x),()=>cancelAnimationFrame(f)},[y]),s.useEffect(()=>()=>{g.current?.focus?.({preventScroll:!0})},[]);const C=s.useCallback((f,v,x)=>{if(f){if(Array.isArray(f.children)&&f.children.length){c(_=>[..._.slice(0,p),{ci:v,ii:x}]);return}try{typeof f.onClick=="function"&&f.onClick()}catch{}try{f&&f.closeOnSelect&&typeof n=="function"&&n()}catch{}}},[n,p]);return t.jsxs("div",{className:`tooltip-menu tooltip-menu--${r} ${a}`,children:[(u.length>1||d.title)&&t.jsxs("div",{className:"tooltip-menu__header",children:[u.length>1?t.jsx(oe,{htmlType:"button",size:i,type:"dot",icon:"chevron-left",ariaLabel:o("common.back","\uB4A4\uB85C"),onClick:h,variant:"transparent-gray",useBorder:!1}):null,t.jsx("div",{className:"tooltip-menu__title button-1",children:d.title})]}),t.jsx("div",{className:"tooltip-menu__columns",ref:m,children:d.columns&&d.columns.map((f,v)=>t.jsxs("div",{className:"tooltip-menu__column",children:[f.title?t.jsx("div",{className:"tooltip-menu__column-title body-3",children:f.title}):null,t.jsx("div",{className:"tooltip-menu__items",children:(f.items||[]).map((x,_)=>t.jsx(oe,{htmlType:"button",className:"tooltip-menu__item",size:i,type:x.label?"bar":"dot",icon:x.selected?"check":x.icon||"none",rightIcon:Array.isArray(x.children)&&x.children.length?"chevron-right":x.badgeCount?t.jsx(it,{type:"dot",position:"inline",number:Math.min(x.badgeCount,99),size:24,"aria-hidden":!0}):void 0,label:x.label,ariaLabel:x.label&&x.badgeCount&&x.badgeCount>0?o("nav.badgeLabel",{label:x.label,count:x.badgeCount,defaultValue:"{{label}}, {{count}}\uAC1C"}):x.label,onClick:()=>C(x,v,_),selected:x.selected,disabled:x.disabled,showTooltipInfo:x.tooltip||!1,useBorder:!1,align:"left"},_))})]},v))})]})}const u2=52,di=10,pi=e=>e&&e>0?e:0;function hi({items:e=[],activeKey:n,onChange:a,appMode:r,onAppModeChange:o,moreItems:i=[]}){const{t:l}=he.useTranslation(),c=r==="manager"?"malgwi":"manager",u=r==="manager"?"arrow-left":"arrow-right",d=r==="manager"?l("nav.modeLabelMalgwi","\uB9D0\uADC0"):l("nav.modeLabelManager","\uB9D0\uADC0 \uB9E4\uB2C8\uC800"),p=s.useRef(null),[h,m]=s.useState(0),g=e.length;s.useEffect(()=>{const M=p.current;if(!M||(m(M.clientWidth),typeof ResizeObserver>"u"))return;const H=new ResizeObserver(Q=>m(Q[0].contentRect.width));return H.observe(M),()=>H.disconnect()},[]);const y=h>0?Math.floor((h+di)/(u2+di)):g,C=h>0&&y<g,f=C?y:g,v=e.slice(0,f),x=e.slice(f),_=C||i.length>0,b=s.useCallback(M=>({position:"fixed",bottom:window.innerHeight-M.top+8,right:window.innerWidth-M.right,zIndex:1e4}),[]),N=s.useId(),{open:w,toggle:k,close:j,style:A,triggerRef:S,menuRef:q}=na({computeStyle:b,onScroll:"ignore",onResize:"ignore"}),W=s.useCallback((M,H)=>H>0?l("nav.badgeLabel",{label:M,count:H,defaultValue:"{{label}}, {{count}}\uAC1C"}):M,[l]),B=s.useCallback(()=>o?.(c),[o,c]),O=s.useMemo(()=>x.find(M=>M.key===n)??i.find(M=>M.selected||M.key&&M.key===n),[x,n,i]),E=s.useMemo(()=>[{items:[...x.map(M=>({label:M.label,icon:M.icon,badgeCount:M.badgeCount,selected:M.key===n,closeOnSelect:!0,onClick:()=>{M.key&&a&&a(M.key),j()}})),...i.map(M=>({label:M.label,icon:M.icon,badgeCount:M.badgeCount,selected:M.selected??(!!M.key&&M.key===n),closeOnSelect:!0,onClick:()=>{M.onClick?.(),j()}}))]}],[x,i,n,a,j]),ee=[...x,...i].reduce((M,H)=>M+pi(H.badgeCount),0);return t.jsxs("nav",{className:"bottom-nav","aria-label":l("nav.bottomNav","\uD558\uB2E8 \uB124\uBE44\uAC8C\uC774\uC158"),children:[o&&t.jsxs(t.Fragment,{children:[t.jsx("div",{className:"bottom-nav__left",children:t.jsx(oe,{htmlType:"button",size:52,type:"dot",icon:u,ariaLabel:d,className:"bottom-nav-item",onClick:B})}),t.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"})]}),t.jsx("div",{className:"bottom-nav__items",ref:p,children:v.map(M=>{const H=pi(M.badgeCount);return t.jsxs("span",{className:"bottom-nav__slot",children:[t.jsx(oe,{htmlType:"button",size:52,type:"dot",icon:M.icon,ariaLabel:W(M.label,H),selected:M.key===n,disabled:M.state==="disabled",className:"bottom-nav-item",onClick:()=>M.key&&a?.(M.key)}),H>0&&t.jsx("span",{"aria-hidden":"true",children:t.jsx(it,{type:"dot",position:"top-right",number:Math.min(H,99),size:24})})]},M.key)})}),_&&t.jsxs(t.Fragment,{children:[t.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"}),t.jsx("div",{className:"bottom-nav__right",children:t.jsxs("div",{ref:S,className:"bottom-nav__slot",children:[t.jsx(oe,{htmlType:"button",size:52,type:"dot",icon:O?.icon??"ellipsis",ariaLabel:W(O?.label??l("nav.more","\uB354\uBCF4\uAE30"),ee),selected:!!O,className:"bottom-nav-item",onClick:k,"aria-expanded":w,"aria-controls":w?N:void 0}),ee>0&&t.jsx("span",{"aria-hidden":"true",children:t.jsx(it,{type:"dot",position:"top-right",number:Math.min(ee,99),size:24})}),w&&It.createPortal(t.jsx("div",{id:N,role:"group","aria-label":l("nav.moreMenu","\uB354\uBCF4\uAE30 \uBA54\uB274"),className:"tooltip-content",style:A,ref:q,children:t.jsx(wa,{columns:E,onClose:j})}),document.body)]})})]})]})}function mi(e,n,a){return a&&a>0?e("nav.badgeLabel",{label:n,count:a,defaultValue:"{{label}}, {{count}}\uAC1C"}):n}function d2(e){const{t:n}=he.useTranslation(),{activeKey:a,unreadCount:r,onDebug:o,onNotification:i,onSetting:l,onHelp:c,onAccount:u}=e||{},d="default";return o||i||l||c||u?t.jsxs("div",{className:"side-nav__footer",children:[o&&t.jsx(oe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:d,icon:"terminal",ariaLabel:n("nav.debug","\uB514\uBC84\uADF8"),onClick:o,selected:a==="debug"}),i&&t.jsxs("span",{className:"side-nav__notification-wrap",children:[t.jsx(oe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:d,icon:"bell",ariaLabel:mi(n,n("nav.notifications","\uC54C\uB9BC"),r),onClick:i,selected:a==="notifications"}),!!r&&r>0&&t.jsx(it,{type:"dot",number:Math.min(r,99),size:24,"aria-hidden":!0})]}),l&&t.jsx(oe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:d,icon:"settings",ariaLabel:n("nav.settings","\uC124\uC815"),onClick:l,selected:a==="settings"}),c&&t.jsx(oe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:d,icon:"message-circle-question-mark",ariaLabel:n("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:c,selected:a==="help"}),u&&t.jsx(oe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:d,icon:"user-round",ariaLabel:n("nav.account","\uACC4\uC815"),onClick:u,selected:a==="account"})]}):null}function fi(e){const{t:n}=he.useTranslation(),{item:a,itemKey:r,label:o,icon:i,active:l,onClick:c,style:u,state:d,labelStyle:p}=e||{},h=a?.key??r??"",m=a?.label??o??"",g=a?.icon??i??"",y=a?.badge??0,C=t.jsx("span",{className:"side-nav__icon-wrap",children:t.jsx(Oe,{icon:g,label:typeof m=="string"?m:void 0,className:"side-nav__icon",maskClassName:"side-nav__icon-image",imgClassName:void 0,svgClassName:void 0})}),f=d==="disabled",v=`side-nav__item ${l?"active":""} ${d||""} ${f?"disabled":""} ${a?.child?"side-nav__item--child":""}`,x=s.useCallback(_=>{if(f)return;const b=_.detail>0;if(b)try{_.currentTarget.blur()}catch{}c?.(h,_.currentTarget,b)},[f,h,c]);return t.jsxs("button",{type:"button",className:v,onClick:x,"aria-label":typeof m=="string"?mi(n,m,y):void 0,style:u,"aria-disabled":f,children:[C,t.jsx("span",{className:"side-nav__label button-1 f",style:p,children:m}),y>0&&t.jsx(it,{type:"dot",position:"inline",number:Math.min(y,99),size:24,"aria-hidden":!0}),d==="loading"&&t.jsx("span",{className:"side-nav__spinner",role:"img","aria-label":n("loader.loading","\uBD88\uB7EC\uC624\uB294 \uC911\u2026")})]})}function Ci(e){const{t:n}=he.useTranslation(),{items:a=[],activeKey:r,onChange:o,unreadCount:i,onDebug:l,onNotification:c,onAccount:u,onSetting:d,onHelp:p,appMode:h,onAppModeChange:m}=e||{},g=h==="manager",y=s.useCallback(()=>m?.(g?"malgwi":"manager"),[m,g]);return t.jsxs("nav",{"aria-label":n("nav.mainMenu","\uBA54\uC778 \uBA54\uB274"),className:"side-nav__menu",children:[t.jsxs("div",{className:"side-nav__menu-list",children:[(a||[]).filter(C=>!C.section&&(C.key||C.label)).map((C,f)=>t.jsxs(s.Fragment,{children:[C.divider&&t.jsx("div",{className:"side-nav__separator"}),t.jsx(fi,{item:C,active:C.key===r,state:C.disabled?"disabled":void 0,onClick:(v,x,_)=>{if(C.disabled)return;if(C.href){if(window.open(C.href,"_blank","noopener,noreferrer"),_)try{x?.blur()}catch{}return}o?.(C.key);try{const N=document.querySelector(".content-area");N?N.scrollTop=0:window.scrollTo({top:0})}catch{}if(!_)return;try{x?.blur()}catch{}if(typeof window<"u"&&window.matchMedia){if(!window.matchMedia("(min-width: 768px) and (max-width: 1023px)").matches)return}else return;const b=document.querySelector(".header");if(b&&!(typeof b.matches=="function"&&b.matches(":hover"))){b.classList.add("header--force-collapsed");const N=()=>{b.classList.remove("header--force-collapsed"),b.removeEventListener("mouseenter",N)};b.addEventListener("mouseenter",N)}}})]},C.key??`side-nav__item-${f}`)),m&&t.jsx("div",{className:"side-nav__separator side-nav__separator--short"}),m&&t.jsx(fi,{item:{key:"__mode-switch__",label:g?n("nav.goToMalgwi","\uB9D0\uADC0\uB85C \uC774\uB3D9"):n("nav.goToManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800\uB85C \uC774\uB3D9"),icon:g?"arrow-left":"arrow-right"},onClick:y})]}),t.jsx(d2,{activeKey:r,unreadCount:i,onDebug:l,onNotification:c,onAccount:u,onSetting:d,onHelp:p})]})}var hr='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',mr='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',p2='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 gi({appMode:e}){const{t:n}=he.useTranslation(),a=e==="manager",r=a?mr:hr,o=p2,i=Xt("(min-width: 768px) and (max-width: 1023px)");return t.jsx("div",{className:"brand-identity__root","aria-label":n("header.biArea","BI \uC601\uC5ED"),children:i?t.jsx("img",{src:o,alt:n("header.biSymbol","BI \uC2EC\uBCFC"),className:"brand-identity__image"}):t.jsx("img",{src:r,alt:a?n("header.logoManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800 \uB85C\uACE0"):n("header.logoMalgwi","\uB9D0\uADC0 \uB85C\uACE0"),className:"brand-identity__image"})})}function bi({activeKey:e,onChange:n,items:a,malgwiItems:r,managerItems:o,unreadCount:i,onDebug:l,onNotification:c,onAccount:u,onSetting:d,onHelp:p,appMode:h,onAppModeChange:m}){const{t:g}=he.useTranslation(),y=Xt("(max-width: 767px)"),C=s.useMemo(()=>(a??[]).filter(q=>!q.section&&(q.key||q.label)).map(q=>({key:q.key,label:typeof q.label=="string"?q.label:void 0,icon:q.icon,state:q.disabled?"disabled":void 0,badgeCount:q.badge})),[a]),f=s.useCallback(q=>{const W=a?.find(B=>B.key===q);if(!W?.disabled){if(W?.href){window.open(W.href,"_blank","noopener,noreferrer");return}n?.(q)}},[a,n]),v=s.useMemo(()=>{const q=[];return l&&q.push({key:"debug",icon:"terminal",label:g("nav.debug","\uB514\uBC84\uADF8"),onClick:l}),c&&q.push({key:"notifications",icon:"bell",label:g("nav.notifications","\uC54C\uB9BC"),badgeCount:i,onClick:c}),d&&q.push({key:"settings",icon:"settings",label:g("nav.settings","\uC124\uC815"),onClick:d}),p&&q.push({key:"help",icon:"message-circle-question-mark",label:g("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:p}),u&&q.push({key:"account",icon:"user-round",label:g("nav.account","\uACC4\uC815"),onClick:u}),q},[g,l,c,d,p,u,i]),x=s.useCallback(q=>({position:"fixed",top:q.bottom+8,right:Math.max(8,window.innerWidth-q.right),zIndex:1e4}),[]),_=s.useId(),{open:b,toggle:N,close:w,style:k,triggerRef:j,menuRef:A}=na({computeStyle:x,onScroll:"ignore",onResize:"ignore"}),S=s.useMemo(()=>[{items:v.map(q=>({label:q.label,icon:q.icon,badgeCount:q.badgeCount,selected:q.selected??(!!q.key&&q.key===e),closeOnSelect:!0,onClick:()=>{q.onClick?.(),w()}}))}],[v,e,w]);return t.jsxs("aside",{className:`header${h==="manager"?" header--manager":""}`,children:[t.jsxs("div",{className:"header__bi",children:[t.jsx(gi,{appMode:h}),t.jsxs("div",{className:"header__menu-button",ref:j,children:[t.jsx(oe,{htmlType:"button",size:48,type:"dot",shape:"pill",variant:"default",icon:"menu",ariaLabel:c&&i&&i>0?g("nav.badgeLabel",{label:g("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),count:i,defaultValue:"{{label}}, {{count}}\uAC1C"}):g("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),onClick:N,"aria-expanded":b,"aria-controls":b?_:void 0}),!!c&&!!i&&i>0&&t.jsx(it,{type:"dot",number:Math.min(i,99),size:24,"aria-hidden":!0}),b&&It.createPortal(t.jsx("div",{id:_,role:"group","aria-label":g("header.utilMenu","\uC720\uD2F8\uB9AC\uD2F0 \uBA54\uB274"),className:"tooltip-content",style:k,ref:A,children:t.jsx(wa,{columns:S,onClose:w})}),document.body)]})]}),t.jsx(Ci,{items:a,activeKey:e??void 0,onChange:n,unreadCount:i,onDebug:l,onNotification:c,onAccount:u,onSetting:d,onHelp:p,appMode:h,onAppModeChange:m}),y&&t.jsx(hi,{items:C,activeKey:e??void 0,onChange:f,appMode:h,onAppModeChange:m})]})}const h2=bi;var m2={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",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."},f2={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"},C2={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"}},g2={clearAriaLabel:"\uAC80\uC0C9\uC5B4 \uC9C0\uC6B0\uAE30"},b2={starLabel:"{{n}}\uBC88\uC9F8 \uBCC4 \uC120\uD0DD",valueLabel:"{{max}}\uC810 \uB9CC\uC810\uC5D0 {{value}}\uC810",groupLabel:"\uBCC4\uC810"},y2={selected:"\uC120\uD0DD\uB428"},v2={placeholder:"\uC120\uD0DD"},x2={collapse:"\uC811\uAE30",expand:"\uD3BC\uCE58\uAE30"},_2={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"},w2={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",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"},k2={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."}}},A2={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."}},N2={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"}}},B2={guide:{faq:{title:"\uC790\uC8FC \uBB3B\uB294 \uC9C8\uBB38",desc:"FAQ \uBAA8\uC544\uBCF4\uAE30"}}},S2={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.",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:{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"}},D2={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"},j2={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"}},T2={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"}}}},E2={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"}},M2={unitVisit:"\uAC74",periodAll:"\uC804\uCCB4",showN:"{{n}}\uAC1C\uC529"},L2={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"}},$2={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."}},R2={comingSoon:"\uB2E8\uC5B4\uD6C8\uB828 \uAE30\uB2A5\uC744 \uC900\uBE44 \uC911\uC785\uB2C8\uB2E4."},P2={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"},I2={title:"\uC8FC\uC694 \uB2E8\uC5B4",empty:"\uCD94\uCD9C\uB41C \uC8FC\uC694 \uB2E8\uC5B4\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4."},F2={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:"\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\uC744 \uB20C\uB7EC \u25CB \xB7 \u25B3 \xB7 \u2715 \uB97C \uB9E4\uAE30\uC138\uC694.",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"}},O2={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"},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"}},V2={clearAllSelection:"\uBAA8\uB450 \uC120\uD0DD \uD574\uC81C",divLine:"\uB300\uB9BD\uC120",removePair:"\uB300\uB9BD\uC30D \uBE7C\uAE30",removeWord:"\uB2E8\uC5B4 \uBE7C\uAE30"},H2={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"}},z2={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"}},W2={passwordPlaceholder:"\uBE44\uBC00\uBC88\uD638 \uC785\uB825"},q2={subtitle:"\uC8FC\uC81C\uB97C \uC120\uD0DD\uD558\uC5EC \uB4E3\uAE30 \uC5F0\uC2B5\uC744 \uC9C4\uD589\uD558\uC138\uC694."},U2={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"}},G2={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"}},K2={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."]},Y2={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"}},Z2={lead:`\uC544\uC774\uD574\uBE0C\uB294 \uC18C\uB9AC\uB97C \uD1B5\uD574
828
828
  \uC2E0\uB8B0\uB97C \uC313\uACE0
829
- \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"},X2={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"}}},J2={timeHM:"{{h}}\uC2DC {{m}}\uBD84",timeH:"{{h}}\uC2DC"},Q2={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"}},ef={answer:"\uC815\uB2F5",distractor:"\uC624\uB2F5"},tf={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"},nf={clearAriaLabel:"\uC785\uB825\uAC12 \uC9C0\uC6B0\uAE30"},af={ariaLabel:"\uC120\uD0DD \uD0ED"},rf={ariaLabel:"\uD0ED"},of={dragPrompt:"\uD30C\uC77C\uC744 \uC774\uACF3\uC5D0 \uB4DC\uB798\uADF8\uD558\uC5EC \uC5C5\uB85C\uB4DC",browseButton:"\uD30C\uC77C \uC120\uD0DD",removeAriaLabel:"{{name}} \uC81C\uAC70"},sf={ariaLabel:"\uC0AC\uC6A9\uC790 \uC544\uBC14\uD0C0"},lf={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"}},cf={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"}},uf={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"}},df={manage:{unit:"\uAC74"}},pf={cancelLabel:"\uCDE8\uC18C"},hf={steps:"\uC9C4\uD589 \uB2E8\uACC4 {{current}} / {{total}}"},mf={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"},ff={resetColumns:"\uCE78 \uB108\uBE44 \uCD08\uAE30\uD654"},Cf={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"},gf={ariaLabel:"\uBC30\uB108",dotAriaLabel:"{{count}}\uAC1C \uC911 {{index}}\uBC88\uC9F8 \uBC30\uB108"},bf={selectYearMonth:"\uC5F0\uC6D4 \uC120\uD0DD",chooseDate:"\uB0A0\uC9DC \uC120\uD0DD"},yf={previewRegion:"\uBCF4\uACE0\uC11C \uBBF8\uB9AC\uBCF4\uAE30 \u2014 \uC88C\uC6B0\uB85C \uAD74\uB824 \uBCFC \uC218 \uC788\uC2B5\uB2C8\uB2E4"},vf={description:"\uC124\uBA85",textbox:"\uBCF8\uBB38",training:"\uD6C8\uB828 \uC548\uB0B4",menu:"\uBA54\uB274"},xf={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"}},_f={clearSelection:"\uC120\uD0DD \uD574\uC81C"},wf={showResult:"{{type}} \uACB0\uACFC\uBCF4\uAE30"},kf={selected:"\uC120\uD0DD\uB428",remove:"\uC81C\uAC70",exclude:"\uC81C\uC678",nthSelected:"{{n}}\uBC88\uC9F8 \uC120\uD0DD"},Af={loading:"\uBD88\uB7EC\uC624\uB294 \uC911\u2026"},Nf={state:{active:"\uC18C\uB9AC \uB098\uB294 \uC911",played:"\uB4E4\uC74C",correct:"\uC815\uB2F5",wrong:"\uC624\uB2F5"}},Bf={ariaLabel:"\uC774\uB3D9 \uACBD\uB85C"},Sf={common:m2,calendar:f2,passCard:C2,searchField:g2,rating:b2,colorPicker:y2,dropdown:v2,accordion:x2,header:_2,nav:w2,settings:k2,usage:A2,account:N2,help:B2,training:S2,trainingSettings:D2,customers:j2,payment:T2,coupons:E2,visits:M2,company:L2,trainingType:$2,myWordTraining:R2,myWordTable:P2,keyWords:I2,wordTable:F2,wordSearch:O2,wordPrint:H2,topic:V2,accessLinkManager:z2,login:W2,trainingPlanRun:q2,device:U2,manager:G2,wordPairs:K2,game:Y2,footer:Z2,landing:X2,date:J2,trainingSetPage:Q2,wordTrainingPreview:ef,wordData:tf,textField:nf,segmentedControl:af,tabs:rf,fileUpload:of,avatar:sf,myHomework:lf,trainingStatus:cf,store:uf,homework:df,inquiry:pf,progress:hf,trainingMiss:mf,table:ff,wordScore:Cf,topBanner:gf,datePicker:bf,report:yf,tooltip:vf,phonemeProfile:xf,bulkBar:_f,debug:wf,badge:kf,loader:Af,soundCompass:Nf,breadcrumb:Bf},Df={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",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."},jf={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"},Tf={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"}},Ef={clearAriaLabel:"Clear search"},Mf={starLabel:"Select star {{n}}",valueLabel:"{{value}} out of {{max}}",groupLabel:"Rating"},Lf={selected:"selected"},$f={placeholder:"Select"},Rf={collapse:"Collapse",expand:"Expand"},Pf={biArea:"BI area",biSymbol:"BI symbol",logoMalgwi:"Malgwi logo",logoManager:"Malgwi Manager logo",menuOpen:"Open menu",utilMenu:"Utility menu",menuClose:"Close menu"},If={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",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}}"},Ff={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."}}},Of={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"}},Hf={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"}}},Vf={guide:{faq:{title:"FAQ",desc:"View all frequently asked questions"}}},zf={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.",selectConfirm:"Look at the question and select the answer.",orderListDefault:"Arrange the sentences in the order you heard.",result:{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"}},Wf={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"},qf={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"}},Uf={plan:{recommendedFor:"Recommended for",features:"Key Features",freePrice:"Free",contact:"Contact Us",tierFallback:"Plan",openPromo:"Launch offer"},products:{mgrEnterprise:{tier:{price:"Contact us"}}}},Gf={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"}},Kf={unitVisit:"",periodAll:"All",showN:"Show {{n}}"},Yf={subtitle:"Manage company and business information",editButton:"Edit Info",basicInfo:{title:"Basic Info"},contactInfo:{title:"Contact Info"}},Zf={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."}},Xf={comingSoon:"Word training is coming soon."},Jf={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"},Qf={title:"Key Words",empty:"No key words available."},eC={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",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 a cell to mark \u25CB \xB7 \u25B3 \xB7 \u2715.",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"}},tC={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"},pageSize:"Show {{count}}",pageSizeAria:"Page size",popup:{title:"Select a word for cell {{n}}"}},nC={clearAllSelection:"Clear All Selections",divLine:"Contrast Line",removePair:"Remove pair",removeWord:"Remove word"},aC={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"}},rC={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"}},oC={passwordPlaceholder:"Enter password"},sC={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"}},iC={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"}},lC={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."]},cC={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"}},uC={lead:`IHAB builds trust
829
+ \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"},X2={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"}}},J2={timeHM:"{{h}}\uC2DC {{m}}\uBD84",timeH:"{{h}}\uC2DC"},Q2={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"}},ef={answer:"\uC815\uB2F5",distractor:"\uC624\uB2F5"},tf={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"},nf={clearAriaLabel:"\uC785\uB825\uAC12 \uC9C0\uC6B0\uAE30"},af={ariaLabel:"\uC120\uD0DD \uD0ED"},rf={ariaLabel:"\uD0ED"},of={dragPrompt:"\uD30C\uC77C\uC744 \uC774\uACF3\uC5D0 \uB4DC\uB798\uADF8\uD558\uC5EC \uC5C5\uB85C\uB4DC",browseButton:"\uD30C\uC77C \uC120\uD0DD",removeAriaLabel:"{{name}} \uC81C\uAC70"},sf={ariaLabel:"\uC0AC\uC6A9\uC790 \uC544\uBC14\uD0C0"},lf={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"}},cf={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"}},uf={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"}},df={manage:{unit:"\uAC74"}},pf={cancelLabel:"\uCDE8\uC18C"},hf={steps:"\uC9C4\uD589 \uB2E8\uACC4 {{current}} / {{total}}"},mf={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"},ff={resetColumns:"\uCE78 \uB108\uBE44 \uCD08\uAE30\uD654"},Cf={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"},gf={ariaLabel:"\uBC30\uB108",dotAriaLabel:"{{count}}\uAC1C \uC911 {{index}}\uBC88\uC9F8 \uBC30\uB108"},bf={selectYearMonth:"\uC5F0\uC6D4 \uC120\uD0DD",chooseDate:"\uB0A0\uC9DC \uC120\uD0DD"},yf={previewRegion:"\uBCF4\uACE0\uC11C \uBBF8\uB9AC\uBCF4\uAE30 \u2014 \uC88C\uC6B0\uB85C \uAD74\uB824 \uBCFC \uC218 \uC788\uC2B5\uB2C8\uB2E4"},vf={description:"\uC124\uBA85",textbox:"\uBCF8\uBB38",training:"\uD6C8\uB828 \uC548\uB0B4",menu:"\uBA54\uB274"},xf={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"}},_f={clearSelection:"\uC120\uD0DD \uD574\uC81C"},wf={showResult:"{{type}} \uACB0\uACFC\uBCF4\uAE30"},kf={selected:"\uC120\uD0DD\uB428",remove:"\uC81C\uAC70",exclude:"\uC81C\uC678",nthSelected:"{{n}}\uBC88\uC9F8 \uC120\uD0DD"},Af={loading:"\uBD88\uB7EC\uC624\uB294 \uC911\u2026"},Nf={state:{active:"\uC18C\uB9AC \uB098\uB294 \uC911",played:"\uB4E4\uC74C",correct:"\uC815\uB2F5",wrong:"\uC624\uB2F5"}},Bf={ariaLabel:"\uC774\uB3D9 \uACBD\uB85C"},Sf={common:m2,calendar:f2,passCard:C2,searchField:g2,rating:b2,colorPicker:y2,dropdown:v2,accordion:x2,header:_2,nav:w2,settings:k2,usage:A2,account:N2,help:B2,training:S2,trainingSettings:D2,customers:j2,payment:T2,coupons:E2,visits:M2,company:L2,trainingType:$2,myWordTraining:R2,myWordTable:P2,keyWords:I2,wordTable:F2,wordSearch:O2,wordPrint:V2,topic:H2,accessLinkManager:z2,login:W2,trainingPlanRun:q2,device:U2,manager:G2,wordPairs:K2,game:Y2,footer:Z2,landing:X2,date:J2,trainingSetPage:Q2,wordTrainingPreview:ef,wordData:tf,textField:nf,segmentedControl:af,tabs:rf,fileUpload:of,avatar:sf,myHomework:lf,trainingStatus:cf,store:uf,homework:df,inquiry:pf,progress:hf,trainingMiss:mf,table:ff,wordScore:Cf,topBanner:gf,datePicker:bf,report:yf,tooltip:vf,phonemeProfile:xf,bulkBar:_f,debug:wf,badge:kf,loader:Af,soundCompass:Nf,breadcrumb:Bf},Df={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",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."},jf={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"},Tf={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"}},Ef={clearAriaLabel:"Clear search"},Mf={starLabel:"Select star {{n}}",valueLabel:"{{value}} out of {{max}}",groupLabel:"Rating"},Lf={selected:"selected"},$f={placeholder:"Select"},Rf={collapse:"Collapse",expand:"Expand"},Pf={biArea:"BI area",biSymbol:"BI symbol",logoMalgwi:"Malgwi logo",logoManager:"Malgwi Manager logo",menuOpen:"Open menu",utilMenu:"Utility menu",menuClose:"Close menu"},If={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",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}}"},Ff={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."}}},Of={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"}},Vf={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"}}},Hf={guide:{faq:{title:"FAQ",desc:"View all frequently asked questions"}}},zf={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.",selectConfirm:"Look at the question and select the answer.",orderListDefault:"Arrange the sentences in the order you heard.",result:{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"}},Wf={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"},qf={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"}},Uf={plan:{recommendedFor:"Recommended for",features:"Key Features",freePrice:"Free",contact:"Contact Us",tierFallback:"Plan",openPromo:"Launch offer"},products:{mgrEnterprise:{tier:{price:"Contact us"}}}},Gf={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"}},Kf={unitVisit:"",periodAll:"All",showN:"Show {{n}}"},Yf={subtitle:"Manage company and business information",editButton:"Edit Info",basicInfo:{title:"Basic Info"},contactInfo:{title:"Contact Info"}},Zf={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."}},Xf={comingSoon:"Word training is coming soon."},Jf={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"},Qf={title:"Key Words",empty:"No key words available."},eC={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",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 a cell to mark \u25CB \xB7 \u25B3 \xB7 \u2715.",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"}},tC={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"},pageSize:"Show {{count}}",pageSizeAria:"Page size",popup:{title:"Select a word for cell {{n}}"}},nC={clearAllSelection:"Clear All Selections",divLine:"Contrast Line",removePair:"Remove pair",removeWord:"Remove word"},aC={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"}},rC={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"}},oC={passwordPlaceholder:"Enter password"},sC={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"}},iC={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"}},lC={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."]},cC={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"}},uC={lead:`IHAB builds trust
830
830
  through sound
831
- 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"},dC={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"}}},pC={timeHM:"{{hh}}:{{mm}}",timeH:"{{hh}}:{{mm}}"},hC={options:"Training Options",difficulty:"Difficulty",exclude:"Exclude",chosung:"Initial Consonant",excludeOptions:{none:"None",noImage:"No Image"}},mC={answer:"Answer",distractor:"Distractor"},fC={phaseWordDownload:"Download Word Data",phaseImageCheck:"Check Images",phasePairAnalysis:"Analyze Word Pairs",downloadingCount:"Downloading {{n}} words",checkingPage:"Checking page {{page}} list",imageCount:"{{done}} / {{total}} items"},CC={clearAriaLabel:"Clear input"},gC={ariaLabel:"Select tab"},bC={ariaLabel:"Tabs"},yC={dragPrompt:"Drag and drop files here",browseButton:"Choose Files",removeAriaLabel:"Remove {{name}}"},vC={ariaLabel:"User avatar"},xC={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"}},_C={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"}},wC={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)"}},kC={manage:{unit:"item(s)"}},AC={cancelLabel:"Cancel"},NC={subtitle:"Select a topic to start listening practice."},BC={steps:"Step {{current}} of {{total}}"},SC={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"},DC={resetColumns:"Reset column widths"},jC={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}}"},TC={ariaLabel:"Banner",dotAriaLabel:"Banner {{index}} of {{count}}"},EC={selectYearMonth:"Select year and month",chooseDate:"Choose a date"},MC={previewRegion:"Report preview \u2014 scrollable sideways"},LC={description:"Description",textbox:"Text",training:"Training guide",menu:"Menu"},$C={devNone:"No acquisition data",place:{labial:"Bilabial",alveolar:"Alveolar",palatal:"Palatal",velar:"Velar",glottal:"Glottal"}},RC={clearSelection:"Clear selection"},PC={showResult:"Show {{type}} result"},IC={selected:"Selected",remove:"Remove",exclude:"Excluded",nthSelected:"Selection {{n}}"},FC={loading:"Loading"},OC={state:{active:"playing",played:"heard",correct:"correct",wrong:"wrong"}},HC={ariaLabel:"Breadcrumb"},VC={common:Df,calendar:jf,passCard:Tf,searchField:Ef,rating:Mf,colorPicker:Lf,dropdown:$f,accordion:Rf,header:Pf,nav:If,settings:Ff,usage:Of,account:Hf,help:Vf,training:zf,trainingSettings:Wf,customers:qf,payment:Uf,coupons:Gf,visits:Kf,company:Yf,trainingType:Zf,myWordTraining:Xf,myWordTable:Jf,keyWords:Qf,wordTable:eC,wordSearch:tC,wordPrint:nC,topic:aC,accessLinkManager:rC,login:oC,device:sC,manager:iC,wordPairs:lC,game:cC,footer:uC,landing:dC,date:pC,trainingSetPage:hC,wordTrainingPreview:mC,wordData:fC,textField:CC,segmentedControl:gC,tabs:bC,fileUpload:yC,avatar:vC,myHomework:xC,trainingStatus:_C,store:wC,homework:kC,inquiry:AC,trainingPlanRun:NC,progress:BC,trainingMiss:SC,table:DC,wordScore:jC,topBanner:TC,datePicker:EC,report:MC,tooltip:LC,phonemeProfile:$C,bulkBar:RC,debug:PC,badge:IC,loader:FC,soundCompass:OC,breadcrumb:HC};const zC=[{code:"ko",label:"\uD55C\uAD6D\uC5B4"},{code:"en",label:"English"}],yi="ko",WC="ihab_display_language";function vi(){try{const e=localStorage.getItem(WC);if(e&&zC.some(n=>n.code===e))return e}catch{}return yi}function xi(e){try{document.documentElement.lang=e}catch{}}Dt.on("languageChanged",xi),xi(vi()),Dt.use(he.initReactI18next).init({resources:{ko:{translation:Sf},en:{translation:VC}},lng:vi(),fallbackLng:yi,interpolation:{escapeValue:!1},react:{useSuspense:!1}});function _i(e){if(!(e==null||e===""))return ea(typeof e=="number"?`${e.toLocaleString("ko-KR")}\uC6D0`:e)}function qC(e){const n=`${e.code??""} ${e.name??""}`.toLowerCase();return/manager|매니저/.test(n)?"manager":"speechear"}function UC(e){if(e.durationDays&&e.durationDays>0){const i=e.durationDays;return i%365===0?`${i/365}\uB144`:`${i}\uC77C`}const n=(e.code??"").match(/(\d+)(d|y)\b/i);if(n)return n[2].toLowerCase()==="y"?`${n[1]}\uB144`:`${n[1]}\uC77C`;const a=e.name??"",r=a.match(/(\d+\s*(?:년|개월|주|일))\s*(?:이용권)?\s*$/);if(r)return r[1].replace(/\s+/g,"");const o=a.match(/(\d+)\s*-?\s*(day|year)s?\b/i);return o?o[2].toLowerCase()==="year"?`${o[1]}\uB144`:`${o[1]}\uC77C`:a||"\uC774\uC6A9\uAD8C"}function GC(e){const n=(e??"").match(/(\d+)(d|y)\b/i);if(!n)return null;const a=Number(n[1]);return n[2].toLowerCase()==="y"?a*365:a}function wi(e){return{type:e.type??qC(e),plan:UC(e),label:e.label,price:_i(e.price),originalPrice:_i(e.originalPrice),discountLabel:e.discountLabel}}var KC='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',YC='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>',ZC='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',XC='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',JC='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>',QC='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',ki='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 jn={text:"--pass-card-text",sub:"--pass-card-sub",copyright:"--pass-card-copyright"},fr=new WeakMap;function eg(e){if(e)return fr.get(e)}function on(e,n){e&&(e.style.setProperty(jn.text,n.text),e.style.setProperty(jn.sub,n.sub),n.copyrightColor&&e.style.setProperty(jn.copyright,n.copyrightColor),fr.set(e,n))}function sn(e){e&&(e.style.removeProperty(jn.text),e.style.removeProperty(jn.sub),e.style.removeProperty(jn.copyright),fr.delete(e))}const Ai={text:"var(--color-pureBlack)",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#1a1a1a"};function Ni(e={}){const n=st(Ai,on,sn);return t.jsxs("div",{ref:n,className:"pass-card-bg pass-card-bg-two-circle","aria-hidden":"true",children:[t.jsx("div",{className:"pass-card-bg-two-circle__c1"}),t.jsx("div",{className:"pass-card-bg-two-circle__c3"}),t.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-two-circle__symbol",style:{"--symbol-url":`url("${ki}")`}})]})}const Bi="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 aa='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 tg={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"},ng=[{scale:1,opacity:.55},{scale:2,opacity:.4},{scale:3.1,opacity:.28},{scale:4.5,opacity:.18},{scale:6,opacity:.1}];function Si(e={}){const n=st(tg,on,sn),a="var(--color-main)",r=270,o=170;return t.jsxs("div",{ref:n,className:"pass-card-bg pass-card-bg-sound-move","aria-hidden":"true",children:[t.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:ng.map(({scale:i,opacity:l},c)=>t.jsx("g",{transform:`translate(${r} ${o}) scale(${i}) translate(-50 -50)`,opacity:l,children:t.jsx("path",{d:Bi,fill:"none",stroke:a,strokeWidth:"1.5",vectorEffect:"non-scaling-stroke"})},c))}),t.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-move__symbol",style:{"--symbol-url":`url("${aa}")`}})]})}const ag={text:"#ffffff",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",logoColor:"_white",copyrightColor:"#ffffff"},rg=[{scale:1,opacity:.55},{scale:2,opacity:.4},{scale:3.1,opacity:.28},{scale:4.5,opacity:.18},{scale:6,opacity:.1}];function og(e={}){const n=st(ag,on,sn),a="#ffffff",r=270,o=170;return t.jsxs("div",{ref:n,className:"pass-card-bg pass-card-bg-sound-move-v1","aria-hidden":"true",children:[t.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:rg.map(({scale:i,opacity:l},c)=>t.jsx("g",{transform:`translate(${r} ${o}) scale(${i}) translate(-50 -50)`,opacity:l,children:t.jsx("path",{d:Bi,fill:"none",stroke:a,strokeWidth:"1.5",vectorEffect:"non-scaling-stroke"})},c))}),t.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-move-v1__symbol",style:{"--symbol-url":`url("${ki}")`}})]})}const sg={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"};function ig(e={}){const n=st(sg,on,sn);return t.jsxs("div",{ref:n,className:"pass-card-bg pass-card-bg-talk","aria-hidden":"true",children:[t.jsx("div",{className:"pass-card-bg-talk__shape pass-card-bg-talk__shape--left"}),t.jsx("div",{className:"pass-card-bg-talk__shape pass-card-bg-talk__shape--right"}),t.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-talk__symbol",style:{"--symbol-url":`url("${aa}")`}})]})}const lg={Logo_speechear_kr:{"":hr,_white:KC,_textWhite:YC,_black:ZC},Logo_speechearManager_kr:{"":mr,_white:XC,_textWhite:JC,_black:QC}};function cg(e,n){if(e)return lg[e]?.[n??""]??void 0}const ug={speechear:hr,manager:mr},dg={speechear:"Logo_speechear_kr",manager:"Logo_speechearManager_kr"},Di=10;function pg(e,n){if(e<=0)return n("passCard.remainingSecond",{n:0});const a=Math.floor(e/86400);if(a>0)return n("passCard.remainingDay",{n:a});const r=Math.floor(e/3600);if(r>0)return n("passCard.remainingHour",{n:r});const o=Math.floor(e/60);return o>0?n("passCard.remainingMinute",{n:o}):n("passCard.remainingSecond",{n:Math.floor(e)})}function hg(e,n,a){if(e==="manager"){const r=/년/.test(n)||/yr|year/i.test(n)||/1년|365/.test(n),o=a==="\uC624\uD508\uD2B9\uAC00"||a===Dt.t("passCard.specialLabel");return r?t.jsx(ig,{}):o?t.jsx(og,{}):t.jsx(Si,{})}return t.jsx(Ni,{})}function ji({product:e,showPrice:n=!1,plan:a,type:r,endDate:o,remainingSeconds:i,state:l="active",bg:c,bgOnly:u=!1,textColor:d,subColor:p,copyrightColor:h,logoSrc:m,label:g,price:y,originalPrice:C,discountLabel:f,onUse:v,onRefund:x,onDelete:_}){const{t:b}=he.useTranslation(),N=e?wi(e):void 0,w=r??N?.type??"speechear",k=a??N?.plan??"\uC774\uC6A9\uAD8C",j=g??N?.label,A=y??(n?N?.price:void 0),S=C??(n?N?.originalPrice:void 0),q=f??N?.discountLabel,W=s.useMemo(()=>{if(A)return null;const Z=e?.durationDays??GC(e?.code);if(!Z||Z<=0)return null;const ie=Z*86400;let J;if(i!=null)J=i;else if((l==="active"||l==="expired")&&o){const xe=new Date(o).getTime();if(Number.isNaN(xe))return null;const Ce=new Date;Ce.setHours(0,0,0,0);const fe=new Date(xe);fe.setHours(0,0,0,0);const ve=Math.round((fe.getTime()-Ce.getTime())/864e5);J=Math.max(0,ve)*86400}else l==="expired"?J=0:J=ie;const be=Math.max(0,Math.min(100,Math.floor(Math.min(J,ie)/ie*100)));return l==="pending"&&be>=100?null:{percent:be,remainingLabel:pg(J,b)}},[A,l,o,i,e?.durationDays,e?.code,b]),B=s.useRef(null),[F,E]=s.useState({}),[te,$]=s.useState(null),H=!!(v||x||_),Q=s.useRef(!1),ee=s.useRef(void 0),[Y,O]=s.useState(m);s.useLayoutEffect(()=>{O(m)},[m]),s.useLayoutEffect(()=>{const Z=B.current;Z&&(d!==void 0&&Z.style.setProperty("--pass-card-text",d),p!==void 0&&Z.style.setProperty("--pass-card-sub",p),h!==void 0&&Z.style.setProperty("--pass-card-copyright",h))},[d,p,h]),s.useLayoutEffect(()=>{const Z=B.current;if(!Z)return;const ie=eg(Z);if(!m){const J=dg[w],be=l==="expired"?"_black":ie?.logoColor??"",xe=cg(J,be);O(xe)}},[c,m,w,l]);const T=Z=>{const ie=B.current;if(!ie)return null;const{left:J,top:be,width:xe,height:Ce}=ie.getBoundingClientRect(),fe=(Z.clientX-J)/xe-.5;return{rotateX:-((Z.clientY-be)/Ce-.5)*Di,rotateY:fe*Di}},M=(Z,ie)=>{const J=ie*-.7,be=Z*.7+10,xe=20+(Math.abs(Z)+Math.abs(ie))*.4;return`${J}px ${be}px ${xe}px rgba(0, 0, 0, 0.18)`},V=s.useCallback(Z=>{Q.current=!0,clearTimeout(ee.current),ee.current=setTimeout(()=>{Q.current=!1},200);const ie=T(Z);ie&&E({transform:`perspective(800px) rotateX(${ie.rotateX}deg) rotateY(${ie.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:M(ie.rotateX,ie.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)"})},[]),I=s.useCallback(Z=>{const ie=T(Z);if(!ie)return;const J=Q.current?"transform 0.2s ease, box-shadow 0.2s ease":"none";E({transform:`perspective(800px) rotateX(${ie.rotateX}deg) rotateY(${ie.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:M(ie.rotateX,ie.rotateY),transition:J})},[]),P=s.useCallback(()=>{clearTimeout(ee.current),Q.current=!1,E({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)"})},[]),z=s.useCallback(()=>$(null),[]),ae=s.useMemo(()=>{const Z=k.replace("\uC774\uC6A9\uAD8C","").trim(),ie=Z.match(/^(.*?)(일|년)$/);return ie?t.jsxs(t.Fragment,{children:[t.jsx("span",{className:"h0 pass-card__plan-number",children:ie[1]}),t.jsx("span",{className:"h5b pass-card__plan-unit",children:ie[2]==="\uB144"?b("passCard.unitYear","\uB144"):b("passCard.unitDay","\uC77C")})]}):t.jsx("span",{className:"h0",children:Z})},[k,b]),ne=s.useMemo(()=>{const Z=ea(A);if(!Z)return null;const ie=Z.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!ie)return t.jsx("span",{className:"h1",children:Z});const[,J,be,xe]=ie;return t.jsxs(t.Fragment,{children:[J&&t.jsx("span",{className:"h5 pass-card__price-symbol",children:J}),t.jsx("span",{className:"h1 pass-card__price-amount",children:be}),xe.trim()&&t.jsx("span",{className:"h5 pass-card__price-symbol",children:xe.trim()})]})},[A]),re=s.useCallback(()=>{H&&$(Z=>{if(Z)return null;const ie=B.current?.getBoundingClientRect();if(!ie)return null;const J=50;return{left:ie.left,right:ie.right,width:ie.width,height:ie.height,x:ie.x,y:ie.y+J,top:ie.top+J,bottom:ie.bottom+J}})},[H]),pe=s.useCallback(Z=>{H&&(Z.key==="Enter"||Z.key===" ")&&(Z.preventDefault(),re())},[H,re]),_e=[{items:[...v?[{label:b("passCard.menu.use","\uC0AC\uC6A9\uD558\uAE30"),icon:"play",onClick:()=>{v(),$(null)},closeOnSelect:!0}]:[],...x?[{label:b("passCard.menu.refund","\uD658\uBD88\uD558\uAE30"),icon:"rotate-ccw",onClick:()=>{x(),$(null)},closeOnSelect:!0}]:[],..._?[{label:b("passCard.menu.delete","\uC0AD\uC81C\uD558\uAE30"),icon:"trash-2",onClick:()=>{_(),$(null)},closeOnSelect:!0}]:[]]}];return t.jsxs(t.Fragment,{children:[t.jsx("div",{className:"pass-card-frame",children:t.jsxs("div",{ref:B,className:`pass-card pass-card--${l}${H?" pass-card--clickable":""}`,style:F,onMouseEnter:V,onMouseMove:I,onMouseLeave:P,onClick:re,onKeyDown:H?pe:void 0,role:H?"button":void 0,tabIndex:H?0:void 0,"aria-haspopup":H?"menu":void 0,"aria-expanded":H?!!te:void 0,children:[c??hg(w,k,j),!u&&t.jsxs(t.Fragment,{children:[t.jsx("div",{className:"pass-card__top",children:t.jsxs("div",{className:"pass-card__top-left",children:[t.jsx("img",{src:Y??ug[w],className:"pass-card__logo",alt:w==="manager"?b("header.logoManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800 \uB85C\uACE0"):b("header.logoMalgwi","\uB9D0\uADC0 \uB85C\uACE0")}),t.jsxs("div",{className:"pass-card__plan",children:[t.jsx("div",{children:ae}),t.jsx("span",{className:"h5b pass-card__plan-suffix",children:j?b("passCard.labeledPlan",{label:j}):b("passCard.planSuffix","\uC774\uC6A9\uAD8C")})]})]})}),A?t.jsxs("div",{className:"pass-card__price-area",children:[q&&t.jsx("span",{className:"pass-card__discount body-3",children:q}),t.jsxs("div",{className:"pass-card__price",children:[S&&t.jsx("span",{className:"pass-card__price-original body-3",children:ea(S)}),ne]})]}):W?t.jsxs("div",{className:"pass-card__usage",children:[t.jsx("span",{className:"h5b pass-card__usage-remaining",children:W.remainingLabel}),t.jsxs("span",{className:"pass-card__usage-percent",children:[t.jsx("span",{className:"h1 pass-card__usage-value",children:W.percent}),t.jsx("span",{className:"h5b pass-card__usage-symbol",children:"%"})]})]}):t.jsx("div",{className:"pass-card__copyright caption-2",children:"\xA9 IHAB Corp. All rights reserved."})]})]})}),te&&t.jsx(Cn,{anchorRect:te,onClose:z,ariaLabel:b("tooltip.menu","\uBA54\uB274"),children:t.jsx(wa,{columns:_e,onClose:z,size:"small"})})]})}const mg={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#1a1a1a"};function fg(e={}){const n=`passcard-sound-line-grad-${s.useId()}`,a=st(mg,on,sn);return t.jsxs("div",{ref:a,className:"pass-card-bg pass-card-bg-sound-line","aria-hidden":"true",children:[t.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:[t.jsx("defs",{children:t.jsxs("linearGradient",{id:n,x1:"0",y1:"0",x2:"1",y2:"0",children:[t.jsx("stop",{offset:"20%",stopColor:"var(--color-main)"}),t.jsx("stop",{offset:"80%",stopColor:"var(--color-sub)"})]})}),t.jsx("g",{transform:"translate(25, 45)",children:t.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(#${n})`,strokeWidth:"50",strokeLinecap:"round"})})]}),t.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-line__symbol",style:{"--symbol-url":`url("${aa}")`}})]})}const Cg={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"};function gg(e={}){const n=st(Cg,on,sn);return t.jsxs("div",{ref:n,className:"pass-card-bg pass-card-bg-talk-v1","aria-hidden":"true",children:[t.jsx("div",{className:"pass-card-bg-talk-v1__shape pass-card-bg-talk-v1__shape--left"}),t.jsx("div",{className:"pass-card-bg-talk-v1__shape pass-card-bg-talk-v1__shape--right"}),t.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-talk-v1__symbol",style:{"--symbol-url":`url("${aa}")`}})]})}function bg(e,n){if(e){if(n==="manager_pro")return t.jsx(gg,{});if(n==="manager_standard")return t.jsx(fg,{});if(n==="manager_lite")return t.jsx(Si,{})}}function yg(e){const n=ea(e);if(!n)return null;const a=n.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!a)return n;const[,r,o,i]=a;return t.jsxs(t.Fragment,{children:[r&&t.jsx("span",{className:"payment-plan__pricing-symbol h4",children:r}),o,i.trim()&&t.jsx("span",{className:"payment-plan__pricing-symbol h4",children:i.trim()})]})}function vg(e){const{t:n}=he.useTranslation(),a=n("payment.plan.tierFallback",{defaultValue:"\uC774\uC6A9\uAD8C"}),r=n("payment.plan.openPromo",{defaultValue:"\uC624\uD508 \uD2B9\uAC00"}),{plan:o,onSelect:i,period:l="monthly",ownedCodes:c}=e||{},u=b=>!!b&&!!c?.includes(b),d=b=>b.onceOnly??/오픈\s*특가/.test(b.label??""),p=(o.tiers||[]).some(b=>d(b)&&u(b.code)),h=b=>{const N=b.prices?b.prices[l]:b.price;return N?(o.tiers||[]).some(w=>!!w.badge&&w.originals?.[l]===N):!1},m=o.colorToken?`var(--color-${o.colorToken})`:"var(--color-gray)",g=n("payment.plan.freePrice","\uBB34\uB8CC"),y=n("payment.products.mgrEnterprise.tier.price","\uBB38\uC758"),C=b=>b.prices?b.prices[l]:b.price,f=(o.tiers||[]).length>0&&(o.tiers||[]).every(b=>{const N=C(b);return N==="\uBB34\uB8CC"||N===g||N==="0\uC6D0"||typeof N=="string"&&/\d/.test(N)&&!/[1-9]/.test(N)}),v=(o.tiers||[]).length>0&&(o.tiers||[]).every(b=>{const N=C(b);return N==="\uBB38\uC758"||N===y}),x=o.group==="org",_=x?"manager":"speechear";return t.jsxs("div",{className:"payment-plan__card",style:{borderColor:m,"--plan-color":m},children:[o.cardBadge&&t.jsx("div",{className:"payment-plan__card-badge",children:t.jsx(it,{label:o.cardBadge,variant:"main",size:"medium",fill:"soft"})}),t.jsxs("div",{className:"payment-plan__title",children:[t.jsx("p",{className:"payment-plan__quote body-3b",style:{color:m},children:o.quote||"\xA0"}),t.jsx("h3",{className:"payment-plan__title-heading h1",children:o.tier??o.title}),t.jsx("p",{className:"payment-plan__subtitle body-3",children:o.subtitle})]}),t.jsxs("div",{className:"payment-plan__box",children:[t.jsx("span",{className:"payment-plan__box-title body-3b",children:n("payment.plan.recommendedFor","\uC774\uB7F0 \uBD84\uAED8 \uCD94\uCC9C\uD569\uB2C8\uB2E4.")}),t.jsx("ul",{className:"payment-plan__feature-list",children:(o.recommendedFor||[]).map((b,N)=>t.jsxs("li",{className:"payment-plan__feature-item body-3",children:[t.jsx(Oe,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:m}}),b]},N))})]}),t.jsxs("div",{className:"payment-plan__box",children:[t.jsx("span",{className:"payment-plan__box-title body-3b",children:n("payment.plan.features","\uD575\uC2EC \uAE30\uB2A5")}),t.jsx("ul",{className:"payment-plan__feature-list",children:(o.features||[]).map((b,N)=>t.jsxs("li",{className:"payment-plan__feature-item body-3",children:[t.jsx(Oe,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:m}}),b]},N))})]}),t.jsx("div",{className:"payment-plan__card-pricing",children:f?null:v?t.jsx(oe,{htmlType:"button",className:"payment-plan__contact-button",label:n("payment.plan.contact",{defaultValue:"\uBB38\uC758\uD558\uAE30"}),variant:"main",size:56,onClick:()=>o.tiers?.[0]&&i?.({...o.tiers[0],productId:o.id,productTitle:o.title})}):t.jsx(t.Fragment,{children:t.jsx("div",{className:"payment-plan__pricing-list",children:(o.tiers||[]).map(b=>{const N=b.label||a,w=d(b),k=w||b.openPromo===!0,j=N.replace(/^오픈\s*특가\s*/,"")||a,A=b.prices?b.prices[l]:b.price,S=b.badge?k?`${r}
832
- ${b.badge}`:b.badge:void 0;if(w&&u(b.code))return null;if(!b.badge&&!p)return h(b)?null:t.jsxs("div",{className:`payment-plan__pricing-row payment-plan__pricing-row--static${b.highlight?" payment-plan__pricing-row--highlight":""}`,children:[t.jsx("div",{className:"payment-plan__pricing-row-title",children:t.jsx("div",{className:"payment-plan__pricing-row-label h5b",children:b.label})}),t.jsx("div",{className:"payment-plan__pricing-row-price",children:t.jsx("span",{className:"payment-plan__pricing-current h1",children:yg(A)})})]},b.id);const q=o.tier??(x?o.title:void 0),W=t.jsx(ji,{showPrice:!0,product:{type:_,code:b.code,name:j,label:q,price:A,originalPrice:b.originals?.[l]??void 0,discountLabel:S},bg:bg(x,o.id)}),B=()=>i?.({...b,productId:o.id,productTitle:o.title,preview:W});return t.jsx("div",{className:"payment-plan__pricing-card",onClick:B,onKeyDown:i?F=>{F.target===F.currentTarget&&(F.key==="Enter"||F.key===" ")&&(F.preventDefault(),B())}:void 0,role:i?"button":void 0,tabIndex:i?0:void 0,children:W},b.id)})})})})]})}function xg({variant:e="default"}){return t.jsxs("div",{className:`pass-card-bg pass-card-bg--${e}`,"aria-hidden":"true",children:[t.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--1"}),t.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--2"}),t.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--3"})]})}var Cr='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 Ti={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#c9c9c9"};function _g(){const e=st(Ti,on,sn);return t.jsx("div",{ref:e,className:"pass-card-bg pass-card-bg-ihab","aria-hidden":"true",children:t.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-ihab__symbol-top",style:{"--symbol-url":`url("${Cr}")`}})})}const Ei={text:"#ffffff",sub:"var(--color-lightGray)",logoBase:"Logo_speechearManager_kr",logoColor:"_white",copyrightColor:"#ffffff"};function wg(e={}){const n=st(Ei,on,sn);return t.jsxs("div",{ref:n,className:"pass-card-bg pass-card-bg-left-color-grid","aria-hidden":"true",children:[t.jsx("div",{className:"pass-card-bg-left-color-grid__bar"}),t.jsx("div",{className:"pass-card-bg-left-color-grid__grid"}),t.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-left-color-grid__symbol",style:{"--symbol-url":`url("${aa}")`}})]})}function Mi({keys:e,anchor:n="top-right",scale:a,className:r=""}){const o=Array.isArray(e)?e:[e];return t.jsx("span",{className:ye("shortcut-badge",`shortcut-badge--${n}`,r),style:a===void 0?void 0:{"--shortcut-badge-scale":String(a)},children:o.map((i,l)=>t.jsxs("span",{className:"shortcut-badge__group",children:[l>0&&t.jsx("span",{className:"shortcut-badge__plus",children:"+"}),t.jsx("kbd",{className:"shortcut-badge__key",children:i})]},`${i}-${l}`))})}const ra=(e,n,a)=>e+(n-e)*a;function kg({speakers:e,size:n=300,viewT:a=0,activeSpeakerId:r=null,playedIds:o,selectedId:i=null,answerId:l=null,showFeedback:c=!1,pulseSelected:u=!1,pulseSelectedDuration:d,pulseScale:p,clickable:h=!1,onSelectSpeaker:m,buttonSize:g=40,showIcon:y=!0,onCenterClick:C,centerLabel:f,centerDisabled:v=!1,centerAttention:x=!1,shortcutAnchor:_="top-right",shortcutScale:b,scaleShortcut:N=!1}){const{t:w}=he.useTranslation(),k=Math.max(0,Math.min(1,a)),j=n/2,A=110/300,S=.18,q=J=>n*(A+(J-1)*S),W=J=>{const be=q(J.row??1),xe=J.angleDeg*Math.PI/180;return{x:j+be*Math.cos(xe),y:j+be*Math.sin(xe)}},B=Math.max(...e.map(J=>J.row??1),1),F=n*.08,E=n*.1,te=n*.24,$=n-2*F,H=n-E-te,Q=n-te/2,ee=s.useMemo(()=>[...new Set(e.map(J=>J.deg))].sort((J,be)=>J-be),[e]),Y=ee.length,O=Math.max(68,Y>1?$/(Y-1):0),T=s.useMemo(()=>new Map(ee.map((J,be)=>[J,be])),[ee]),M=J=>{const be=T.get(J.deg)??0,xe=j+(be-(Y-1)/2)*O,Ce=B>1?Math.min(68,H/(B-1)):0,fe=Ce*(B-1),ve=E+(H-fe)/2,Se=B===1?E+H*.4:ve+(B-(J.row??1))*Ce;return{x:xe,y:Se}},V=J=>{const be=W(J),xe=M(J);return{x:ra(be.x,xe.x,k),y:ra(be.y,xe.y,k)}},I={x:j,y:ra(j,Q,k)},P=Math.round(g*1.2),z=Math.round(Math.max(16,Math.min(80,g*.7))),ae=[],ne=new Map;for(const J of e){const be=J.row??1;ne.has(be)||ne.set(be,[]),ne.get(be).push(J)}for(const[J,be]of ne.entries()){if(be.length<2)continue;const xe=[...be].sort((Le,Je)=>Le.deg-Je.deg),Ce=xe.map(Le=>V(Le)),fe=xe.map(Le=>Le.deg),ve=fe[fe.length-1]-fe[0],Se=ve/(fe.length-1),X=360-ve,ue=xe.length>=3&&Se>0&&X<=Se*1.5,ke=Math.round(q(J)*1e3)/1e3,Me=(Le,Je,ze,He)=>{const ge=(Je.angleDeg-Le.angleDeg+540)%360-180;if(ge===0)return`L ${He.x} ${He.y}`;if(k===0)return`A ${ke} ${ke} 0 0 ${ge>0?1:0} ${He.x} ${He.y}`;const Ve=(Le.angleDeg+ge/2)*Math.PI/180,Be={x:j+ke*Math.cos(Ve),y:j+ke*Math.sin(Ve)},Ee={x:(ze.x+He.x)/2,y:(ze.y+He.y)/2},Ne={x:ra(Be.x,Ee.x,k),y:ra(Be.y,Ee.y,k)},nt={x:2*Ne.x-Ee.x,y:2*Ne.y-Ee.y};return`Q ${nt.x} ${nt.y} ${He.x} ${He.y}`},Fe=ue?[...xe,xe[0]]:xe,De=ue?[...Ce,Ce[0]]:Ce;let Pe=`M ${De[0].x} ${De[0].y}`;for(let Le=1;Le<De.length;Le++)Pe+=" "+Me(Fe[Le-1],Fe[Le],De[Le-1],De[Le]);ae.push({key:`arc-${J}`,d:Pe})}const re=s.useMemo(()=>new Set(o??[]),[o]),pe=J=>({idle:"",active:w("soundCompass.state.active","\uC18C\uB9AC \uB098\uB294 \uC911"),played:w("soundCompass.state.played","\uB4E4\uC74C"),correct:w("soundCompass.state.correct","\uC815\uB2F5"),wrong:w("soundCompass.state.wrong","\uC624\uB2F5")})[J],_e=J=>{if(r===J.id)return"active";if(c){if(J.id===l)return"correct";if(J.id===i&&i!==l)return"wrong"}return re.has(J.id)?"played":"idle"},Z=J=>r===J.id?"loop":c?J.id===l?"loop":null:u&&J.id===i?"once":null,ie=(J,be)=>{switch(J){case"played":case"correct":return t.jsx(go,{size:be});case"wrong":return t.jsx(Bo,{size:be});default:return t.jsx(No,{size:be})}};return t.jsx("div",{className:"sound-compass",children:t.jsxs("div",{className:"sound-compass__compass-wrap",style:{width:n,height:n},children:[t.jsxs("svg",{width:n,height:n,viewBox:`0 0 ${n} ${n}`,className:"sound-compass__svg",children:[k===0&&e.map(J=>{const{x:be,y:xe}=V(J);return t.jsx("line",{x1:I.x,y1:I.y,x2:be,y2:xe,stroke:"#dde3ec",strokeWidth:"1"},J.id)}),ae.map(J=>t.jsx("path",{d:J.d,fill:"none",stroke:"#dde3ec",strokeWidth:"1"},J.key))]}),x&&!v&&t.jsx("div",{className:"sound-compass__pulse sound-compass__pulse--active sound-compass__pulse--center",style:{width:P,height:P,left:I.x-P/2,top:I.y-P/2}}),C?t.jsx("button",{type:"button",className:`sound-compass__center sound-compass__center--button${v?" sound-compass__center--disabled":""}`,style:{width:P,height:P,left:I.x,top:I.y},"aria-label":f,"aria-disabled":v||void 0,tabIndex:v?-1:0,onClick:v?void 0:C,children:t.jsx(Oa,{size:z,color:"currentColor",strokeWidth:1.5})}):t.jsx("div",{className:"sound-compass__center",style:{width:P,height:P,left:I.x,top:I.y},children:t.jsx(Oa,{size:z,color:"currentColor",strokeWidth:1.5})}),e.map((J,be)=>{const{x:xe,y:Ce}=V(J),fe=_e(J),ve=Z(J),Se={...b!==void 0||N?{"--shortcut-badge-scale":String(b??Math.max(.75,Math.min(3,g/56)))}:null,pointerEvents:h?"auto":"none",cursor:h?"pointer":"default",zIndex:fe!=="idle"?10:1},X=g,ue=Math.round(Math.max(10,Math.min(56,X*.38))),ke=Math.round(Math.max(7,Math.min(18,X*.2))),Me=Math.round(Math.max(10,Math.min(56,X*.4))),Fe=y==="answered"&&(fe==="played"||fe==="correct"||fe==="wrong"),De=y===!0||Fe,Pe=!Fe;return t.jsxs("div",{className:"sound-compass__speaker-pos",style:{...Se,left:xe-X/2,top:Ce-X/2},children:[ve&&t.jsx("div",{className:`sound-compass__pulse sound-compass__pulse--${fe}`+(ve==="once"?" sound-compass__pulse--once":""),style:{width:X,height:X,...ve==="once"&&d!==void 0?{"--sc-pulse-duration-once":`${d}ms`}:null,...p!==void 0?{"--sc-pulse-scale":String(p)}:null}}),t.jsxs("button",{type:"button",tabIndex:h?0:-1,"aria-disabled":h?void 0:!0,onClick:h?()=>m?.(J.id):void 0,className:`sound-compass__speaker-btn sound-compass__speaker-btn--${fe}`,style:{width:X,height:X},"aria-label":pe(fe)?`${J.label}, ${pe(fe)}`:J.label,"aria-pressed":i!=null?J.id===i:void 0,children:[De&&ie(fe,ue),Pe&&t.jsx("span",{className:"sound-compass__speaker-number",style:{fontSize:y===!0?ke:Me},children:be+1})]}),J.shortcut&&t.jsx(Mi,{keys:J.shortcut,anchor:_,className:"sound-compass__speaker-shortcut"})]},J.id)})]})})}function Ag({children:e,position:n="top-left",size:a=24,className:r=""}){return t.jsx("span",{className:ye("circle-badge","circle-badge--number",`circle-badge--${a}`,`circle-badge--${n}`,r),children:e})}function Ng({orientation:e="horizontal",label:n,className:a=""}){const r=ye("divider",`divider--${e}`,n&&e==="horizontal"?"divider--labeled":"",a);return e==="vertical"?t.jsx("div",{className:r,role:"separator","aria-orientation":"vertical"}):n?t.jsxs("div",{className:r,role:"separator","aria-orientation":"horizontal",children:[t.jsx("span",{className:"divider__line"}),t.jsx("span",{className:"divider__label caption-1",children:n}),t.jsx("span",{className:"divider__line"})]}):t.jsx("div",{className:r,role:"separator","aria-orientation":"horizontal"})}function Li({checked:e,onChange:n,name:a,value:r,disabled:o=!1,label:i,className:l=""}){const c=s.useId();return t.jsxs("label",{className:`radio${o?" radio--disabled":""} ${l}`.trim(),htmlFor:c,children:[t.jsx("input",{id:c,type:"radio",name:a,value:r,checked:e,disabled:o,onChange:u=>n?.(u.target.checked)}),t.jsx("span",{className:"radio__dot"}),i&&t.jsx("span",{className:"radio__label body-2",children:i})]})}function Bg({options:e,value:n,onChange:a,name:r,disabled:o=!1,direction:i="vertical",className:l="",ariaLabel:c}){const u=s.useId(),d=r??`radio-group-${u}`;return t.jsx("div",{className:`radio-group radio-group--${i} ${l}`.trim(),role:"radiogroup","aria-label":c,children:e.map(p=>t.jsx(Li,{name:d,value:p.value,checked:n===p.value,disabled:o||p.disabled,label:p.label,onChange:h=>{h&&a?.(p.value)}},p.value))})}const Sg={info:"info",success:"check-circle",warning:"alert-triangle",danger:"alert-circle"};function Dg({tone:e="info",title:n,message:a,children:r,dismissible:o=!1,onDismiss:i,className:l=""}){const{t:c}=he.useTranslation(),[u,d]=s.useState(!1),p=s.useCallback(()=>{d(!0),i?.()},[i]);if(u)return null;const h=ye("alert",`alert--${e}`,l),m=!!n,g=!!(a||r);return t.jsxs("div",{className:h,role:"alert",children:[t.jsxs("div",{className:"alert__body",children:[t.jsxs("div",{className:"alert__header",children:[t.jsx(Oe,{icon:Sg[e],size:20,className:"alert__icon"}),m&&t.jsx("span",{className:"alert__title body-2",children:n}),!m&&g&&t.jsx("div",{className:"alert__message body-3",children:a||r})]}),m&&g&&t.jsx("div",{className:"alert__message alert__message--indented body-3",children:a||r})]}),o&&t.jsx("button",{type:"button",className:"alert__dismiss",onClick:p,"aria-label":c("common.close","\uB2EB\uAE30"),children:"\xD7"})]})}const jg={ready:"search",guide:"info",error:"circle-alert"};function Tg(e,n){const a=n.filter(Boolean);if(a.length===0)return e;const r=[];let o=0,i=0;for(const l of a){const c=e.indexOf(l,o);c<0||(c>o&&r.push(e.slice(o,c)),r.push(t.jsx("strong",{className:"search-summary__em body-2",children:l},i++)),o=c+l.length)}return o<e.length&&r.push(e.slice(o)),r}function Eg({status:e="guide",label:n,children:a,emphasis:r,icon:o,className:i=""}){const l=o===!1?null:o??jg[e],c=ye("search-summary",`search-summary--${e}`,i),u=n??a,d=typeof u=="string"&&r&&r.length>0?Tg(u,r):u;return t.jsxs("div",{className:c,role:"status","aria-live":"polite",children:[l!=null&&t.jsx(Oe,{icon:l,size:18,className:"search-summary__icon"}),t.jsx("span",{className:"search-summary__text body-2",children:d})]})}function oa({title:e,items:n}){const{t:a}=he.useTranslation(),{anchorRect:r,openAt:o,close:i}=_a();return t.jsxs(t.Fragment,{children:[t.jsx(oe,{htmlType:"button",size:24,type:"dot",icon:"info",variant:"transparent-gray",useBorder:!1,selected:!!r,ariaLabel:a("common.info","\uC124\uBA85"),onPointerEnter:l=>o(l.currentTarget),onPointerLeave:i,onFocus:l=>o(l.currentTarget),onBlur:i}),r&&t.jsx(Sn,{title:e,items:n,showIndex:n.length>1,anchorRect:r,onClose:i})]})}function Mg({items:e=[],value:n,onChange:a,className:r="",size:o=40}){const i=s.useId(),{t:l}=he.useTranslation(),c=s.useRef(null),u=e.find(C=>!C.disabled)?.key,d=e.some(C=>C.key===n)?n:u??e[0]?.key,p=e.find(C=>C.key===d&&!C.disabled)?.key??u,h=()=>Array.from(c.current?.querySelectorAll('[role="tab"]:not(:disabled)')??[]),m=(C,f=h())=>{if(f.length===0)return;const v=(C%f.length+f.length)%f.length;f[v]?.focus(),f[v]?.click()},g=C=>{if(!["ArrowRight","ArrowDown","ArrowLeft","ArrowUp","Home","End"].includes(C.key))return;C.preventDefault();const f=h(),v=f.indexOf(C.currentTarget);C.key==="ArrowRight"||C.key==="ArrowDown"?m(v+1,f):C.key==="ArrowLeft"||C.key==="ArrowUp"?m(v-1,f):C.key==="Home"?m(0,f):m(f.length-1,f)},y=e.find(C=>C.key===d);return t.jsxs("div",{className:`tabs ${r}`.trim(),children:[t.jsx("div",{ref:c,className:`tabs__list tabs__list--${o}`,role:"tablist","aria-label":l("tabs.ariaLabel","\uD0ED"),children:e.map(C=>t.jsx("button",{id:`tabs__tab-${i}-${C.key}`,type:"button",role:"tab","aria-selected":C.key===d,"aria-controls":`tabs__panel-${i}-${C.key}`,disabled:C.disabled,tabIndex:C.key===p?0:-1,className:`tabs__tab body-2${C.key===d?" tabs__tab--active":""}`,onClick:()=>a?.(C.key),onKeyDown:g,children:C.label},C.key))}),y&&t.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 Lg={xs:12,sm:16,md:20,lg:28,xl:36};function $g(e){const n=e.trim().split(/\s+/).filter(Boolean);return n.length===0?"":n.length===1?[...n[0]].slice(0,2).join("").toUpperCase():([...n[0]][0]+[...n[n.length-1]][0]).toUpperCase()}function Rg({src:e,name:n,size:a="md",shape:r="circle",className:o=""}){const{t:i}=he.useTranslation(),[l,c]=s.useState(null),u=!!e&&l===e,d=n?$g(n):"",p=!!e&&!u,h=!p&&!!d,m=n||i("avatar.ariaLabel","\uC0AC\uC6A9\uC790 \uC544\uBC14\uD0C0");return t.jsxs("span",{className:`avatar avatar--${a} avatar--${r} ${o}`.trim(),role:"img","aria-label":m,children:[p&&t.jsx("img",{className:"avatar__image",src:e,alt:m,onError:()=>c(e??null)}),!p&&h&&t.jsx("span",{className:"avatar__initials","aria-hidden":"true",children:d}),!p&&!h&&t.jsx(Oe,{icon:"user-round",size:Lg[a],className:"avatar__icon"})]})}function Pg(e,n){if(!n)return!0;const a=n.split(",").map(i=>i.trim()).filter(Boolean);if(a.length===0)return!0;const r=e.name.toLowerCase(),o=e.type.toLowerCase();return a.some(i=>{const l=i.toLowerCase();return l.startsWith(".")?r.endsWith(l):l.endsWith("/*")?o.startsWith(l.slice(0,-1)):o===l})}function Ig({onFilesSelected:e,accept:n,multiple:a=!1,disabled:r=!1,showFileList:o=!0,files:i,onRemove:l,className:c=""}){const{t:u}=he.useTranslation(),d=s.useRef(null),[p,h]=s.useState(!1),[m,g]=s.useState([]),y=i??m,C=w=>{if(!w||w.length===0)return;const k=Array.from(w).filter(A=>Pg(A,n));if(k.length===0)return;const j=a?k:k.slice(0,1);if(i===void 0){const A=a?[...y,...j]:j;g(A),e?.(A)}else e?.(j)},f=w=>{w.preventDefault(),!r&&h(!0)},v=w=>{w.preventDefault(),h(!1)},x=w=>{w.preventDefault(),h(!1),!r&&C(w.dataTransfer.files)},_=w=>{C(w.target.files),w.target.value=""},b=()=>{r||d.current?.click()},N=w=>{if(l?.(w),i===void 0){const k=y.filter((j,A)=>A!==w);g(k),l||e?.(k)}};return t.jsxs("div",{className:`file-upload ${c}`.trim(),children:[t.jsxs("div",{className:ye("file-upload__dropzone",p&&"file-upload__dropzone--dragging",r&&"file-upload__dropzone--disabled"),role:"button",tabIndex:r?-1:0,"aria-disabled":r,onClick:b,onKeyDown:w=>{(w.key==="Enter"||w.key===" ")&&(w.preventDefault(),b())},onDragOver:f,onDragLeave:v,onDrop:x,children:[t.jsx(Oe,{icon:"upload",size:24,className:"file-upload__icon"}),t.jsx("span",{className:"file-upload__prompt body-2",children:u("fileUpload.dragPrompt","\uD30C\uC77C\uC744 \uC774\uACF3\uC5D0 \uB4DC\uB798\uADF8\uD558\uC5EC \uC5C5\uB85C\uB4DC")}),t.jsx("button",{type:"button",className:"file-upload__browse-button body-3",disabled:r,onClick:w=>{w.stopPropagation(),b()},children:u("fileUpload.browseButton","\uD30C\uC77C \uC120\uD0DD")}),t.jsx("input",{ref:d,type:"file",className:"file-upload__input",accept:n,multiple:a,disabled:r,onChange:_,tabIndex:-1})]}),o&&y.length>0&&t.jsx("ul",{className:"file-upload__list",children:y.map((w,k)=>t.jsxs("li",{className:"file-upload__list-item body-3",children:[t.jsx("span",{className:"file-upload__file-name body-3",children:w.name}),t.jsx("button",{type:"button",className:"file-upload__remove-button","aria-label":u("fileUpload.removeAriaLabel",{name:w.name}),onClick:()=>N(k),children:t.jsx(Oe,{icon:"x",size:14})})]},`${w.name}-${k}`))})]})}function Fg({items:e,className:n=""}){const{t:a}=he.useTranslation();return t.jsx("nav",{className:`breadcrumb ${n}`.trim(),"aria-label":a("breadcrumb.ariaLabel","\uC774\uB3D9 \uACBD\uB85C"),children:t.jsx("ol",{className:"breadcrumb__list",children:e.map((r,o)=>{const i=o===e.length-1;return t.jsxs("li",{className:"breadcrumb__item",children:[i?t.jsx("span",{className:"breadcrumb__current body-3","aria-current":"page",children:r.label}):t.jsx("button",{type:"button",className:"breadcrumb__link body-3",onClick:r.onClick,children:r.label}),!i&&t.jsx(Oe,{icon:"chevron-right",size:14,className:"breadcrumb__separator"})]},o)})})})}const Og={small:14,medium:20,large:28};function Hg({value:e,onChange:n,max:a=5,readOnly:r=!1,size:o="medium",ariaLabel:i,className:l=""}){const{t:c}=he.useTranslation(),u=r||!n,[d,p]=s.useState(null),h=d??e,m=Og[o],g=b=>{u||n?.(b)},y=b=>{u||p(b)},C=s.useRef(null),f=b=>{const N=Math.min(a,Math.max(1,b));n?.(N),Array.from(C.current?.querySelectorAll("[data-star]")??[]).find(w=>w.dataset.star===String(N))?.focus()},v=b=>{if(!u){switch(b.key){case"ArrowRight":case"ArrowUp":f((e||0)+1);break;case"ArrowLeft":case"ArrowDown":f((e||1)-1);break;case"Home":f(1);break;case"End":f(a);break;default:return}b.preventDefault()}},x=e>=1&&e<=a?Math.round(e):1,_=()=>{u||p(null)};return t.jsx("div",{className:`rating rating--${o}${u?" rating--readOnly":""} ${l}`.trim(),ref:C,onKeyDown:v,role:u?"img":"radiogroup","aria-label":u?c("rating.valueLabel",{value:e,max:a}):i??c("rating.groupLabel","\uBCC4\uC810"),onMouseLeave:_,children:Array.from({length:a},(b,N)=>{const w=N+1,k=Math.max(0,Math.min(1,h-N)),j=k>0&&k<1,A=t.jsxs("span",{className:"rating__star-wrap",children:[t.jsx(Oe,{icon:"star",size:m,className:"rating__star rating__star--empty"}),k>0&&t.jsx("span",{className:`rating__star-fill${j?" rating__star-fill--half":""}`,style:j?{width:`${k*100}%`}:void 0,children:t.jsx(Oe,{icon:"star",size:m,className:"rating__star rating__star--filled"})})]});return u?t.jsx("span",{className:"rating__item","aria-hidden":"true",children:A},w):t.jsx("button",{type:"button",className:"rating__item rating__item--interactive",role:"radio","aria-checked":e===w,"aria-label":c("rating.starLabel",{n:w}),"data-star":w,tabIndex:w===x?0:-1,onClick:()=>g(w),onMouseEnter:()=>y(w),children:A},w)})})}const Vg=20,zg=["#499cdf","#4dcdc0","#2fae9e","#e6b94e","#d9534f","#e06b68","#bfc7d1"];function Wg({value:e,onChange:n,palette:a=zg,size:r=40,className:o="",ariaLabel:i}){const{t:l}=he.useTranslation();return t.jsx("div",{className:`color-picker ${o}`.trim(),role:"group","aria-label":i,children:a.map(c=>{const u=e?.toLowerCase()===c.toLowerCase();return t.jsx("button",{type:"button",className:`color-picker__swatch color-picker__swatch--${r}`,style:{backgroundColor:c},onClick:()=>n(c),"aria-pressed":u,"aria-label":u?`${c} ${l("colorPicker.selected","\uC120\uD0DD\uB428")}`:c,children:u&&t.jsx(Oe,{icon:"check",size:Vg,className:"color-picker__check"})},c)})})}function qg({icon:e,count:n,title:a,className:r="",onClick:o,onMouseEnter:i,onMouseLeave:l}){const c=ye("count-tile",o&&"count-tile--clickable",r);return t.jsxs("div",{className:c,onClick:o,onKeyDown:o?u=>{u.key!=="Enter"&&u.key!==" "||(u.preventDefault(),u.currentTarget.click())}:void 0,onMouseEnter:i,onMouseLeave:l,role:o?"button":"img",tabIndex:o?0:void 0,"aria-label":a?`${a} ${n}`:String(n),children:[t.jsx(Oe,{icon:e,size:20,className:"count-tile__icon"}),t.jsx("span",{className:"count-tile__count h5","aria-hidden":"true",children:n})]})}let sa=0,$i="",Ri="",ia=0;function Pi(){return Ii(!1)}function Ug(){return Ii(!0)}function Ii(e){const n=typeof document<"u";sa===0&&n&&($i=document.body.style.overflow,document.body.style.overflow="hidden"),e&&n&&(ia===0&&(Ri=document.body.style.paddingRight),ia++,document.body.style.paddingRight="0px"),sa++;let a=!1;return()=>{a||(a=!0,sa=Math.max(0,sa-1),e&&n&&(ia=Math.max(0,ia-1),ia===0&&(document.body.style.paddingRight=Ri)),sa===0&&n&&(document.body.style.overflow=$i))}}function Gg(){return t.jsx("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round","aria-hidden":!0,children:t.jsx("path",{d:"M6 6l12 12M18 6 6 18"})})}function Kg({open:e,onClose:n,ariaLabel:a,title:r,children:o,size:i="md",closeOnBackdrop:l=!0,closeOnEscape:c=!0,showClose:u=!0,className:d,contentClassName:p}){const{t:h}=he.useTranslation(),m=s.useId(),g=s.useRef(null),y=s.useCallback(()=>n(),[n]);s.useEffect(()=>{if(!e)return;const x=document.activeElement,_=Pi(),b=g.current;return b?.focus(),()=>{_();const N=document.activeElement;(!N||N===document.body||b&&b.contains(N))&&x?.focus?.()}},[e]);const C=s.useRef(y),f=s.useRef(c);s.useEffect(()=>{C.current=y,f.current=c}),s.useEffect(()=>{if(e)return Bn(()=>{f.current&&C.current()})},[e]);const v=s.useRef(!1);return sr(g,e),!e||typeof document>"u"?null:It.createPortal(t.jsx("div",{className:ye("dialog",d),onPointerDown:l?x=>{v.current=x.target===x.currentTarget}:void 0,onMouseDown:x=>{x.target===x.currentTarget&&x.preventDefault()},onClick:l?x=>{const _=v.current;v.current=!1,_&&x.target===x.currentTarget&&y()}:void 0,children:t.jsxs("div",{ref:g,role:"dialog","aria-modal":"true","aria-label":r?void 0:a,"aria-labelledby":r?m:void 0,tabIndex:-1,className:ye("dialog__surface",`dialog__surface--${i}`,p),onClick:x=>x.stopPropagation(),children:[r?t.jsx("div",{className:"dialog__header",children:t.jsx("h2",{id:m,className:"dialog__title h4b",children:r})}):null,u?t.jsx("button",{type:"button",className:"dialog__close","aria-label":h("common.close","\uB2EB\uAE30"),onClick:y,children:t.jsx(Gg,{})}):null,t.jsx("div",{className:"dialog__body",children:o})]})}),document.body)}function Yg({columns:e,rows:n,rowKey:a,title:r,toolbar:o,empty:i="\uB4F1\uB85D\uB41C \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",loading:l,caption:c,className:u=""}){const d=!l&&n.length===0;return t.jsxs("div",{className:ye("board",u),children:[r||o?t.jsxs("div",{className:"board__head",children:[r?t.jsx("h2",{className:"board__title",children:r}):t.jsx("span",{}),o?t.jsx("div",{className:"board__toolbar",children:o}):null]}):null,t.jsxs("table",{className:"board__table",children:[c?t.jsx("caption",{className:"board__caption",children:c}):null,t.jsx("thead",{children:t.jsx("tr",{children:e.map(p=>t.jsx("th",{scope:"col",className:ye("board__th",`board__cell--${p.headerAlign??p.align??"left"}`),style:p.width?{width:p.width}:void 0,children:p.header},p.key))})}),t.jsx("tbody",{children:l?t.jsx("tr",{children:t.jsx("td",{className:"board__state",colSpan:e.length,children:l})}):d?t.jsx("tr",{children:t.jsx("td",{className:"board__state",colSpan:e.length,children:i})}):n.map((p,h)=>t.jsx("tr",{className:"board__row",children:e.map(m=>t.jsx("td",{className:ye("board__td",`board__cell--${m.align??"left"}`),children:m.render(p,h)},m.key))},a(p,h)))})]})]})}function Zg({name:e,role:n,photo:a,media:r,credentials:o,size:i=190,className:l=""}){return t.jsxs("div",{className:ye("person-card",l),children:[t.jsx("div",{className:"person-card__photo",style:{width:i,height:i},children:r??(a?t.jsx("img",{src:a,alt:n?`${e} ${n}`:e}):null)}),t.jsx("h3",{className:"person-card__name",children:e}),n?t.jsx("p",{className:"person-card__role",children:n}):null,o?.length?t.jsx("ul",{className:"person-card__credentials",children:o.map(c=>t.jsx("li",{children:c},c))}):null]})}function Xg({groups:e,className:n=""}){return t.jsx("div",{className:ye("timeline",n),children:e.map(a=>t.jsxs("section",{className:"timeline__group",children:[t.jsx("h3",{className:"timeline__title",children:a.title}),t.jsx("ul",{className:"timeline__rows",children:a.entries.map((r,o)=>t.jsxs("li",{className:"timeline__row",children:[r.label?t.jsx("span",{className:"timeline__label",children:r.label}):null,t.jsx("div",{className:"timeline__items",children:r.items.map((i,l)=>t.jsx("p",{children:i},l))})]},`${r.label??""}-${o}`))})]},a.title))})}function Jg({title:e,kind:n,body:a,badge:r,badgeSrc:o,footer:i,width:l,className:c=""}){const u=r??(o?t.jsx("img",{src:o,alt:""}):null);return t.jsxs("div",{className:ye("publication-card",c),style:l?{width:l,flexShrink:0}:void 0,children:[u?t.jsx("div",{className:"publication-card__badge","aria-hidden":"true",children:u}):null,t.jsx("h3",{className:"publication-card__title",children:e}),n?t.jsx("p",{className:"publication-card__kind",children:n}):null,t.jsx("p",{className:"publication-card__body",children:a}),i?t.jsx("div",{className:"publication-card__footer",children:i}):null]})}function Qg({logo:e,alt:n,onDone:a,durationMs:r=3e3}){const o=cr(a);return s.useEffect(()=>{const i=setTimeout(()=>o.current?.(),r);return()=>clearTimeout(i)},[r,o]),t.jsx("div",{className:"splash-logo",style:{"--splash-logo-duration":`${r}ms`},"aria-hidden":"true",children:t.jsx("img",{src:e,alt:n,className:"splash-logo__image"})})}function e4({eyebrow:e,eyebrowIndex:n,title:a,description:r,level:o=2,tone:i="dark",className:l=""}){const c=o===1?"h1":"h2";return t.jsxs("div",{className:ye("section-header",`section-header--${i}`,l),children:[e?t.jsxs("p",{className:"section-header__eyebrow",children:[n?t.jsxs(t.Fragment,{children:[t.jsx("span",{className:"section-header__index",children:n}),t.jsx("span",{"aria-hidden":!0,className:"section-header__rule"})]}):null,e]}):null,a?t.jsx(c,{className:"section-header__title",children:a}):null,r?t.jsx("div",{className:"section-header__description",children:r}):null]})}function t4({items:e,className:n=""}){return t.jsx("ul",{className:ye("company-meta",n),children:e.map((a,r)=>t.jsxs("li",{className:"company-meta__item",children:[r>0?t.jsx("span",{"aria-hidden":!0,className:"company-meta__divider",children:"|"}):null,a]},a))})}function Fi({value:e,onChange:n,suggestions:a,openOnFocus:r=!1}){const o=s.useId(),[i,l]=s.useState(!1),[c,u]=s.useState(-1),d=s.useRef(null),p=s.useMemo(()=>{if(!a.length)return[];const v=e??"";return v?a.filter(x=>x.toLowerCase().includes(v.toLowerCase())):r?a:[]},[a,e,r]);s.useEffect(()=>{i||u(-1)},[i]),s.useEffect(()=>()=>{d.current&&clearTimeout(d.current)},[]);const h=c<p.length?c:-1,m=s.useCallback(v=>{n?.(v),l(!1)},[n]),g=s.useCallback(()=>l(!0),[]),y=s.useCallback(()=>{l(!0),u(-1)},[]),C=s.useCallback(()=>{d.current=setTimeout(()=>l(!1),120)},[]),f=s.useCallback(v=>{v.key==="ArrowDown"?(v.preventDefault(),l(!0),u(x=>Math.min(p.length-1,(x<p.length?x:-1)+1))):v.key==="ArrowUp"?(v.preventDefault(),u(x=>Math.max(-1,(x<p.length?x:p.length)-1))):v.key==="Enter"?h>=0&&!v.nativeEvent.isComposing&&m(p[h]):v.key==="Escape"&&i&&(v.preventDefault(),l(!1))},[p,h,i,m]);return{listId:o,open:i,activeIdx:h,filtered:p,handleFocus:g,handleBlur:C,handleInput:y,handleKeyDown:f,handleSelect:m}}const n4=typeof window<"u"?s.useLayoutEffect:s.useEffect;function Tn(e){const{value:n,defaultValue:a,name:r,inputRef:o,onChange:i,label:l,ariaLabel:c,required:u,placeholder:d,type:p="text",disabled:h=!1,readOnly:m=!1,error:g,helperText:y,maxLength:C,size:f=48,variant:v="input",fullWidth:x=!1,newline:_=!1,multiline:b=!1,rows:N=3,leftIcon:w,rightIcon:k,clearable:j=!1,list:A,showCount:S=!0,className:q="",onFocus:W,onBlur:B,onKeyDown:F,onEnter:E,inputMode:te,autoComplete:$,autoFocus:H,suggestions:Q,openOnFocus:ee=!1}=e,{t:Y}=he.useTranslation(),O=s.useId();!l&&!c&&qn(`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 T=`tf-${O}`,M=`tf-helper-${O}`,V=s.useRef(null),I=Fi({value:n??"",onChange:i,suggestions:Q??[],openOnFocus:ee}),P=!!Q&&I.open&&I.filtered.length>0,z=s.useCallback(X=>{V.current=X,typeof o=="function"?o(X):o&&(o.current=X)},[o]),ae=n!==void 0,ne=ae&&p==="password",[re,pe]=s.useState((a??"").length),_e=ae?(n??"").length:re,Z=s.useRef(n);n4(()=>{Z.current=n}),s.useEffect(()=>{const X=V.current;if(!ne||!X)return;const ue=n??"";X.value!==ue&&(X.value=ue)},[ne,n]),s.useEffect(()=>{if(!_||!V.current)return;const X=V.current;X.style.height="",X.scrollHeight>X.clientHeight&&(X.style.height=`${X.scrollHeight}px`)},[n,re,_]);const ie=C!=null&&_e>C,J=f===32?16:20,be=ye("text-field",`text-field--s${f}`,v==="display"?"text-field--display":"",x?"text-field--full-width":"",h?"text-field--disabled":"",m?"text-field--readonly":"",g?"text-field--error":"",w?"text-field--has-left-icon":"",k||j?"text-field--has-right-icon":"",q),xe={id:T,...ne?{}:ae?{value:n}:{defaultValue:a},ref:z,placeholder:d,name:r,disabled:h,readOnly:m,autoFocus:H,maxLength:C,list:A,inputMode:te,autoComplete:$,"aria-label":!l&&c?c:void 0,"aria-required":u,"aria-invalid":!!g,"aria-describedby":y||g?M:void 0,role:Q?"combobox":void 0,"aria-autocomplete":Q?"list":void 0,"aria-haspopup":Q?"listbox":void 0,"aria-expanded":Q?I.open:void 0,"aria-controls":P?I.listId:void 0,"aria-activedescendant":P&&I.activeIdx>=0?`${I.listId}-option-${I.activeIdx}`:void 0,onChange:X=>{const ue=X.target;ae||pe(ue.value.length),i?.(ue.value),Q&&I.handleInput(),ne&&queueMicrotask(()=>{const ke=Z.current??"";ue.value!==ke&&(ue.value=ke)})},onFocus:(X=>{W?.(X),Q&&I.handleFocus()}),onBlur:(X=>{B?.(X),Q&&I.handleBlur()}),onKeyDown:(X=>{Q&&X.key==="Enter"&&!X.nativeEvent.isComposing&&I.activeIdx>=0?X.preventDefault():E&&X.key==="Enter"&&!X.nativeEvent.isComposing&&(X.preventDefault(),E()),F?.(X),Q&&I.handleKeyDown(X)})},Ce=j&&!h&&!m&&_e>0,fe=()=>_?t.jsx("textarea",{...xe,className:"text-field__input text-field__input--auto body-2",rows:1}):b?t.jsx("textarea",{...xe,className:"text-field__input text-field__input--textarea body-2",rows:N}):t.jsx("input",{...xe,type:p,className:"text-field__input body-2"}),ve=v==="display"&&!_&&!b&&!!d,Se=()=>t.jsxs(t.Fragment,{children:[fe(),ve&&t.jsx("span",{className:"text-field__placeholder","aria-hidden":"true",children:d})]});return t.jsxs("div",{className:be,children:[l&&t.jsxs("label",{htmlFor:T,className:"text-field__label caption-1",children:[l,u&&t.jsx("span",{className:"text-field__required",children:"*"})]}),t.jsxs("div",{className:"text-field__wrap",children:[w&&t.jsx("span",{className:"text-field__icon text-field__icon--left",children:t.jsx(Oe,{icon:w,label:"",className:"",svgClassName:"text-field__icon-svg",size:J})}),Se(),C!=null&&S&&t.jsxs("span",{className:`text-field__count caption-2${ie?" text-field__count--over":""}`,children:[_e,"/",C]}),Ce&&t.jsx(oe,{size:24,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,className:"text-field__clear",ariaLabel:Y("textField.clearAriaLabel","\uC785\uB825\uAC12 \uC9C0\uC6B0\uAE30"),htmlType:"button",onMouseDown:X=>{X.preventDefault()},onClick:()=>{!ae&&V.current&&(V.current.value="",pe(0)),i?.("")},tabIndex:-1}),k&&!Ce&&t.jsx("span",{className:"text-field__icon text-field__icon--right",children:t.jsx(Oe,{icon:k,label:"",className:"",svgClassName:"text-field__icon-svg",size:J})})]}),Q&&I.open&&I.filtered.length>0&&t.jsx("ul",{id:I.listId,className:"text-field__suggestions",role:"listbox",children:I.filtered.map((X,ue)=>t.jsx("li",{id:`${I.listId}-option-${ue}`,role:"option","aria-selected":ue===I.activeIdx,className:`text-field__suggestion body-2${ue===I.activeIdx?" is-active":""}`,onMouseDown:ke=>ke.preventDefault(),onClick:()=>{I.handleSelect(X),V.current?.focus()},children:X},`${X}-${ue}`))}),(y||g)&&t.jsx("div",{className:"text-field__footer",children:t.jsx("span",{id:M,className:"text-field__helper caption-1",role:g?"alert":void 0,children:g||y})})]})}function Gt({options:e,value:n,onChange:a,placeholder:r,disabled:o=!1,block:i=!1,size:l=48,error:c=!1,className:u="",ariaLabel:d}){const{t:p}=he.useTranslation(),h=r??p("dropdown.placeholder","\uC120\uD0DD"),m=s.useId(),g=s.useRef(null),y=s.useCallback(B=>{const F=window.innerHeight-B.bottom<260&&B.top>260;return{position:"fixed",left:B.left,minWidth:B.width,...F?{bottom:window.innerHeight-B.top+6}:{top:B.bottom+6},zIndex:9999}},[]),{open:C,setOpen:f,toggle:v,style:x,triggerRef:_,menuRef:b}=na({computeStyle:y}),[N,w]=s.useState(-1),k=s.useCallback(()=>w(-1),[]),j=e.find(B=>B.value===n);s.useEffect(()=>{if(C){const B=e.findIndex(F=>F.value===n);w(B>=0?B:0),requestAnimationFrame(()=>{const F=b.current;if(!F)return;const E=F.querySelectorAll(".dropdown__option")[B];E&&(F.scrollTop=Math.max(0,E.offsetTop-F.clientHeight/2+E.clientHeight/2))})}},[C]);const A=s.useCallback(()=>{o||v()},[o,v]),S=s.useCallback(B=>{B.disabled||(a?.(B.value),f(!1))},[a,f]),q=s.useCallback(B=>{if(!o){if(!C){(B.key==="Enter"||B.key===" "||B.key==="ArrowDown")&&(B.preventDefault(),f(!0));return}if(B.key==="Escape"){B.preventDefault(),f(!1);return}B.key==="ArrowDown"?(B.preventDefault(),w(F=>{let E=F+1;for(;E<e.length&&e[E].disabled;)E++;return E<e.length?E:F})):B.key==="ArrowUp"?(B.preventDefault(),w(F=>{let E=F-1;for(;E>=0&&e[E].disabled;)E--;return E>=0?E:F})):B.key==="Enter"&&N>=0&&(B.preventDefault(),S(e[N]))}},[o,C,e,N,S,f]),W=C?t.jsx("div",{ref:b,id:m,className:"dropdown__menu",role:"listbox",style:x,onMouseLeave:k,onMouseDown:B=>B.preventDefault(),children:e.map((B,F)=>t.jsxs("button",{id:`${m}-option-${F}`,type:"button",role:"option","aria-selected":B.value===n,className:ye("dropdown__option body-2",B.value===n?"dropdown__option--active":"",F===N?"dropdown__option--active":"",B.disabled?"dropdown__option--disabled":""),onMouseDown:E=>E.preventDefault(),onClick:()=>S(B),onMouseEnter:()=>w(F),disabled:B.disabled,children:[t.jsx("span",{className:"dropdown__option-check",children:B.value===n&&t.jsx("svg",{viewBox:"0 0 14 14",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:t.jsx("polyline",{points:"2 7 5.5 10.5 12 3.5"})})}),B.label]},B.value))}):null;return t.jsxs("div",{ref:g,className:ye("dropdown",`dropdown--s${l}`,C?"dropdown--open":"",i?"dropdown--block":"",c?"dropdown--error":"",u),onKeyDown:q,children:[t.jsxs("button",{ref:_,type:"button",className:"dropdown__trigger","aria-haspopup":"listbox","aria-expanded":C,"aria-controls":C?m:void 0,"aria-activedescendant":C&&N>=0?`${m}-option-${N}`:void 0,"aria-label":d,"aria-invalid":c||void 0,disabled:o,onClick:A,onBlur:B=>{C&&!b.current?.contains(B.relatedTarget)&&f(!1)},children:[t.jsx("span",{className:`dropdown__trigger-label body-2${j?"":" dropdown__trigger-label--placeholder"}`,children:j?j.label:h}),t.jsx("svg",{className:"dropdown__chevron",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:t.jsx("polyline",{points:"4 6 8 10 12 6"})})]}),typeof document<"u"&&It.createPortal(W,g.current?.closest(".ihabdevteam-core-scope")??document.body)]})}function ka({page:e,totalPages:n,onChange:a,prevLabel:r,nextLabel:o,className:i=""}){const{t:l}=he.useTranslation(),c=r??l("common.prevPage","\uC774\uC804 \uD398\uC774\uC9C0"),u=o??l("common.nextPage","\uB2E4\uC74C \uD398\uC774\uC9C0"),d=Math.max(1,n),p=()=>a(Math.max(1,Math.min(d,e-1))),h=()=>a(Math.min(d,e+1));return t.jsxs("div",{className:ye("pagination",i),children:[t.jsx(oe,{htmlType:"button",size:32,type:"dot",shape:"rounded",icon:"chevron-left",ariaLabel:c,disabled:e<=1,onClick:p}),t.jsxs("span",{className:"pagination__info body-3",children:[Math.min(Math.max(1,e),d)," / ",d]}),t.jsx(oe,{htmlType:"button",size:32,type:"dot",shape:"rounded",icon:"chevron-right",ariaLabel:u,disabled:e>=n,onClick:h})]})}function En(e){const{t:n}=he.useTranslation(),{options:a=[],value:r=a[0]?.key,onChange:o=f=>{},className:i="",size:l=48,shape:c="pill",useBG:u=!0,fullWidth:d=!1,ariaLabel:p}=e||{},h=s.useRef(null),m=a.filter(f=>!f.disabled),g=f=>{if(!m.length)return;const v=Math.max(0,m.findIndex(_=>_.key===r)),x=f==="first"?m[0]:f==="last"?m[m.length-1]:m[(v+f+m.length)%m.length];x&&(o(x.key),Array.from(h.current?.querySelectorAll("[data-segkey]")??[]).find(_=>_.dataset.segkey===x.key)?.focus())},y=f=>{switch(f.key){case"ArrowRight":case"ArrowDown":g(1);break;case"ArrowLeft":case"ArrowUp":g(-1);break;case"Home":g("first");break;case"End":g("last");break;default:return}f.preventDefault()},C=m.some(f=>f.key===r)?r:m[0]?.key;return t.jsx("div",{ref:h,onKeyDown:y,className:ye("segmented-control",`segmented-control--${c}`,`segmented-control--${l}`,d&&"segmented-control--full",!u&&"segmented-control--no-bg",i),role:"radiogroup","aria-label":p??n("segmentedControl.ariaLabel","\uC120\uD0DD \uD0ED"),children:a.map(f=>t.jsx(oe,{htmlType:"button",role:"radio","aria-checked":f.key===r,"data-segkey":f.key,tabIndex:f.key===C?0:-1,label:f.label,count:f.count,disabled:f.disabled,className:f.key===r?"is-selected":"",onClick:()=>{f.disabled||o(f.key)},size:l,shape:c,useBorder:!1,useBG:!1},f.key))})}function gr({count:e,search:n,segment:a,filters:r,pageSize:o,pagination:i,actions:l,className:c}){const{t:u}=he.useTranslation(),d=e!=null&&t.jsxs("p",{className:"toolbar__count body-1",children:[e.prefix??u("common.totalPrefix","\uCD1D "),t.jsx("span",{className:"toolbar__count-highlight",children:e.value}),e.unit,e.suffix]}),p=!!(n||r?.length||o||i||l);return t.jsxs("div",{className:ye("toolbar",c),children:[t.jsxs("div",{className:"toolbar__row",children:[d,a&&(Array.isArray(a)?a:[a]).map((h,m)=>t.jsx(En,{size:40,...h},h.ariaLabel??m))]}),p&&t.jsx("div",{className:"toolbar__row",children:t.jsxs("div",{className:"toolbar__row-end",children:[n&&t.jsx(Tn,{className:"toolbar__search",size:40,value:n.value,onChange:n.onChange,placeholder:n.placeholder??u("common.search","\uAC80\uC0C9"),ariaLabel:n.placeholder??u("common.search","\uAC80\uC0C9"),clearable:!0}),r?.map((h,m)=>t.jsx(Gt,{size:40,options:h.options,value:h.value,onChange:h.onChange,ariaLabel:h.ariaLabel},m)),o&&t.jsx(Gt,{size:40,options:o.options,value:o.value,onChange:o.onChange,ariaLabel:o.ariaLabel??u("common.pageSizeSelect","\uD398\uC774\uC9C0\uB2F9 \uD45C\uC2DC \uAC1C\uC218")}),i&&t.jsx(ka,{page:i.page,totalPages:i.total,onChange:i.onChange,prevLabel:i.prevLabel,nextLabel:i.nextLabel}),l]})})]})}function Oi(e){return typeof e=="string"?e:typeof e=="number"?String(e):Array.isArray(e)?e.map(Oi).join(""):""}function a4(e){let n=e.replace(/\r\n/g,`
831
+ 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"},dC={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"}}},pC={timeHM:"{{hh}}:{{mm}}",timeH:"{{hh}}:{{mm}}"},hC={options:"Training Options",difficulty:"Difficulty",exclude:"Exclude",chosung:"Initial Consonant",excludeOptions:{none:"None",noImage:"No Image"}},mC={answer:"Answer",distractor:"Distractor"},fC={phaseWordDownload:"Download Word Data",phaseImageCheck:"Check Images",phasePairAnalysis:"Analyze Word Pairs",downloadingCount:"Downloading {{n}} words",checkingPage:"Checking page {{page}} list",imageCount:"{{done}} / {{total}} items"},CC={clearAriaLabel:"Clear input"},gC={ariaLabel:"Select tab"},bC={ariaLabel:"Tabs"},yC={dragPrompt:"Drag and drop files here",browseButton:"Choose Files",removeAriaLabel:"Remove {{name}}"},vC={ariaLabel:"User avatar"},xC={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"}},_C={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"}},wC={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)"}},kC={manage:{unit:"item(s)"}},AC={cancelLabel:"Cancel"},NC={subtitle:"Select a topic to start listening practice."},BC={steps:"Step {{current}} of {{total}}"},SC={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"},DC={resetColumns:"Reset column widths"},jC={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}}"},TC={ariaLabel:"Banner",dotAriaLabel:"Banner {{index}} of {{count}}"},EC={selectYearMonth:"Select year and month",chooseDate:"Choose a date"},MC={previewRegion:"Report preview \u2014 scrollable sideways"},LC={description:"Description",textbox:"Text",training:"Training guide",menu:"Menu"},$C={devNone:"No acquisition data",place:{labial:"Bilabial",alveolar:"Alveolar",palatal:"Palatal",velar:"Velar",glottal:"Glottal"}},RC={clearSelection:"Clear selection"},PC={showResult:"Show {{type}} result"},IC={selected:"Selected",remove:"Remove",exclude:"Excluded",nthSelected:"Selection {{n}}"},FC={loading:"Loading"},OC={state:{active:"playing",played:"heard",correct:"correct",wrong:"wrong"}},VC={ariaLabel:"Breadcrumb"},HC={common:Df,calendar:jf,passCard:Tf,searchField:Ef,rating:Mf,colorPicker:Lf,dropdown:$f,accordion:Rf,header:Pf,nav:If,settings:Ff,usage:Of,account:Vf,help:Hf,training:zf,trainingSettings:Wf,customers:qf,payment:Uf,coupons:Gf,visits:Kf,company:Yf,trainingType:Zf,myWordTraining:Xf,myWordTable:Jf,keyWords:Qf,wordTable:eC,wordSearch:tC,wordPrint:nC,topic:aC,accessLinkManager:rC,login:oC,device:sC,manager:iC,wordPairs:lC,game:cC,footer:uC,landing:dC,date:pC,trainingSetPage:hC,wordTrainingPreview:mC,wordData:fC,textField:CC,segmentedControl:gC,tabs:bC,fileUpload:yC,avatar:vC,myHomework:xC,trainingStatus:_C,store:wC,homework:kC,inquiry:AC,trainingPlanRun:NC,progress:BC,trainingMiss:SC,table:DC,wordScore:jC,topBanner:TC,datePicker:EC,report:MC,tooltip:LC,phonemeProfile:$C,bulkBar:RC,debug:PC,badge:IC,loader:FC,soundCompass:OC,breadcrumb:VC};const zC=[{code:"ko",label:"\uD55C\uAD6D\uC5B4"},{code:"en",label:"English"}],yi="ko",WC="ihab_display_language";function vi(){try{const e=localStorage.getItem(WC);if(e&&zC.some(n=>n.code===e))return e}catch{}return yi}function xi(e){try{document.documentElement.lang=e}catch{}}Dt.on("languageChanged",xi),xi(vi()),Dt.use(he.initReactI18next).init({resources:{ko:{translation:Sf},en:{translation:HC}},lng:vi(),fallbackLng:yi,interpolation:{escapeValue:!1},react:{useSuspense:!1}});function _i(e){if(!(e==null||e===""))return ea(typeof e=="number"?`${e.toLocaleString("ko-KR")}\uC6D0`:e)}function qC(e){const n=`${e.code??""} ${e.name??""}`.toLowerCase();return/manager|매니저/.test(n)?"manager":"speechear"}function UC(e){if(e.durationDays&&e.durationDays>0){const i=e.durationDays;return i%365===0?`${i/365}\uB144`:`${i}\uC77C`}const n=(e.code??"").match(/(\d+)(d|y)\b/i);if(n)return n[2].toLowerCase()==="y"?`${n[1]}\uB144`:`${n[1]}\uC77C`;const a=e.name??"",r=a.match(/(\d+\s*(?:년|개월|주|일))\s*(?:이용권)?\s*$/);if(r)return r[1].replace(/\s+/g,"");const o=a.match(/(\d+)\s*-?\s*(day|year)s?\b/i);return o?o[2].toLowerCase()==="year"?`${o[1]}\uB144`:`${o[1]}\uC77C`:a||"\uC774\uC6A9\uAD8C"}function GC(e){const n=(e??"").match(/(\d+)(d|y)\b/i);if(!n)return null;const a=Number(n[1]);return n[2].toLowerCase()==="y"?a*365:a}function wi(e){return{type:e.type??qC(e),plan:UC(e),label:e.label,price:_i(e.price),originalPrice:_i(e.originalPrice),discountLabel:e.discountLabel}}var KC='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',YC='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>',ZC='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',XC='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',JC='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>',QC='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',ki='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 jn={text:"--pass-card-text",sub:"--pass-card-sub",copyright:"--pass-card-copyright"},fr=new WeakMap;function eg(e){if(e)return fr.get(e)}function on(e,n){e&&(e.style.setProperty(jn.text,n.text),e.style.setProperty(jn.sub,n.sub),n.copyrightColor&&e.style.setProperty(jn.copyright,n.copyrightColor),fr.set(e,n))}function sn(e){e&&(e.style.removeProperty(jn.text),e.style.removeProperty(jn.sub),e.style.removeProperty(jn.copyright),fr.delete(e))}const Ai={text:"var(--color-pureBlack)",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#1a1a1a"};function Ni(e={}){const n=st(Ai,on,sn);return t.jsxs("div",{ref:n,className:"pass-card-bg pass-card-bg-two-circle","aria-hidden":"true",children:[t.jsx("div",{className:"pass-card-bg-two-circle__c1"}),t.jsx("div",{className:"pass-card-bg-two-circle__c3"}),t.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-two-circle__symbol",style:{"--symbol-url":`url("${ki}")`}})]})}const Bi="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 aa='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 tg={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"},ng=[{scale:1,opacity:.55},{scale:2,opacity:.4},{scale:3.1,opacity:.28},{scale:4.5,opacity:.18},{scale:6,opacity:.1}];function Si(e={}){const n=st(tg,on,sn),a="var(--color-main)",r=270,o=170;return t.jsxs("div",{ref:n,className:"pass-card-bg pass-card-bg-sound-move","aria-hidden":"true",children:[t.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:ng.map(({scale:i,opacity:l},c)=>t.jsx("g",{transform:`translate(${r} ${o}) scale(${i}) translate(-50 -50)`,opacity:l,children:t.jsx("path",{d:Bi,fill:"none",stroke:a,strokeWidth:"1.5",vectorEffect:"non-scaling-stroke"})},c))}),t.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-move__symbol",style:{"--symbol-url":`url("${aa}")`}})]})}const ag={text:"#ffffff",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",logoColor:"_white",copyrightColor:"#ffffff"},rg=[{scale:1,opacity:.55},{scale:2,opacity:.4},{scale:3.1,opacity:.28},{scale:4.5,opacity:.18},{scale:6,opacity:.1}];function og(e={}){const n=st(ag,on,sn),a="#ffffff",r=270,o=170;return t.jsxs("div",{ref:n,className:"pass-card-bg pass-card-bg-sound-move-v1","aria-hidden":"true",children:[t.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:rg.map(({scale:i,opacity:l},c)=>t.jsx("g",{transform:`translate(${r} ${o}) scale(${i}) translate(-50 -50)`,opacity:l,children:t.jsx("path",{d:Bi,fill:"none",stroke:a,strokeWidth:"1.5",vectorEffect:"non-scaling-stroke"})},c))}),t.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-move-v1__symbol",style:{"--symbol-url":`url("${ki}")`}})]})}const sg={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"};function ig(e={}){const n=st(sg,on,sn);return t.jsxs("div",{ref:n,className:"pass-card-bg pass-card-bg-talk","aria-hidden":"true",children:[t.jsx("div",{className:"pass-card-bg-talk__shape pass-card-bg-talk__shape--left"}),t.jsx("div",{className:"pass-card-bg-talk__shape pass-card-bg-talk__shape--right"}),t.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-talk__symbol",style:{"--symbol-url":`url("${aa}")`}})]})}const lg={Logo_speechear_kr:{"":hr,_white:KC,_textWhite:YC,_black:ZC},Logo_speechearManager_kr:{"":mr,_white:XC,_textWhite:JC,_black:QC}};function cg(e,n){if(e)return lg[e]?.[n??""]??void 0}const ug={speechear:hr,manager:mr},dg={speechear:"Logo_speechear_kr",manager:"Logo_speechearManager_kr"},Di=10;function pg(e,n){if(e<=0)return n("passCard.remainingSecond",{n:0});const a=Math.floor(e/86400);if(a>0)return n("passCard.remainingDay",{n:a});const r=Math.floor(e/3600);if(r>0)return n("passCard.remainingHour",{n:r});const o=Math.floor(e/60);return o>0?n("passCard.remainingMinute",{n:o}):n("passCard.remainingSecond",{n:Math.floor(e)})}function hg(e,n,a){if(e==="manager"){const r=/년/.test(n)||/yr|year/i.test(n)||/1년|365/.test(n),o=a==="\uC624\uD508\uD2B9\uAC00"||a===Dt.t("passCard.specialLabel");return r?t.jsx(ig,{}):o?t.jsx(og,{}):t.jsx(Si,{})}return t.jsx(Ni,{})}function ji({product:e,showPrice:n=!1,plan:a,type:r,endDate:o,remainingSeconds:i,state:l="active",bg:c,bgOnly:u=!1,textColor:d,subColor:p,copyrightColor:h,logoSrc:m,label:g,price:y,originalPrice:C,discountLabel:f,onUse:v,onRefund:x,onDelete:_}){const{t:b}=he.useTranslation(),N=e?wi(e):void 0,w=r??N?.type??"speechear",k=a??N?.plan??"\uC774\uC6A9\uAD8C",j=g??N?.label,A=y??(n?N?.price:void 0),S=C??(n?N?.originalPrice:void 0),q=f??N?.discountLabel,W=s.useMemo(()=>{if(A)return null;const Z=e?.durationDays??GC(e?.code);if(!Z||Z<=0)return null;const ie=Z*86400;let J;if(i!=null)J=i;else if((l==="active"||l==="expired")&&o){const xe=new Date(o).getTime();if(Number.isNaN(xe))return null;const Ce=new Date;Ce.setHours(0,0,0,0);const fe=new Date(xe);fe.setHours(0,0,0,0);const ve=Math.round((fe.getTime()-Ce.getTime())/864e5);J=Math.max(0,ve)*86400}else l==="expired"?J=0:J=ie;const be=Math.max(0,Math.min(100,Math.floor(Math.min(J,ie)/ie*100)));return l==="pending"&&be>=100?null:{percent:be,remainingLabel:pg(J,b)}},[A,l,o,i,e?.durationDays,e?.code,b]),B=s.useRef(null),[O,E]=s.useState({}),[ee,M]=s.useState(null),H=!!(v||x||_),Q=s.useRef(!1),te=s.useRef(void 0),[Y,V]=s.useState(m);s.useLayoutEffect(()=>{V(m)},[m]),s.useLayoutEffect(()=>{const Z=B.current;Z&&(d!==void 0&&Z.style.setProperty("--pass-card-text",d),p!==void 0&&Z.style.setProperty("--pass-card-sub",p),h!==void 0&&Z.style.setProperty("--pass-card-copyright",h))},[d,p,h]),s.useLayoutEffect(()=>{const Z=B.current;if(!Z)return;const ie=eg(Z);if(!m){const J=dg[w],be=l==="expired"?"_black":ie?.logoColor??"",xe=cg(J,be);V(xe)}},[c,m,w,l]);const T=Z=>{const ie=B.current;if(!ie)return null;const{left:J,top:be,width:xe,height:Ce}=ie.getBoundingClientRect(),fe=(Z.clientX-J)/xe-.5;return{rotateX:-((Z.clientY-be)/Ce-.5)*Di,rotateY:fe*Di}},P=(Z,ie)=>{const J=ie*-.7,be=Z*.7+10,xe=20+(Math.abs(Z)+Math.abs(ie))*.4;return`${J}px ${be}px ${xe}px rgba(0, 0, 0, 0.18)`},F=s.useCallback(Z=>{Q.current=!0,clearTimeout(te.current),te.current=setTimeout(()=>{Q.current=!1},200);const ie=T(Z);ie&&E({transform:`perspective(800px) rotateX(${ie.rotateX}deg) rotateY(${ie.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:P(ie.rotateX,ie.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)"})},[]),L=s.useCallback(Z=>{const ie=T(Z);if(!ie)return;const J=Q.current?"transform 0.2s ease, box-shadow 0.2s ease":"none";E({transform:`perspective(800px) rotateX(${ie.rotateX}deg) rotateY(${ie.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:P(ie.rotateX,ie.rotateY),transition:J})},[]),R=s.useCallback(()=>{clearTimeout(te.current),Q.current=!1,E({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)"})},[]),z=s.useCallback(()=>M(null),[]),ae=s.useMemo(()=>{const Z=k.replace("\uC774\uC6A9\uAD8C","").trim(),ie=Z.match(/^(.*?)(일|년)$/);return ie?t.jsxs(t.Fragment,{children:[t.jsx("span",{className:"h0 pass-card__plan-number",children:ie[1]}),t.jsx("span",{className:"h5b pass-card__plan-unit",children:ie[2]==="\uB144"?b("passCard.unitYear","\uB144"):b("passCard.unitDay","\uC77C")})]}):t.jsx("span",{className:"h0",children:Z})},[k,b]),ne=s.useMemo(()=>{const Z=ea(A);if(!Z)return null;const ie=Z.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!ie)return t.jsx("span",{className:"h1",children:Z});const[,J,be,xe]=ie;return t.jsxs(t.Fragment,{children:[J&&t.jsx("span",{className:"h5 pass-card__price-symbol",children:J}),t.jsx("span",{className:"h1 pass-card__price-amount",children:be}),xe.trim()&&t.jsx("span",{className:"h5 pass-card__price-symbol",children:xe.trim()})]})},[A]),re=s.useCallback(()=>{H&&M(Z=>{if(Z)return null;const ie=B.current?.getBoundingClientRect();if(!ie)return null;const J=50;return{left:ie.left,right:ie.right,width:ie.width,height:ie.height,x:ie.x,y:ie.y+J,top:ie.top+J,bottom:ie.bottom+J}})},[H]),pe=s.useCallback(Z=>{H&&(Z.key==="Enter"||Z.key===" ")&&(Z.preventDefault(),re())},[H,re]),_e=[{items:[...v?[{label:b("passCard.menu.use","\uC0AC\uC6A9\uD558\uAE30"),icon:"play",onClick:()=>{v(),M(null)},closeOnSelect:!0}]:[],...x?[{label:b("passCard.menu.refund","\uD658\uBD88\uD558\uAE30"),icon:"rotate-ccw",onClick:()=>{x(),M(null)},closeOnSelect:!0}]:[],..._?[{label:b("passCard.menu.delete","\uC0AD\uC81C\uD558\uAE30"),icon:"trash-2",onClick:()=>{_(),M(null)},closeOnSelect:!0}]:[]]}];return t.jsxs(t.Fragment,{children:[t.jsx("div",{className:"pass-card-frame",children:t.jsxs("div",{ref:B,className:`pass-card pass-card--${l}${H?" pass-card--clickable":""}`,style:O,onMouseEnter:F,onMouseMove:L,onMouseLeave:R,onClick:re,onKeyDown:H?pe:void 0,role:H?"button":void 0,tabIndex:H?0:void 0,"aria-haspopup":H?"menu":void 0,"aria-expanded":H?!!ee:void 0,children:[c??hg(w,k,j),!u&&t.jsxs(t.Fragment,{children:[t.jsx("div",{className:"pass-card__top",children:t.jsxs("div",{className:"pass-card__top-left",children:[t.jsx("img",{src:Y??ug[w],className:"pass-card__logo",alt:w==="manager"?b("header.logoManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800 \uB85C\uACE0"):b("header.logoMalgwi","\uB9D0\uADC0 \uB85C\uACE0")}),t.jsxs("div",{className:"pass-card__plan",children:[t.jsx("div",{children:ae}),t.jsx("span",{className:"h5b pass-card__plan-suffix",children:j?b("passCard.labeledPlan",{label:j}):b("passCard.planSuffix","\uC774\uC6A9\uAD8C")})]})]})}),A?t.jsxs("div",{className:"pass-card__price-area",children:[q&&t.jsx("span",{className:"pass-card__discount body-3",children:q}),t.jsxs("div",{className:"pass-card__price",children:[S&&t.jsx("span",{className:"pass-card__price-original body-3",children:ea(S)}),ne]})]}):W?t.jsxs("div",{className:"pass-card__usage",children:[t.jsx("span",{className:"h5b pass-card__usage-remaining",children:W.remainingLabel}),t.jsxs("span",{className:"pass-card__usage-percent",children:[t.jsx("span",{className:"h1 pass-card__usage-value",children:W.percent}),t.jsx("span",{className:"h5b pass-card__usage-symbol",children:"%"})]})]}):t.jsx("div",{className:"pass-card__copyright caption-2",children:"\xA9 IHAB Corp. All rights reserved."})]})]})}),ee&&t.jsx(Cn,{anchorRect:ee,onClose:z,ariaLabel:b("tooltip.menu","\uBA54\uB274"),children:t.jsx(wa,{columns:_e,onClose:z,size:"small"})})]})}const mg={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#1a1a1a"};function fg(e={}){const n=`passcard-sound-line-grad-${s.useId()}`,a=st(mg,on,sn);return t.jsxs("div",{ref:a,className:"pass-card-bg pass-card-bg-sound-line","aria-hidden":"true",children:[t.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:[t.jsx("defs",{children:t.jsxs("linearGradient",{id:n,x1:"0",y1:"0",x2:"1",y2:"0",children:[t.jsx("stop",{offset:"20%",stopColor:"var(--color-main)"}),t.jsx("stop",{offset:"80%",stopColor:"var(--color-sub)"})]})}),t.jsx("g",{transform:"translate(25, 45)",children:t.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(#${n})`,strokeWidth:"50",strokeLinecap:"round"})})]}),t.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-line__symbol",style:{"--symbol-url":`url("${aa}")`}})]})}const Cg={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"};function gg(e={}){const n=st(Cg,on,sn);return t.jsxs("div",{ref:n,className:"pass-card-bg pass-card-bg-talk-v1","aria-hidden":"true",children:[t.jsx("div",{className:"pass-card-bg-talk-v1__shape pass-card-bg-talk-v1__shape--left"}),t.jsx("div",{className:"pass-card-bg-talk-v1__shape pass-card-bg-talk-v1__shape--right"}),t.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-talk-v1__symbol",style:{"--symbol-url":`url("${aa}")`}})]})}function bg(e,n){if(e){if(n==="manager_pro")return t.jsx(gg,{});if(n==="manager_standard")return t.jsx(fg,{});if(n==="manager_lite")return t.jsx(Si,{})}}function yg(e){const n=ea(e);if(!n)return null;const a=n.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!a)return n;const[,r,o,i]=a;return t.jsxs(t.Fragment,{children:[r&&t.jsx("span",{className:"payment-plan__pricing-symbol h4",children:r}),o,i.trim()&&t.jsx("span",{className:"payment-plan__pricing-symbol h4",children:i.trim()})]})}function vg(e){const{t:n}=he.useTranslation(),a=n("payment.plan.tierFallback",{defaultValue:"\uC774\uC6A9\uAD8C"}),r=n("payment.plan.openPromo",{defaultValue:"\uC624\uD508 \uD2B9\uAC00"}),{plan:o,onSelect:i,period:l="monthly",ownedCodes:c}=e||{},u=b=>!!b&&!!c?.includes(b),d=b=>b.onceOnly??/오픈\s*특가/.test(b.label??""),p=(o.tiers||[]).some(b=>d(b)&&u(b.code)),h=b=>{const N=b.prices?b.prices[l]:b.price;return N?(o.tiers||[]).some(w=>!!w.badge&&w.originals?.[l]===N):!1},m=o.colorToken?`var(--color-${o.colorToken})`:"var(--color-gray)",g=n("payment.plan.freePrice","\uBB34\uB8CC"),y=n("payment.products.mgrEnterprise.tier.price","\uBB38\uC758"),C=b=>b.prices?b.prices[l]:b.price,f=(o.tiers||[]).length>0&&(o.tiers||[]).every(b=>{const N=C(b);return N==="\uBB34\uB8CC"||N===g||N==="0\uC6D0"||typeof N=="string"&&/\d/.test(N)&&!/[1-9]/.test(N)}),v=(o.tiers||[]).length>0&&(o.tiers||[]).every(b=>{const N=C(b);return N==="\uBB38\uC758"||N===y}),x=o.group==="org",_=x?"manager":"speechear";return t.jsxs("div",{className:"payment-plan__card",style:{borderColor:m,"--plan-color":m},children:[o.cardBadge&&t.jsx("div",{className:"payment-plan__card-badge",children:t.jsx(it,{label:o.cardBadge,variant:"main",size:"medium",fill:"soft"})}),t.jsxs("div",{className:"payment-plan__title",children:[t.jsx("p",{className:"payment-plan__quote body-3b",style:{color:m},children:o.quote||"\xA0"}),t.jsx("h3",{className:"payment-plan__title-heading h1",children:o.tier??o.title}),t.jsx("p",{className:"payment-plan__subtitle body-3",children:o.subtitle})]}),t.jsxs("div",{className:"payment-plan__box",children:[t.jsx("span",{className:"payment-plan__box-title body-3b",children:n("payment.plan.recommendedFor","\uC774\uB7F0 \uBD84\uAED8 \uCD94\uCC9C\uD569\uB2C8\uB2E4.")}),t.jsx("ul",{className:"payment-plan__feature-list",children:(o.recommendedFor||[]).map((b,N)=>t.jsxs("li",{className:"payment-plan__feature-item body-3",children:[t.jsx(Oe,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:m}}),b]},N))})]}),t.jsxs("div",{className:"payment-plan__box",children:[t.jsx("span",{className:"payment-plan__box-title body-3b",children:n("payment.plan.features","\uD575\uC2EC \uAE30\uB2A5")}),t.jsx("ul",{className:"payment-plan__feature-list",children:(o.features||[]).map((b,N)=>t.jsxs("li",{className:"payment-plan__feature-item body-3",children:[t.jsx(Oe,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:m}}),b]},N))})]}),t.jsx("div",{className:"payment-plan__card-pricing",children:f?null:v?t.jsx(oe,{htmlType:"button",className:"payment-plan__contact-button",label:n("payment.plan.contact",{defaultValue:"\uBB38\uC758\uD558\uAE30"}),variant:"main",size:56,onClick:()=>o.tiers?.[0]&&i?.({...o.tiers[0],productId:o.id,productTitle:o.title})}):t.jsx(t.Fragment,{children:t.jsx("div",{className:"payment-plan__pricing-list",children:(o.tiers||[]).map(b=>{const N=b.label||a,w=d(b),k=w||b.openPromo===!0,j=N.replace(/^오픈\s*특가\s*/,"")||a,A=b.prices?b.prices[l]:b.price,S=b.badge?k?`${r}
832
+ ${b.badge}`:b.badge:void 0;if(w&&u(b.code))return null;if(!b.badge&&!p)return h(b)?null:t.jsxs("div",{className:`payment-plan__pricing-row payment-plan__pricing-row--static${b.highlight?" payment-plan__pricing-row--highlight":""}`,children:[t.jsx("div",{className:"payment-plan__pricing-row-title",children:t.jsx("div",{className:"payment-plan__pricing-row-label h5b",children:b.label})}),t.jsx("div",{className:"payment-plan__pricing-row-price",children:t.jsx("span",{className:"payment-plan__pricing-current h1",children:yg(A)})})]},b.id);const q=o.tier??(x?o.title:void 0),W=t.jsx(ji,{showPrice:!0,product:{type:_,code:b.code,name:j,label:q,price:A,originalPrice:b.originals?.[l]??void 0,discountLabel:S},bg:bg(x,o.id)}),B=()=>i?.({...b,productId:o.id,productTitle:o.title,preview:W});return t.jsx("div",{className:"payment-plan__pricing-card",onClick:B,onKeyDown:i?O=>{O.target===O.currentTarget&&(O.key==="Enter"||O.key===" ")&&(O.preventDefault(),B())}:void 0,role:i?"button":void 0,tabIndex:i?0:void 0,children:W},b.id)})})})})]})}function xg({variant:e="default"}){return t.jsxs("div",{className:`pass-card-bg pass-card-bg--${e}`,"aria-hidden":"true",children:[t.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--1"}),t.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--2"}),t.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--3"})]})}var Cr='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 Ti={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#c9c9c9"};function _g(){const e=st(Ti,on,sn);return t.jsx("div",{ref:e,className:"pass-card-bg pass-card-bg-ihab","aria-hidden":"true",children:t.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-ihab__symbol-top",style:{"--symbol-url":`url("${Cr}")`}})})}const Ei={text:"#ffffff",sub:"var(--color-lightGray)",logoBase:"Logo_speechearManager_kr",logoColor:"_white",copyrightColor:"#ffffff"};function wg(e={}){const n=st(Ei,on,sn);return t.jsxs("div",{ref:n,className:"pass-card-bg pass-card-bg-left-color-grid","aria-hidden":"true",children:[t.jsx("div",{className:"pass-card-bg-left-color-grid__bar"}),t.jsx("div",{className:"pass-card-bg-left-color-grid__grid"}),t.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-left-color-grid__symbol",style:{"--symbol-url":`url("${aa}")`}})]})}function Mi({keys:e,anchor:n="top-right",scale:a,className:r=""}){const o=Array.isArray(e)?e:[e];return t.jsx("span",{className:ye("shortcut-badge",`shortcut-badge--${n}`,r),style:a===void 0?void 0:{"--shortcut-badge-scale":String(a)},children:o.map((i,l)=>t.jsxs("span",{className:"shortcut-badge__group",children:[l>0&&t.jsx("span",{className:"shortcut-badge__plus",children:"+"}),t.jsx("kbd",{className:"shortcut-badge__key",children:i})]},`${i}-${l}`))})}const ra=(e,n,a)=>e+(n-e)*a;function kg({speakers:e,size:n=300,viewT:a=0,activeSpeakerId:r=null,playedIds:o,selectedId:i=null,answerId:l=null,showFeedback:c=!1,pulseSelected:u=!1,pulseSelectedDuration:d,pulseScale:p,clickable:h=!1,onSelectSpeaker:m,buttonSize:g=40,showIcon:y=!0,onCenterClick:C,centerLabel:f,centerDisabled:v=!1,centerAttention:x=!1,shortcutAnchor:_="top-right",shortcutScale:b,scaleShortcut:N=!1}){const{t:w}=he.useTranslation(),k=Math.max(0,Math.min(1,a)),j=n/2,A=110/300,S=.18,q=J=>n*(A+(J-1)*S),W=J=>{const be=q(J.row??1),xe=J.angleDeg*Math.PI/180;return{x:j+be*Math.cos(xe),y:j+be*Math.sin(xe)}},B=Math.max(...e.map(J=>J.row??1),1),O=n*.08,E=n*.1,ee=n*.24,M=n-2*O,H=n-E-ee,Q=n-ee/2,te=s.useMemo(()=>[...new Set(e.map(J=>J.deg))].sort((J,be)=>J-be),[e]),Y=te.length,V=Math.max(68,Y>1?M/(Y-1):0),T=s.useMemo(()=>new Map(te.map((J,be)=>[J,be])),[te]),P=J=>{const be=T.get(J.deg)??0,xe=j+(be-(Y-1)/2)*V,Ce=B>1?Math.min(68,H/(B-1)):0,fe=Ce*(B-1),ve=E+(H-fe)/2,Se=B===1?E+H*.4:ve+(B-(J.row??1))*Ce;return{x:xe,y:Se}},F=J=>{const be=W(J),xe=P(J);return{x:ra(be.x,xe.x,k),y:ra(be.y,xe.y,k)}},L={x:j,y:ra(j,Q,k)},R=Math.round(g*1.2),z=Math.round(Math.max(16,Math.min(80,g*.7))),ae=[],ne=new Map;for(const J of e){const be=J.row??1;ne.has(be)||ne.set(be,[]),ne.get(be).push(J)}for(const[J,be]of ne.entries()){if(be.length<2)continue;const xe=[...be].sort((Me,Je)=>Me.deg-Je.deg),Ce=xe.map(Me=>F(Me)),fe=xe.map(Me=>Me.deg),ve=fe[fe.length-1]-fe[0],Se=ve/(fe.length-1),X=360-ve,ue=xe.length>=3&&Se>0&&X<=Se*1.5,ke=Math.round(q(J)*1e3)/1e3,Le=(Me,Je,ze,Ve)=>{const ge=(Je.angleDeg-Me.angleDeg+540)%360-180;if(ge===0)return`L ${Ve.x} ${Ve.y}`;if(k===0)return`A ${ke} ${ke} 0 0 ${ge>0?1:0} ${Ve.x} ${Ve.y}`;const He=(Me.angleDeg+ge/2)*Math.PI/180,Be={x:j+ke*Math.cos(He),y:j+ke*Math.sin(He)},Ee={x:(ze.x+Ve.x)/2,y:(ze.y+Ve.y)/2},Ne={x:ra(Be.x,Ee.x,k),y:ra(Be.y,Ee.y,k)},nt={x:2*Ne.x-Ee.x,y:2*Ne.y-Ee.y};return`Q ${nt.x} ${nt.y} ${Ve.x} ${Ve.y}`},Fe=ue?[...xe,xe[0]]:xe,De=ue?[...Ce,Ce[0]]:Ce;let Pe=`M ${De[0].x} ${De[0].y}`;for(let Me=1;Me<De.length;Me++)Pe+=" "+Le(Fe[Me-1],Fe[Me],De[Me-1],De[Me]);ae.push({key:`arc-${J}`,d:Pe})}const re=s.useMemo(()=>new Set(o??[]),[o]),pe=J=>({idle:"",active:w("soundCompass.state.active","\uC18C\uB9AC \uB098\uB294 \uC911"),played:w("soundCompass.state.played","\uB4E4\uC74C"),correct:w("soundCompass.state.correct","\uC815\uB2F5"),wrong:w("soundCompass.state.wrong","\uC624\uB2F5")})[J],_e=J=>{if(r===J.id)return"active";if(c){if(J.id===l)return"correct";if(J.id===i&&i!==l)return"wrong"}return re.has(J.id)?"played":"idle"},Z=J=>r===J.id?"loop":c?J.id===l?"loop":null:u&&J.id===i?"once":null,ie=(J,be)=>{switch(J){case"played":case"correct":return t.jsx(go,{size:be});case"wrong":return t.jsx(Bo,{size:be});default:return t.jsx(No,{size:be})}};return t.jsx("div",{className:"sound-compass",children:t.jsxs("div",{className:"sound-compass__compass-wrap",style:{width:n,height:n},children:[t.jsxs("svg",{width:n,height:n,viewBox:`0 0 ${n} ${n}`,className:"sound-compass__svg",children:[k===0&&e.map(J=>{const{x:be,y:xe}=F(J);return t.jsx("line",{x1:L.x,y1:L.y,x2:be,y2:xe,stroke:"#dde3ec",strokeWidth:"1"},J.id)}),ae.map(J=>t.jsx("path",{d:J.d,fill:"none",stroke:"#dde3ec",strokeWidth:"1"},J.key))]}),x&&!v&&t.jsx("div",{className:"sound-compass__pulse sound-compass__pulse--active sound-compass__pulse--center",style:{width:R,height:R,left:L.x-R/2,top:L.y-R/2}}),C?t.jsx("button",{type:"button",className:`sound-compass__center sound-compass__center--button${v?" sound-compass__center--disabled":""}`,style:{width:R,height:R,left:L.x,top:L.y},"aria-label":f,"aria-disabled":v||void 0,tabIndex:v?-1:0,onClick:v?void 0:C,children:t.jsx(Oa,{size:z,color:"currentColor",strokeWidth:1.5})}):t.jsx("div",{className:"sound-compass__center",style:{width:R,height:R,left:L.x,top:L.y},children:t.jsx(Oa,{size:z,color:"currentColor",strokeWidth:1.5})}),e.map((J,be)=>{const{x:xe,y:Ce}=F(J),fe=_e(J),ve=Z(J),Se={...b!==void 0||N?{"--shortcut-badge-scale":String(b??Math.max(.75,Math.min(3,g/56)))}:null,pointerEvents:h?"auto":"none",cursor:h?"pointer":"default",zIndex:fe!=="idle"?10:1},X=g,ue=Math.round(Math.max(10,Math.min(56,X*.38))),ke=Math.round(Math.max(7,Math.min(18,X*.2))),Le=Math.round(Math.max(10,Math.min(56,X*.4))),Fe=y==="answered"&&(fe==="played"||fe==="correct"||fe==="wrong"),De=y===!0||Fe,Pe=!Fe;return t.jsxs("div",{className:"sound-compass__speaker-pos",style:{...Se,left:xe-X/2,top:Ce-X/2},children:[ve&&t.jsx("div",{className:`sound-compass__pulse sound-compass__pulse--${fe}`+(ve==="once"?" sound-compass__pulse--once":""),style:{width:X,height:X,...ve==="once"&&d!==void 0?{"--sc-pulse-duration-once":`${d}ms`}:null,...p!==void 0?{"--sc-pulse-scale":String(p)}:null}}),t.jsxs("button",{type:"button",tabIndex:h?0:-1,"aria-disabled":h?void 0:!0,onClick:h?()=>m?.(J.id):void 0,className:`sound-compass__speaker-btn sound-compass__speaker-btn--${fe}`,style:{width:X,height:X},"aria-label":pe(fe)?`${J.label}, ${pe(fe)}`:J.label,"aria-pressed":i!=null?J.id===i:void 0,children:[De&&ie(fe,ue),Pe&&t.jsx("span",{className:"sound-compass__speaker-number",style:{fontSize:y===!0?ke:Le},children:be+1})]}),J.shortcut&&t.jsx(Mi,{keys:J.shortcut,anchor:_,className:"sound-compass__speaker-shortcut"})]},J.id)})]})})}function Ag({children:e,position:n="top-left",size:a=24,className:r=""}){return t.jsx("span",{className:ye("circle-badge","circle-badge--number",`circle-badge--${a}`,`circle-badge--${n}`,r),children:e})}function Ng({orientation:e="horizontal",label:n,className:a=""}){const r=ye("divider",`divider--${e}`,n&&e==="horizontal"?"divider--labeled":"",a);return e==="vertical"?t.jsx("div",{className:r,role:"separator","aria-orientation":"vertical"}):n?t.jsxs("div",{className:r,role:"separator","aria-orientation":"horizontal",children:[t.jsx("span",{className:"divider__line"}),t.jsx("span",{className:"divider__label caption-1",children:n}),t.jsx("span",{className:"divider__line"})]}):t.jsx("div",{className:r,role:"separator","aria-orientation":"horizontal"})}function Li({checked:e,onChange:n,name:a,value:r,disabled:o=!1,label:i,className:l=""}){const c=s.useId();return t.jsxs("label",{className:`radio${o?" radio--disabled":""} ${l}`.trim(),htmlFor:c,children:[t.jsx("input",{id:c,type:"radio",name:a,value:r,checked:e,disabled:o,onChange:u=>n?.(u.target.checked)}),t.jsx("span",{className:"radio__dot"}),i&&t.jsx("span",{className:"radio__label body-2",children:i})]})}function Bg({options:e,value:n,onChange:a,name:r,disabled:o=!1,direction:i="vertical",className:l="",ariaLabel:c}){const u=s.useId(),d=r??`radio-group-${u}`;return t.jsx("div",{className:`radio-group radio-group--${i} ${l}`.trim(),role:"radiogroup","aria-label":c,children:e.map(p=>t.jsx(Li,{name:d,value:p.value,checked:n===p.value,disabled:o||p.disabled,label:p.label,onChange:h=>{h&&a?.(p.value)}},p.value))})}const Sg={info:"info",success:"check-circle",warning:"alert-triangle",danger:"alert-circle"};function Dg({tone:e="info",title:n,message:a,children:r,dismissible:o=!1,onDismiss:i,className:l=""}){const{t:c}=he.useTranslation(),[u,d]=s.useState(!1),p=s.useCallback(()=>{d(!0),i?.()},[i]);if(u)return null;const h=ye("alert",`alert--${e}`,l),m=!!n,g=!!(a||r);return t.jsxs("div",{className:h,role:"alert",children:[t.jsxs("div",{className:"alert__body",children:[t.jsxs("div",{className:"alert__header",children:[t.jsx(Oe,{icon:Sg[e],size:20,className:"alert__icon"}),m&&t.jsx("span",{className:"alert__title body-2",children:n}),!m&&g&&t.jsx("div",{className:"alert__message body-3",children:a||r})]}),m&&g&&t.jsx("div",{className:"alert__message alert__message--indented body-3",children:a||r})]}),o&&t.jsx("button",{type:"button",className:"alert__dismiss",onClick:p,"aria-label":c("common.close","\uB2EB\uAE30"),children:"\xD7"})]})}const jg={ready:"search",guide:"info",error:"circle-alert"};function Tg(e,n){const a=n.filter(Boolean);if(a.length===0)return e;const r=[];let o=0,i=0;for(const l of a){const c=e.indexOf(l,o);c<0||(c>o&&r.push(e.slice(o,c)),r.push(t.jsx("strong",{className:"search-summary__em body-2",children:l},i++)),o=c+l.length)}return o<e.length&&r.push(e.slice(o)),r}function Eg({status:e="guide",label:n,children:a,emphasis:r,icon:o,className:i=""}){const l=o===!1?null:o??jg[e],c=ye("search-summary",`search-summary--${e}`,i),u=n??a,d=typeof u=="string"&&r&&r.length>0?Tg(u,r):u;return t.jsxs("div",{className:c,role:"status","aria-live":"polite",children:[l!=null&&t.jsx(Oe,{icon:l,size:18,className:"search-summary__icon"}),t.jsx("span",{className:"search-summary__text body-2",children:d})]})}function oa({title:e,items:n}){const{t:a}=he.useTranslation(),{anchorRect:r,openAt:o,close:i}=_a();return t.jsxs(t.Fragment,{children:[t.jsx(oe,{htmlType:"button",size:24,type:"dot",icon:"info",variant:"transparent-gray",useBorder:!1,selected:!!r,ariaLabel:a("common.info","\uC124\uBA85"),onPointerEnter:l=>o(l.currentTarget),onPointerLeave:i,onFocus:l=>o(l.currentTarget),onBlur:i}),r&&t.jsx(Sn,{title:e,items:n,showIndex:n.length>1,anchorRect:r,onClose:i})]})}function Mg({items:e=[],value:n,onChange:a,className:r="",size:o=40}){const i=s.useId(),{t:l}=he.useTranslation(),c=s.useRef(null),u=e.find(C=>!C.disabled)?.key,d=e.some(C=>C.key===n)?n:u??e[0]?.key,p=e.find(C=>C.key===d&&!C.disabled)?.key??u,h=()=>Array.from(c.current?.querySelectorAll('[role="tab"]:not(:disabled)')??[]),m=(C,f=h())=>{if(f.length===0)return;const v=(C%f.length+f.length)%f.length;f[v]?.focus(),f[v]?.click()},g=C=>{if(!["ArrowRight","ArrowDown","ArrowLeft","ArrowUp","Home","End"].includes(C.key))return;C.preventDefault();const f=h(),v=f.indexOf(C.currentTarget);C.key==="ArrowRight"||C.key==="ArrowDown"?m(v+1,f):C.key==="ArrowLeft"||C.key==="ArrowUp"?m(v-1,f):C.key==="Home"?m(0,f):m(f.length-1,f)},y=e.find(C=>C.key===d);return t.jsxs("div",{className:`tabs ${r}`.trim(),children:[t.jsx("div",{ref:c,className:`tabs__list tabs__list--${o}`,role:"tablist","aria-label":l("tabs.ariaLabel","\uD0ED"),children:e.map(C=>t.jsx("button",{id:`tabs__tab-${i}-${C.key}`,type:"button",role:"tab","aria-selected":C.key===d,"aria-controls":`tabs__panel-${i}-${C.key}`,disabled:C.disabled,tabIndex:C.key===p?0:-1,className:`tabs__tab body-2${C.key===d?" tabs__tab--active":""}`,onClick:()=>a?.(C.key),onKeyDown:g,children:C.label},C.key))}),y&&t.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 Lg={xs:12,sm:16,md:20,lg:28,xl:36};function $g(e){const n=e.trim().split(/\s+/).filter(Boolean);return n.length===0?"":n.length===1?[...n[0]].slice(0,2).join("").toUpperCase():([...n[0]][0]+[...n[n.length-1]][0]).toUpperCase()}function Rg({src:e,name:n,size:a="md",shape:r="circle",className:o=""}){const{t:i}=he.useTranslation(),[l,c]=s.useState(null),u=!!e&&l===e,d=n?$g(n):"",p=!!e&&!u,h=!p&&!!d,m=n||i("avatar.ariaLabel","\uC0AC\uC6A9\uC790 \uC544\uBC14\uD0C0");return t.jsxs("span",{className:`avatar avatar--${a} avatar--${r} ${o}`.trim(),role:"img","aria-label":m,children:[p&&t.jsx("img",{className:"avatar__image",src:e,alt:m,onError:()=>c(e??null)}),!p&&h&&t.jsx("span",{className:"avatar__initials","aria-hidden":"true",children:d}),!p&&!h&&t.jsx(Oe,{icon:"user-round",size:Lg[a],className:"avatar__icon"})]})}function Pg(e,n){if(!n)return!0;const a=n.split(",").map(i=>i.trim()).filter(Boolean);if(a.length===0)return!0;const r=e.name.toLowerCase(),o=e.type.toLowerCase();return a.some(i=>{const l=i.toLowerCase();return l.startsWith(".")?r.endsWith(l):l.endsWith("/*")?o.startsWith(l.slice(0,-1)):o===l})}function Ig({onFilesSelected:e,accept:n,multiple:a=!1,disabled:r=!1,showFileList:o=!0,files:i,onRemove:l,className:c=""}){const{t:u}=he.useTranslation(),d=s.useRef(null),[p,h]=s.useState(!1),[m,g]=s.useState([]),y=i??m,C=w=>{if(!w||w.length===0)return;const k=Array.from(w).filter(A=>Pg(A,n));if(k.length===0)return;const j=a?k:k.slice(0,1);if(i===void 0){const A=a?[...y,...j]:j;g(A),e?.(A)}else e?.(j)},f=w=>{w.preventDefault(),!r&&h(!0)},v=w=>{w.preventDefault(),h(!1)},x=w=>{w.preventDefault(),h(!1),!r&&C(w.dataTransfer.files)},_=w=>{C(w.target.files),w.target.value=""},b=()=>{r||d.current?.click()},N=w=>{if(l?.(w),i===void 0){const k=y.filter((j,A)=>A!==w);g(k),l||e?.(k)}};return t.jsxs("div",{className:`file-upload ${c}`.trim(),children:[t.jsxs("div",{className:ye("file-upload__dropzone",p&&"file-upload__dropzone--dragging",r&&"file-upload__dropzone--disabled"),role:"button",tabIndex:r?-1:0,"aria-disabled":r,onClick:b,onKeyDown:w=>{(w.key==="Enter"||w.key===" ")&&(w.preventDefault(),b())},onDragOver:f,onDragLeave:v,onDrop:x,children:[t.jsx(Oe,{icon:"upload",size:24,className:"file-upload__icon"}),t.jsx("span",{className:"file-upload__prompt body-2",children:u("fileUpload.dragPrompt","\uD30C\uC77C\uC744 \uC774\uACF3\uC5D0 \uB4DC\uB798\uADF8\uD558\uC5EC \uC5C5\uB85C\uB4DC")}),t.jsx("button",{type:"button",className:"file-upload__browse-button body-3",disabled:r,onClick:w=>{w.stopPropagation(),b()},children:u("fileUpload.browseButton","\uD30C\uC77C \uC120\uD0DD")}),t.jsx("input",{ref:d,type:"file",className:"file-upload__input",accept:n,multiple:a,disabled:r,onChange:_,tabIndex:-1})]}),o&&y.length>0&&t.jsx("ul",{className:"file-upload__list",children:y.map((w,k)=>t.jsxs("li",{className:"file-upload__list-item body-3",children:[t.jsx("span",{className:"file-upload__file-name body-3",children:w.name}),t.jsx("button",{type:"button",className:"file-upload__remove-button","aria-label":u("fileUpload.removeAriaLabel",{name:w.name}),onClick:()=>N(k),children:t.jsx(Oe,{icon:"x",size:14})})]},`${w.name}-${k}`))})]})}function Fg({items:e,className:n=""}){const{t:a}=he.useTranslation();return t.jsx("nav",{className:`breadcrumb ${n}`.trim(),"aria-label":a("breadcrumb.ariaLabel","\uC774\uB3D9 \uACBD\uB85C"),children:t.jsx("ol",{className:"breadcrumb__list",children:e.map((r,o)=>{const i=o===e.length-1;return t.jsxs("li",{className:"breadcrumb__item",children:[i?t.jsx("span",{className:"breadcrumb__current body-3","aria-current":"page",children:r.label}):t.jsx("button",{type:"button",className:"breadcrumb__link body-3",onClick:r.onClick,children:r.label}),!i&&t.jsx(Oe,{icon:"chevron-right",size:14,className:"breadcrumb__separator"})]},o)})})})}const Og={small:14,medium:20,large:28};function Vg({value:e,onChange:n,max:a=5,readOnly:r=!1,size:o="medium",ariaLabel:i,className:l=""}){const{t:c}=he.useTranslation(),u=r||!n,[d,p]=s.useState(null),h=d??e,m=Og[o],g=b=>{u||n?.(b)},y=b=>{u||p(b)},C=s.useRef(null),f=b=>{const N=Math.min(a,Math.max(1,b));n?.(N),Array.from(C.current?.querySelectorAll("[data-star]")??[]).find(w=>w.dataset.star===String(N))?.focus()},v=b=>{if(!u){switch(b.key){case"ArrowRight":case"ArrowUp":f((e||0)+1);break;case"ArrowLeft":case"ArrowDown":f((e||1)-1);break;case"Home":f(1);break;case"End":f(a);break;default:return}b.preventDefault()}},x=e>=1&&e<=a?Math.round(e):1,_=()=>{u||p(null)};return t.jsx("div",{className:`rating rating--${o}${u?" rating--readOnly":""} ${l}`.trim(),ref:C,onKeyDown:v,role:u?"img":"radiogroup","aria-label":u?c("rating.valueLabel",{value:e,max:a}):i??c("rating.groupLabel","\uBCC4\uC810"),onMouseLeave:_,children:Array.from({length:a},(b,N)=>{const w=N+1,k=Math.max(0,Math.min(1,h-N)),j=k>0&&k<1,A=t.jsxs("span",{className:"rating__star-wrap",children:[t.jsx(Oe,{icon:"star",size:m,className:"rating__star rating__star--empty"}),k>0&&t.jsx("span",{className:`rating__star-fill${j?" rating__star-fill--half":""}`,style:j?{width:`${k*100}%`}:void 0,children:t.jsx(Oe,{icon:"star",size:m,className:"rating__star rating__star--filled"})})]});return u?t.jsx("span",{className:"rating__item","aria-hidden":"true",children:A},w):t.jsx("button",{type:"button",className:"rating__item rating__item--interactive",role:"radio","aria-checked":e===w,"aria-label":c("rating.starLabel",{n:w}),"data-star":w,tabIndex:w===x?0:-1,onClick:()=>g(w),onMouseEnter:()=>y(w),children:A},w)})})}const Hg=20,zg=["#499cdf","#4dcdc0","#2fae9e","#e6b94e","#d9534f","#e06b68","#bfc7d1"];function Wg({value:e,onChange:n,palette:a=zg,size:r=40,className:o="",ariaLabel:i}){const{t:l}=he.useTranslation();return t.jsx("div",{className:`color-picker ${o}`.trim(),role:"group","aria-label":i,children:a.map(c=>{const u=e?.toLowerCase()===c.toLowerCase();return t.jsx("button",{type:"button",className:`color-picker__swatch color-picker__swatch--${r}`,style:{backgroundColor:c},onClick:()=>n(c),"aria-pressed":u,"aria-label":u?`${c} ${l("colorPicker.selected","\uC120\uD0DD\uB428")}`:c,children:u&&t.jsx(Oe,{icon:"check",size:Hg,className:"color-picker__check"})},c)})})}function qg({icon:e,count:n,title:a,className:r="",onClick:o,onMouseEnter:i,onMouseLeave:l}){const c=ye("count-tile",o&&"count-tile--clickable",r);return t.jsxs("div",{className:c,onClick:o,onKeyDown:o?u=>{u.key!=="Enter"&&u.key!==" "||(u.preventDefault(),u.currentTarget.click())}:void 0,onMouseEnter:i,onMouseLeave:l,role:o?"button":"img",tabIndex:o?0:void 0,"aria-label":a?`${a} ${n}`:String(n),children:[t.jsx(Oe,{icon:e,size:20,className:"count-tile__icon"}),t.jsx("span",{className:"count-tile__count h5","aria-hidden":"true",children:n})]})}let sa=0,$i="",Ri="",ia=0;function Pi(){return Ii(!1)}function Ug(){return Ii(!0)}function Ii(e){const n=typeof document<"u";sa===0&&n&&($i=document.body.style.overflow,document.body.style.overflow="hidden"),e&&n&&(ia===0&&(Ri=document.body.style.paddingRight),ia++,document.body.style.paddingRight="0px"),sa++;let a=!1;return()=>{a||(a=!0,sa=Math.max(0,sa-1),e&&n&&(ia=Math.max(0,ia-1),ia===0&&(document.body.style.paddingRight=Ri)),sa===0&&n&&(document.body.style.overflow=$i))}}function Gg(){return t.jsx("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round","aria-hidden":!0,children:t.jsx("path",{d:"M6 6l12 12M18 6 6 18"})})}function Kg({open:e,onClose:n,ariaLabel:a,title:r,children:o,size:i="md",closeOnBackdrop:l=!0,closeOnEscape:c=!0,showClose:u=!0,className:d,contentClassName:p}){const{t:h}=he.useTranslation(),m=s.useId(),g=s.useRef(null),y=s.useCallback(()=>n(),[n]);s.useEffect(()=>{if(!e)return;const x=document.activeElement,_=Pi(),b=g.current;return b?.focus(),()=>{_();const N=document.activeElement;(!N||N===document.body||b&&b.contains(N))&&x?.focus?.()}},[e]);const C=s.useRef(y),f=s.useRef(c);s.useEffect(()=>{C.current=y,f.current=c}),s.useEffect(()=>{if(e)return Bn(()=>{f.current&&C.current()})},[e]);const v=s.useRef(!1);return sr(g,e),!e||typeof document>"u"?null:It.createPortal(t.jsx("div",{className:ye("dialog",d),onPointerDown:l?x=>{v.current=x.target===x.currentTarget}:void 0,onMouseDown:x=>{x.target===x.currentTarget&&x.preventDefault()},onClick:l?x=>{const _=v.current;v.current=!1,_&&x.target===x.currentTarget&&y()}:void 0,children:t.jsxs("div",{ref:g,role:"dialog","aria-modal":"true","aria-label":r?void 0:a,"aria-labelledby":r?m:void 0,tabIndex:-1,className:ye("dialog__surface",`dialog__surface--${i}`,p),onClick:x=>x.stopPropagation(),children:[r?t.jsx("div",{className:"dialog__header",children:t.jsx("h2",{id:m,className:"dialog__title h4b",children:r})}):null,u?t.jsx("button",{type:"button",className:"dialog__close","aria-label":h("common.close","\uB2EB\uAE30"),onClick:y,children:t.jsx(Gg,{})}):null,t.jsx("div",{className:"dialog__body",children:o})]})}),document.body)}function Yg({columns:e,rows:n,rowKey:a,title:r,toolbar:o,empty:i="\uB4F1\uB85D\uB41C \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",loading:l,caption:c,className:u=""}){const d=!l&&n.length===0;return t.jsxs("div",{className:ye("board",u),children:[r||o?t.jsxs("div",{className:"board__head",children:[r?t.jsx("h2",{className:"board__title",children:r}):t.jsx("span",{}),o?t.jsx("div",{className:"board__toolbar",children:o}):null]}):null,t.jsxs("table",{className:"board__table",children:[c?t.jsx("caption",{className:"board__caption",children:c}):null,t.jsx("thead",{children:t.jsx("tr",{children:e.map(p=>t.jsx("th",{scope:"col",className:ye("board__th",`board__cell--${p.headerAlign??p.align??"left"}`),style:p.width?{width:p.width}:void 0,children:p.header},p.key))})}),t.jsx("tbody",{children:l?t.jsx("tr",{children:t.jsx("td",{className:"board__state",colSpan:e.length,children:l})}):d?t.jsx("tr",{children:t.jsx("td",{className:"board__state",colSpan:e.length,children:i})}):n.map((p,h)=>t.jsx("tr",{className:"board__row",children:e.map(m=>t.jsx("td",{className:ye("board__td",`board__cell--${m.align??"left"}`),children:m.render(p,h)},m.key))},a(p,h)))})]})]})}function Zg({name:e,role:n,photo:a,media:r,credentials:o,size:i=190,className:l=""}){return t.jsxs("div",{className:ye("person-card",l),children:[t.jsx("div",{className:"person-card__photo",style:{width:i,height:i},children:r??(a?t.jsx("img",{src:a,alt:n?`${e} ${n}`:e}):null)}),t.jsx("h3",{className:"person-card__name",children:e}),n?t.jsx("p",{className:"person-card__role",children:n}):null,o?.length?t.jsx("ul",{className:"person-card__credentials",children:o.map(c=>t.jsx("li",{children:c},c))}):null]})}function Xg({groups:e,className:n=""}){return t.jsx("div",{className:ye("timeline",n),children:e.map(a=>t.jsxs("section",{className:"timeline__group",children:[t.jsx("h3",{className:"timeline__title",children:a.title}),t.jsx("ul",{className:"timeline__rows",children:a.entries.map((r,o)=>t.jsxs("li",{className:"timeline__row",children:[r.label?t.jsx("span",{className:"timeline__label",children:r.label}):null,t.jsx("div",{className:"timeline__items",children:r.items.map((i,l)=>t.jsx("p",{children:i},l))})]},`${r.label??""}-${o}`))})]},a.title))})}function Jg({title:e,kind:n,body:a,badge:r,badgeSrc:o,footer:i,width:l,className:c=""}){const u=r??(o?t.jsx("img",{src:o,alt:""}):null);return t.jsxs("div",{className:ye("publication-card",c),style:l?{width:l,flexShrink:0}:void 0,children:[u?t.jsx("div",{className:"publication-card__badge","aria-hidden":"true",children:u}):null,t.jsx("h3",{className:"publication-card__title",children:e}),n?t.jsx("p",{className:"publication-card__kind",children:n}):null,t.jsx("p",{className:"publication-card__body",children:a}),i?t.jsx("div",{className:"publication-card__footer",children:i}):null]})}function Qg({logo:e,alt:n,onDone:a,durationMs:r=3e3}){const o=cr(a);return s.useEffect(()=>{const i=setTimeout(()=>o.current?.(),r);return()=>clearTimeout(i)},[r,o]),t.jsx("div",{className:"splash-logo",style:{"--splash-logo-duration":`${r}ms`},"aria-hidden":"true",children:t.jsx("img",{src:e,alt:n,className:"splash-logo__image"})})}function e4({eyebrow:e,eyebrowIndex:n,title:a,description:r,level:o=2,tone:i="dark",className:l=""}){const c=o===1?"h1":"h2";return t.jsxs("div",{className:ye("section-header",`section-header--${i}`,l),children:[e?t.jsxs("p",{className:"section-header__eyebrow",children:[n?t.jsxs(t.Fragment,{children:[t.jsx("span",{className:"section-header__index",children:n}),t.jsx("span",{"aria-hidden":!0,className:"section-header__rule"})]}):null,e]}):null,a?t.jsx(c,{className:"section-header__title",children:a}):null,r?t.jsx("div",{className:"section-header__description",children:r}):null]})}function t4({items:e,className:n=""}){return t.jsx("ul",{className:ye("company-meta",n),children:e.map((a,r)=>t.jsxs("li",{className:"company-meta__item",children:[r>0?t.jsx("span",{"aria-hidden":!0,className:"company-meta__divider",children:"|"}):null,a]},a))})}function Fi({value:e,onChange:n,suggestions:a,openOnFocus:r=!1}){const o=s.useId(),[i,l]=s.useState(!1),[c,u]=s.useState(-1),d=s.useRef(null),p=s.useMemo(()=>{if(!a.length)return[];const v=e??"";return v?a.filter(x=>x.toLowerCase().includes(v.toLowerCase())):r?a:[]},[a,e,r]);s.useEffect(()=>{i||u(-1)},[i]),s.useEffect(()=>()=>{d.current&&clearTimeout(d.current)},[]);const h=c<p.length?c:-1,m=s.useCallback(v=>{n?.(v),l(!1)},[n]),g=s.useCallback(()=>l(!0),[]),y=s.useCallback(()=>{l(!0),u(-1)},[]),C=s.useCallback(()=>{d.current=setTimeout(()=>l(!1),120)},[]),f=s.useCallback(v=>{v.key==="ArrowDown"?(v.preventDefault(),l(!0),u(x=>Math.min(p.length-1,(x<p.length?x:-1)+1))):v.key==="ArrowUp"?(v.preventDefault(),u(x=>Math.max(-1,(x<p.length?x:p.length)-1))):v.key==="Enter"?h>=0&&!v.nativeEvent.isComposing&&m(p[h]):v.key==="Escape"&&i&&(v.preventDefault(),l(!1))},[p,h,i,m]);return{listId:o,open:i,activeIdx:h,filtered:p,handleFocus:g,handleBlur:C,handleInput:y,handleKeyDown:f,handleSelect:m}}const n4=typeof window<"u"?s.useLayoutEffect:s.useEffect;function Tn(e){const{value:n,defaultValue:a,name:r,inputRef:o,onChange:i,label:l,ariaLabel:c,required:u,placeholder:d,type:p="text",disabled:h=!1,readOnly:m=!1,error:g,helperText:y,maxLength:C,size:f=48,variant:v="input",fullWidth:x=!1,newline:_=!1,multiline:b=!1,rows:N=3,leftIcon:w,rightIcon:k,clearable:j=!1,list:A,showCount:S=!0,className:q="",onFocus:W,onBlur:B,onKeyDown:O,onEnter:E,inputMode:ee,autoComplete:M,autoFocus:H,suggestions:Q,openOnFocus:te=!1}=e,{t:Y}=he.useTranslation(),V=s.useId();!l&&!c&&qn(`TextField:unnamed:${V}`,"[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 T=`tf-${V}`,P=`tf-helper-${V}`,F=s.useRef(null),L=Fi({value:n??"",onChange:i,suggestions:Q??[],openOnFocus:te}),R=!!Q&&L.open&&L.filtered.length>0,z=s.useCallback(X=>{F.current=X,typeof o=="function"?o(X):o&&(o.current=X)},[o]),ae=n!==void 0,ne=ae&&p==="password",[re,pe]=s.useState((a??"").length),_e=ae?(n??"").length:re,Z=s.useRef(n);n4(()=>{Z.current=n}),s.useEffect(()=>{const X=F.current;if(!ne||!X)return;const ue=n??"";X.value!==ue&&(X.value=ue)},[ne,n]),s.useEffect(()=>{if(!_||!F.current)return;const X=F.current;X.style.height="",X.scrollHeight>X.clientHeight&&(X.style.height=`${X.scrollHeight}px`)},[n,re,_]);const ie=C!=null&&_e>C,J=f===32?16:20,be=ye("text-field",`text-field--s${f}`,v==="display"?"text-field--display":"",x?"text-field--full-width":"",h?"text-field--disabled":"",m?"text-field--readonly":"",g?"text-field--error":"",w?"text-field--has-left-icon":"",k||j?"text-field--has-right-icon":"",q),xe={id:T,...ne?{}:ae?{value:n}:{defaultValue:a},ref:z,placeholder:d,name:r,disabled:h,readOnly:m,autoFocus:H,maxLength:C,list:A,inputMode:ee,autoComplete:M,"aria-label":!l&&c?c:void 0,"aria-required":u,"aria-invalid":!!g,"aria-describedby":y||g?P:void 0,role:Q?"combobox":void 0,"aria-autocomplete":Q?"list":void 0,"aria-haspopup":Q?"listbox":void 0,"aria-expanded":Q?L.open:void 0,"aria-controls":R?L.listId:void 0,"aria-activedescendant":R&&L.activeIdx>=0?`${L.listId}-option-${L.activeIdx}`:void 0,onChange:X=>{const ue=X.target;ae||pe(ue.value.length),i?.(ue.value),Q&&L.handleInput(),ne&&queueMicrotask(()=>{const ke=Z.current??"";ue.value!==ke&&(ue.value=ke)})},onFocus:(X=>{W?.(X),Q&&L.handleFocus()}),onBlur:(X=>{B?.(X),Q&&L.handleBlur()}),onKeyDown:(X=>{Q&&X.key==="Enter"&&!X.nativeEvent.isComposing&&L.activeIdx>=0?X.preventDefault():E&&X.key==="Enter"&&!X.nativeEvent.isComposing&&(X.preventDefault(),E()),O?.(X),Q&&L.handleKeyDown(X)})},Ce=j&&!h&&!m&&_e>0,fe=()=>_?t.jsx("textarea",{...xe,className:"text-field__input text-field__input--auto body-2",rows:1}):b?t.jsx("textarea",{...xe,className:"text-field__input text-field__input--textarea body-2",rows:N}):t.jsx("input",{...xe,type:p,className:"text-field__input body-2"}),ve=v==="display"&&!_&&!b&&!!d,Se=()=>t.jsxs(t.Fragment,{children:[fe(),ve&&t.jsx("span",{className:"text-field__placeholder","aria-hidden":"true",children:d})]});return t.jsxs("div",{className:be,children:[l&&t.jsxs("label",{htmlFor:T,className:"text-field__label caption-1",children:[l,u&&t.jsx("span",{className:"text-field__required",children:"*"})]}),t.jsxs("div",{className:"text-field__wrap",children:[w&&t.jsx("span",{className:"text-field__icon text-field__icon--left",children:t.jsx(Oe,{icon:w,label:"",className:"",svgClassName:"text-field__icon-svg",size:J})}),Se(),C!=null&&S&&t.jsxs("span",{className:`text-field__count caption-2${ie?" text-field__count--over":""}`,children:[_e,"/",C]}),Ce&&t.jsx(oe,{size:24,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,className:"text-field__clear",ariaLabel:Y("textField.clearAriaLabel","\uC785\uB825\uAC12 \uC9C0\uC6B0\uAE30"),htmlType:"button",onMouseDown:X=>{X.preventDefault()},onClick:()=>{!ae&&F.current&&(F.current.value="",pe(0)),i?.("")},tabIndex:-1}),k&&!Ce&&t.jsx("span",{className:"text-field__icon text-field__icon--right",children:t.jsx(Oe,{icon:k,label:"",className:"",svgClassName:"text-field__icon-svg",size:J})})]}),Q&&L.open&&L.filtered.length>0&&t.jsx("ul",{id:L.listId,className:"text-field__suggestions",role:"listbox",children:L.filtered.map((X,ue)=>t.jsx("li",{id:`${L.listId}-option-${ue}`,role:"option","aria-selected":ue===L.activeIdx,className:`text-field__suggestion body-2${ue===L.activeIdx?" is-active":""}`,onMouseDown:ke=>ke.preventDefault(),onClick:()=>{L.handleSelect(X),F.current?.focus()},children:X},`${X}-${ue}`))}),(y||g)&&t.jsx("div",{className:"text-field__footer",children:t.jsx("span",{id:P,className:"text-field__helper caption-1",role:g?"alert":void 0,children:g||y})})]})}function Gt({options:e,value:n,onChange:a,placeholder:r,disabled:o=!1,block:i=!1,size:l=48,error:c=!1,className:u="",ariaLabel:d}){const{t:p}=he.useTranslation(),h=r??p("dropdown.placeholder","\uC120\uD0DD"),m=s.useId(),g=s.useRef(null),y=s.useCallback(B=>{const O=window.innerHeight-B.bottom<260&&B.top>260;return{position:"fixed",left:B.left,minWidth:B.width,...O?{bottom:window.innerHeight-B.top+6}:{top:B.bottom+6},zIndex:9999}},[]),{open:C,setOpen:f,toggle:v,style:x,triggerRef:_,menuRef:b}=na({computeStyle:y}),[N,w]=s.useState(-1),k=s.useCallback(()=>w(-1),[]),j=e.find(B=>B.value===n);s.useEffect(()=>{if(C){const B=e.findIndex(O=>O.value===n);w(B>=0?B:0),requestAnimationFrame(()=>{const O=b.current;if(!O)return;const E=O.querySelectorAll(".dropdown__option")[B];E&&(O.scrollTop=Math.max(0,E.offsetTop-O.clientHeight/2+E.clientHeight/2))})}},[C]);const A=s.useCallback(()=>{o||v()},[o,v]),S=s.useCallback(B=>{B.disabled||(a?.(B.value),f(!1))},[a,f]),q=s.useCallback(B=>{if(!o){if(!C){(B.key==="Enter"||B.key===" "||B.key==="ArrowDown")&&(B.preventDefault(),f(!0));return}if(B.key==="Escape"){B.preventDefault(),f(!1);return}B.key==="ArrowDown"?(B.preventDefault(),w(O=>{let E=O+1;for(;E<e.length&&e[E].disabled;)E++;return E<e.length?E:O})):B.key==="ArrowUp"?(B.preventDefault(),w(O=>{let E=O-1;for(;E>=0&&e[E].disabled;)E--;return E>=0?E:O})):B.key==="Enter"&&N>=0&&(B.preventDefault(),S(e[N]))}},[o,C,e,N,S,f]),W=C?t.jsx("div",{ref:b,id:m,className:"dropdown__menu",role:"listbox",style:x,onMouseLeave:k,onMouseDown:B=>B.preventDefault(),children:e.map((B,O)=>t.jsxs("button",{id:`${m}-option-${O}`,type:"button",role:"option","aria-selected":B.value===n,className:ye("dropdown__option body-2",B.value===n?"dropdown__option--active":"",O===N?"dropdown__option--active":"",B.disabled?"dropdown__option--disabled":""),onMouseDown:E=>E.preventDefault(),onClick:()=>S(B),onMouseEnter:()=>w(O),disabled:B.disabled,children:[t.jsx("span",{className:"dropdown__option-check",children:B.value===n&&t.jsx("svg",{viewBox:"0 0 14 14",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:t.jsx("polyline",{points:"2 7 5.5 10.5 12 3.5"})})}),B.label]},B.value))}):null;return t.jsxs("div",{ref:g,className:ye("dropdown",`dropdown--s${l}`,C?"dropdown--open":"",i?"dropdown--block":"",c?"dropdown--error":"",u),onKeyDown:q,children:[t.jsxs("button",{ref:_,type:"button",className:"dropdown__trigger","aria-haspopup":"listbox","aria-expanded":C,"aria-controls":C?m:void 0,"aria-activedescendant":C&&N>=0?`${m}-option-${N}`:void 0,"aria-label":d,"aria-invalid":c||void 0,disabled:o,onClick:A,onBlur:B=>{C&&!b.current?.contains(B.relatedTarget)&&f(!1)},children:[t.jsx("span",{className:`dropdown__trigger-label body-2${j?"":" dropdown__trigger-label--placeholder"}`,children:j?j.label:h}),t.jsx("svg",{className:"dropdown__chevron",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:t.jsx("polyline",{points:"4 6 8 10 12 6"})})]}),typeof document<"u"&&It.createPortal(W,g.current?.closest(".ihabdevteam-core-scope")??document.body)]})}function ka({page:e,totalPages:n,onChange:a,prevLabel:r,nextLabel:o,className:i=""}){const{t:l}=he.useTranslation(),c=r??l("common.prevPage","\uC774\uC804 \uD398\uC774\uC9C0"),u=o??l("common.nextPage","\uB2E4\uC74C \uD398\uC774\uC9C0"),d=Math.max(1,n),p=()=>a(Math.max(1,Math.min(d,e-1))),h=()=>a(Math.min(d,e+1));return t.jsxs("div",{className:ye("pagination",i),children:[t.jsx(oe,{htmlType:"button",size:32,type:"dot",shape:"rounded",icon:"chevron-left",ariaLabel:c,disabled:e<=1,onClick:p}),t.jsxs("span",{className:"pagination__info body-3",children:[Math.min(Math.max(1,e),d)," / ",d]}),t.jsx(oe,{htmlType:"button",size:32,type:"dot",shape:"rounded",icon:"chevron-right",ariaLabel:u,disabled:e>=n,onClick:h})]})}function En(e){const{t:n}=he.useTranslation(),{options:a=[],value:r=a[0]?.key,onChange:o=f=>{},className:i="",size:l=48,shape:c="pill",useBG:u=!0,fullWidth:d=!1,ariaLabel:p}=e||{},h=s.useRef(null),m=a.filter(f=>!f.disabled),g=f=>{if(!m.length)return;const v=Math.max(0,m.findIndex(_=>_.key===r)),x=f==="first"?m[0]:f==="last"?m[m.length-1]:m[(v+f+m.length)%m.length];x&&(o(x.key),Array.from(h.current?.querySelectorAll("[data-segkey]")??[]).find(_=>_.dataset.segkey===x.key)?.focus())},y=f=>{switch(f.key){case"ArrowRight":case"ArrowDown":g(1);break;case"ArrowLeft":case"ArrowUp":g(-1);break;case"Home":g("first");break;case"End":g("last");break;default:return}f.preventDefault()},C=m.some(f=>f.key===r)?r:m[0]?.key;return t.jsx("div",{ref:h,onKeyDown:y,className:ye("segmented-control",`segmented-control--${c}`,`segmented-control--${l}`,d&&"segmented-control--full",!u&&"segmented-control--no-bg",i),role:"radiogroup","aria-label":p??n("segmentedControl.ariaLabel","\uC120\uD0DD \uD0ED"),children:a.map(f=>t.jsx(oe,{htmlType:"button",role:"radio","aria-checked":f.key===r,"data-segkey":f.key,tabIndex:f.key===C?0:-1,label:f.label,count:f.count,disabled:f.disabled,className:f.key===r?"is-selected":"",onClick:()=>{f.disabled||o(f.key)},size:l,shape:c,useBorder:!1,useBG:!1},f.key))})}function gr({count:e,search:n,segment:a,filters:r,pageSize:o,pagination:i,actions:l,className:c}){const{t:u}=he.useTranslation(),d=e!=null&&t.jsxs("p",{className:"toolbar__count body-1",children:[e.prefix??u("common.totalPrefix","\uCD1D "),t.jsx("span",{className:"toolbar__count-highlight",children:e.value}),e.unit,e.suffix]}),p=!!(n||r?.length||o||i||l);return t.jsxs("div",{className:ye("toolbar",c),children:[t.jsxs("div",{className:"toolbar__row",children:[d,a&&(Array.isArray(a)?a:[a]).map((h,m)=>t.jsx(En,{size:40,...h},h.ariaLabel??m))]}),p&&t.jsx("div",{className:"toolbar__row",children:t.jsxs("div",{className:"toolbar__row-end",children:[n&&t.jsx(Tn,{className:"toolbar__search",size:40,value:n.value,onChange:n.onChange,placeholder:n.placeholder??u("common.search","\uAC80\uC0C9"),ariaLabel:n.placeholder??u("common.search","\uAC80\uC0C9"),clearable:!0}),r?.map((h,m)=>t.jsx(Gt,{size:40,options:h.options,value:h.value,onChange:h.onChange,ariaLabel:h.ariaLabel},m)),o&&t.jsx(Gt,{size:40,options:o.options,value:o.value,onChange:o.onChange,ariaLabel:o.ariaLabel??u("common.pageSizeSelect","\uD398\uC774\uC9C0\uB2F9 \uD45C\uC2DC \uAC1C\uC218")}),i&&t.jsx(ka,{page:i.page,totalPages:i.total,onChange:i.onChange,prevLabel:i.prevLabel,nextLabel:i.nextLabel}),l]})})]})}function Oi(e){return typeof e=="string"?e:typeof e=="number"?String(e):Array.isArray(e)?e.map(Oi).join(""):""}function a4(e){let n=e.replace(/\r\n/g,`
833
833
  `).replace(/\r/g,`
834
834
  `);n=n.replace(/^\n+/,"").replace(/\n+$/,"");const a=n.split(`
835
835
  `).map(i=>i.replace(/\t/g," ")),r=a.filter(i=>i.trim().length>0),o=r.length>0?Math.min(...r.map(i=>i.match(/^ */)?.[0].length??0)):0;return a.map(i=>i.slice(o)).join(`
836
836
  `)}const r4=new Set(["pnpm","npm","yarn","node","git","curl","docker","cat","ls","cd","rm","mv","cp","echo","export"]),o4=/^(?: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 s4(e,n){let a=e;const r=[],o=/^(?:sh|bash|zsh|shell|console)$/.test(n.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(!o&&a.startsWith("//")){const y=a.indexOf(`
837
837
  `),C=y===-1?a:a.slice(0,y);i("comment",C),a=a.slice(C.length);continue}if(o&&a.startsWith("#")){const y=a.indexOf(`
838
- `),C=y===-1?a:a.slice(0,y);i("comment",C),a=a.slice(C.length);continue}const c=a.match(/^\/\*[\s\S]*?\*\//);if(c){i("comment",c[0]),a=a.slice(c[0].length);continue}const u=a.match(/^(`(?:\\.|[^`])*`|"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*')/);if(u){i("string",u[0]),a=a.slice(u[0].length);continue}const d=a.match(/^\d+(?:\.\d+)?/);if(d){i("number",d[0]),a=a.slice(d[0].length);continue}const p=a.match(o4);if(p){i("keyword",p[0]),a=a.slice(p[0].length);continue}const h=a.match(/^[A-Za-z_$][A-Za-z0-9_$-]*/);if(h){const y=h[0];i(o&&r4.has(y)?"command":"identifier",y),a=a.slice(y.length);continue}const m=a.match(/^[=+\-*/%<>!&|^~?:]+/);if(m){i("operator",m[0]),a=a.slice(m[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:n="bash",title:a="",showCopy:r=!0,size:o="default",className:i=""}){const{t:l}=he.useTranslation(),[c,u]=s.useState(!1),d=a4(Oi(e)),p=s.useRef(null);s.useEffect(()=>()=>{p.current&&clearTimeout(p.current)},[]);const h=async()=>{try{if(!await b0(d))return;u(!0),p.current&&clearTimeout(p.current),p.current=setTimeout(()=>u(!1),2e3)}catch{}},m=s4(d,n),g=o==="small"?"caption-1":"body-3";return t.jsxs("div",{className:ye("code-box",o==="small"?"code-box--small":"",i),children:[(a||r)&&t.jsxs("div",{className:"code-box__header",role:"toolbar","aria-label":l("common.codeBlock","\uCF54\uB4DC \uBE14\uB85D"),children:[t.jsx("div",{className:"code-box__title caption-1",children:a}),r&&t.jsx(oe,{htmlType:"button",className:"code-box__copy",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:c?"check":"copy",onClick:h,ariaLabel:c?l("common.copied","\uBCF5\uC0AC\uB428"):l("common.copyCode","\uCF54\uB4DC \uBCF5\uC0AC")})]}),t.jsx("pre",{className:"code-box__inner","data-lang":n,children:t.jsx("code",{children:m.map((y,C)=>t.jsx("span",{className:`code-token ${y.type} ${g}`,children:y.content},C))})})]})}function la(e){const{t:n}=he.useTranslation(),{variant:a="spinner",size:r=24,progress:o=null,label:i}=e||{},l=i||n("loader.loading","Loading");if(a==="bar"){const u=Math.max(0,Math.min(100,Number(o)||0));return t.jsx("div",{className:"loader-bar",role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":u,"aria-label":l,children:t.jsx("div",{className:"loader-bar__inner",style:{width:`${u}%`}})})}const c=typeof r=="number"?`${r}px`:r;return t.jsx("div",{className:"loader-spinner",style:{width:c,height:c},role:"status","aria-label":l,children:t.jsxs("svg",{className:"loader-spinner__svg",viewBox:"0 0 50 50",width:r,height:r,children:[t.jsx("circle",{className:"loader-spinner__bg",cx:"25",cy:"25",r:"20",fill:"none",strokeWidth:"4"}),t.jsx("circle",{className:"loader-spinner__fg",cx:"25",cy:"25",r:"20",fill:"none",strokeWidth:"4",strokeLinecap:"round"})]})})}function Hi({checked:e,onChange:n,disabled:a=!1,label:r,ariaLabel:o,labelPosition:i="right",className:l="",id:c}){const u=r&&t.jsx("span",{className:"toggle__label body-3",children:r});return t.jsxs("label",{className:`toggle${a?" toggle--disabled":""} ${l}`.trim(),children:[i==="left"&&u,t.jsx("input",{id:c,type:"checkbox",role:"switch",checked:e,disabled:a,onChange:d=>n?.(d.target.checked),"aria-label":!r&&o?o:void 0}),t.jsx("span",{className:"toggle__slider"}),i==="right"&&u]})}function Vi({checked:e=!1,onChange:n,disabled:a,indeterminate:r,label:o,size:i="medium",className:l,title:c,ariaLabel:u}){const d=s.useRef(null),p=s.useId(),h=s.useRef(!!r);return h.current=!!r,s.useEffect(()=>{d.current&&(d.current.indeterminate=!!r)}),t.jsxs("label",{className:ye("checkbox",i==="small"&&"checkbox--small",i==="large"&&"checkbox--large",a&&"checkbox--disabled",l),htmlFor:p,title:c,children:[t.jsx("input",{ref:d,id:p,type:"checkbox",className:"checkbox__input",checked:e,onChange:m=>{n?.(m.target.checked),d.current&&(d.current.indeterminate=h.current)},disabled:a,"aria-label":!o&&u?u:void 0}),t.jsx("span",{className:"checkbox__box"}),o&&t.jsx("span",{className:"checkbox__label body-3",children:o})]})}function l4({count:e,actions:n,onClear:a,clearLabel:r,visible:o,content:i,max:l}){const{t:c}=he.useTranslation(),u=o!==void 0?o:e>0,d=r??c("bulkBar.clearSelection","\uC120\uD0DD \uD574\uC81C"),p=s.useRef(null),[h,m]=s.useState(!1);return s.useEffect(()=>{const g=p.current;if(!g)return;const y=()=>{const f=g.firstElementChild??g,v=Array.from(f.children);if(v.length<2){m(!1);return}const x=v[0].offsetTop;m(v.some(_=>_.offsetTop!==x))};if(y(),typeof ResizeObserver>"u")return;const C=new ResizeObserver(y);return C.observe(g),()=>C.disconnect()},[i,e]),t.jsxs("div",{className:`bulk-bar ${u?"bulk-bar--visible":""}`,inert:!u||void 0,"aria-hidden":u?void 0:!0,children:[t.jsx("span",{ref:p,className:"bulk-bar__count body-2",children:i??t.jsx("b",{children:c("common.selectedCount",{count:e})})}),l!==void 0&&t.jsx(it,{size:"small",fill:"soft",variant:"main",label:`${e} / ${l}`}),t.jsxs("div",{className:`bulk-bar__actions${h?" bulk-bar__actions--stacked":""}`,children:[t.jsx(oe,{htmlType:"button",size:40,label:d,onClick:a}),n.map((g,y)=>t.jsx(oe,{htmlType:"button",size:40,variant:g.variant??"default",icon:g.icon,label:g.label,onClick:g.onClick},y))]})]})}function zi(e){const n=()=>{if(e){const[g,y]=e.split("-");return{y:+g,m:+y-1}}const m=new Date;return{y:m.getFullYear(),m:m.getMonth()}},[a,r]=s.useState(()=>n().y),[o,i]=s.useState(()=>n().m),l=s.useRef(e);s.useEffect(()=>{if(e===l.current)return;l.current=e;const m=n();r(m.y),i(m.m)},[e]);const c=s.useRef({y:a,m:o});s.useEffect(()=>{c.current={y:a,m:o}},[a,o]);const u=s.useCallback(m=>{const g=c.current.y*12+c.current.m+m,y=Math.floor(g/12),C=g-y*12;c.current={y,m:C},r(y),i(C)},[]),d=s.useCallback(()=>u(-1),[u]),p=s.useCallback(()=>u(1),[u]),h=s.useCallback((m,g)=>{c.current={y:m,m:g},r(m),i(g)},[]);return{viewY:a,viewM:o,prevMonth:d,nextMonth:p,setViewYM:h}}function br(e,n){return new Date(e,n+1,0).getDate()}function c4(e,n){return new Date(e,n,1).getDay()}function In(e,n,a){return`${e}-${String(n+1).padStart(2,"0")}-${String(a).padStart(2,"0")}`}function u4(e){if(!e)return"";const[n,a,r]=e.split("-");return`${n}. ${a}. ${r}.`}function d4(e,n,a,r){const o=a?+a.split("-")[0]:e-10,i=r?+r.split("-")[0]:e+10,l=[];for(let c=o;c<=i;c++)for(let u=0;u<12;u++){const d=`${c}-${String(u+1).padStart(2,"0")}`;a&&d<a.slice(0,7)||r&&d>r.slice(0,7)||l.push({value:d,label:n(c,u+1)})}return l}function p4({value:e,onChange:n,size:a=48,min:r,max:o,disabled:i,placeholder:l,className:c}){const{t:u}=he.useTranslation(),d=l??u("datePicker.chooseDate","\uB0A0\uC9DC \uC120\uD0DD"),p=s.useMemo(()=>u("calendar.dow",{returnObjects:!0}),[u]),h=new Date,{viewY:m,viewM:g,prevMonth:y,nextMonth:C,setViewYM:f}=zi(e),v=s.useCallback(O=>{const T=window.innerHeight-O.bottom,M=300,V=T<M&&O.top>M;return{position:"fixed",left:O.left,width:O.width,minWidth:260,...V?{bottom:window.innerHeight-O.top+6}:{top:O.bottom+6},zIndex:9999}},[]),{open:x,setOpen:_,toggle:b,style:N,triggerRef:w,menuRef:k}=na({computeStyle:v,onScroll:"reposition",onResize:"reposition",ignoreOutsideClickSelector:".dropdown__menu"});s.useEffect(()=>{if(!x)return;const O=k.current;return(O?.querySelector(".date-picker__day--selected:not(:disabled)")??O?.querySelector(".date-picker__day--today:not(:disabled)")??O?.querySelector(".date-picker__day:not(:disabled)")??O?.querySelector(Nn)??O)?.focus?.(),()=>{const T=document.activeElement;(!T||T===document.body)&&w.current?.focus?.()}},[x,k,w]);const[j,A]=s.useState(1),S=s.useRef(null),q=s.useRef(null);s.useEffect(()=>{if(!x)return;const O=In(h.getFullYear(),h.getMonth(),h.getDate()),T=e&&e.slice(0,7)===`${m}-${String(g+1).padStart(2,"0")}`?+e.slice(8):O.slice(0,7)===`${m}-${String(g+1).padStart(2,"0")}`?+O.slice(8):1;A(T)},[x]),s.useEffect(()=>{if(q.current==null)return;const O=q.current;q.current=null,S.current?.querySelector(`[data-day="${O}"]`)?.focus()}),s.useEffect(()=>{A(O=>Math.min(O,br(m,g)))},[m,g]);const W=s.useCallback(O=>{let T=In(O.getFullYear(),O.getMonth(),O.getDate());r&&T<r&&(T=r),o&&T>o&&(T=o);const[M,V,I]=T.split("-").map(Number);(M!==m||V-1!==g)&&f(M,V-1),A(I),q.current=I},[r,o,m,g,f]),B=s.useCallback(O=>{const T=new Date(m,g,j),M=I=>{T.setDate(T.getDate()+I),W(T)},V=I=>{T.setMonth(T.getMonth()+I),W(T)};switch(O.key){case"ArrowLeft":M(-1);break;case"ArrowRight":M(1);break;case"ArrowUp":M(-7);break;case"ArrowDown":M(7);break;case"Home":M(-T.getDay());break;case"End":M(6-T.getDay());break;case"PageUp":O.shiftKey?V(-12):V(-1);break;case"PageDown":O.shiftKey?V(12):V(1);break;default:return}O.preventDefault()},[m,g,j,W]),F=s.useCallback(O=>{n(In(m,g,O)),_(!1)},[m,g,n,_]),E=O=>{const T=In(m,g,O);return!!(r&&T<r||o&&T>o)},te=(()=>{const O=br(m,g);if(j>=1&&j<=O&&!E(j))return j;for(let T=1;T<=O;T++)if(!E(T))return T;return-1})(),$=[];for(let O=0;O<c4(m,g);O++)$.push(null);for(let O=1;O<=br(m,g);O++)$.push(O);const H=a===64?20:a===40?16:18,Q=d4(m,(O,T)=>u("calendar.yearMonth",{year:O,month:T,defaultValue:"{{year}}\uB144 {{month}}\uC6D4"}),r,o),ee=`${m}-${String(g+1).padStart(2,"0")}`,Y=x?It.createPortal(t.jsxs("div",{ref:k,className:"date-picker__dropdown",style:N,role:"dialog","aria-label":u("datePicker.chooseDate","\uB0A0\uC9DC \uC120\uD0DD"),tabIndex:-1,children:[t.jsxs("div",{className:"date-picker__nav",children:[t.jsx("button",{type:"button",className:"date-picker__nav-btn",onClick:y,"aria-label":u("calendar.prevMonth","\uC774\uC804 \uB2EC"),children:t.jsx(bo,{size:16,strokeWidth:2})}),t.jsx(Gt,{className:"date-picker__nav-dropdown",ariaLabel:u("datePicker.selectYearMonth","\uC5F0\uC6D4 \uC120\uD0DD"),options:Q,value:ee,onChange:O=>{const[T,M]=O.split("-");f(+T,+M-1)},block:!0,size:40}),t.jsx("button",{type:"button",className:"date-picker__nav-btn",onClick:C,"aria-label":u("calendar.nextMonth","\uB2E4\uC74C \uB2EC"),children:t.jsx(yo,{size:16,strokeWidth:2})})]}),t.jsxs("div",{className:"date-picker__grid",ref:S,onKeyDown:B,children:[p.map(O=>t.jsx("div",{className:"date-picker__dow caption-1",children:O},O)),$.map((O,T)=>{if(O===null)return t.jsx("div",{},`e${T}`);const M=In(m,g,O),V=M===e,I=M===In(h.getFullYear(),h.getMonth(),h.getDate()),P=E(O),z=T%7;return t.jsx("button",{type:"button",disabled:P,"data-day":O,tabIndex:O===te?0:-1,"aria-current":I?"date":void 0,onClick:()=>!P&&F(O),className:ye("date-picker__day caption-1",V&&"date-picker__day--selected",I&&!V&&"date-picker__day--today",P&&"date-picker__day--disabled",z===0&&"date-picker__day--sun",z===6&&"date-picker__day--sat"),children:O},O)})]})]}),document.body):null;return t.jsxs("div",{className:ye("date-picker",`date-picker--s${a}`,x&&"date-picker--open",c),children:[t.jsxs("button",{ref:w,type:"button",className:"date-picker__trigger body-2",onClick:()=>!i&&b(),disabled:i,"aria-haspopup":"true","aria-expanded":x,children:[t.jsx("span",{className:e?"date-picker__value":"date-picker__placeholder",children:e?u4(e):d}),t.jsx(So,{size:H,className:"date-picker__icon",strokeWidth:1.5})]}),Y]})}function yr({items:e,className:n}){return t.jsx("div",{className:n?`manager-bar-chart-legend ${n}`:"manager-bar-chart-legend",children:e.map((a,r)=>t.jsxs("span",{className:"manager-bar-chart-legend-item",children:[t.jsx("span",{className:"manager-bar-chart-legend-dot",style:{background:a.color}}),a.label]},r))})}function Aa({label:e,children:n}){return e?t.jsxs("div",{className:"barchart-total barchart-total--stacked",children:[t.jsx("span",{className:"barchart-total__label body-3",children:e}),t.jsx("span",{className:"barchart-total__value",children:n})]}):t.jsx("div",{className:"barchart-total",children:n})}function vr({title:e,titleClassName:n="h3",headRight:a,subRow:r,className:o,inGrid:i=!1,children:l}){return t.jsxs("section",{className:["manager-section",i&&"manager-section--grid",o].filter(Boolean).join(" "),children:[t.jsxs("div",{className:"manager-section__head",children:[t.jsx("div",{className:n,children:e}),a]}),r&&t.jsx("div",{className:"barchart-sub-row",children:r}),l]})}function ln(e,n){const a=new Date(e,n,1).getDay();return 1+(8-(a===0?7:a))%7}function h4(){const e=new Date;let n=e.getFullYear(),a=e.getMonth(),r=e.getDate();if(r<ln(n,a)){const l=new Date(n,a,0);n=l.getFullYear(),a=l.getMonth(),r=l.getDate()}const o=Math.floor((r-ln(n,a))/7),i=`${n}\uB144 ${a+1}\uC6D4`;return{monthKey:i,value:`${i}#${o}`}}function m4(e){const n=new Date,a=`${n.getFullYear()}\uB144 ${n.getMonth()+1}\uC6D4`,r=(u,d)=>`${u}\uB144 ${d+1}\uC6D4`,o=new Map;o.set(a,[]);for(const u of e){if(isNaN(u.date.getTime()))continue;const d=r(u.date.getFullYear(),u.date.getMonth());o.has(d)||o.set(d,[]),o.get(d).push(u)}for(const[u,d]of[...o.entries()]){const p=u.match(/^(\d+)년 (\d+)월$/);if(!p)continue;const h=Number(p[1]),m=Number(p[2])-1,g=ln(h,m);if(!(u===a&&n.getDate()<g)&&!d.some(f=>f.date.getDate()<g))continue;const y=new Date(h,m,0),C=r(y.getFullYear(),y.getMonth());o.has(C)||o.set(C,[])}const i=new Map;for(const[u,d]of o){const p=u.match(/^(\d+)년 (\d+)월$/);if(!p)continue;const h=Number(p[1]),m=Number(p[2])-1,g=new Date(h,m+1,0).getDate(),y=d.reduce((x,_)=>Math.max(x,_.parts?.length??0),0),C=new Array(g+1).fill(0),f=new Array(g+1).fill(0),v=Array.from({length:g+1},()=>new Array(y).fill(0));for(const x of d){const _=x.date.getDate();if(C[_]+=x.a,f[_]+=x.b,x.parts)for(let b=0;b<y;b++)v[_][b]+=x.parts[b]??0}i.set(u,{year:h,month:m,daysInMonth:g,partsLen:y,dayA:C,dayB:f,dayParts:v})}const l=(u,d,p)=>new Date(u,d,p).getTime()>new Date(n.getFullYear(),n.getMonth(),n.getDate()).getTime(),c={};for(const[u,d]of i){const{year:p,month:h,daysInMonth:m,dayA:g,dayB:y,dayParts:C}=d,f=p===n.getFullYear()&&h===n.getMonth(),v=n.getDate(),x=i.get(r(h===11?p+1:p,(h+1)%12)),_=d.partsLen,b=[];for(let w=1;w<=m;w++){const k=f&&w>v;b.push({label:String(w),a:k&&g[w]===0&&y[w]===0?-1:g[w],b:y[w],..._?{parts:C[w]}:{}})}const N=[];for(let w=ln(p,h);w<=m;w+=7){const k=Math.max(0,w+6-m),j=k&&x?Math.max(_,x.partsLen):_;let A=0,S=0;const q=new Array(j).fill(0);for(let B=w;B<=Math.min(w+6,m);B++){A+=g[B],S+=y[B];for(let F=0;F<_;F++)q[F]+=C[B][F]}if(k&&x)for(let B=1;B<=k&&!l(x.year,x.month,B);B++){A+=x.dayA[B],S+=x.dayB[B];for(let F=0;F<x.partsLen;F++)q[F]+=x.dayParts[B][F]}const W=k?`${(h+1)%12+1}/${k}`:`${w+6}`;N.push({label:`${N.length+1}\uC8FC`,sublabel:`[${w}\uC77C~${W}\uC77C]`,a:A,b:S,...j?{parts:q}:{}})}c[u]={weekly:N,daily:b}}return c}function Wi(){const e=new Date,n=e.getFullYear(),a=e.getMonth()+1,r=[];for(let o=2024;o<=n;o++){const i=o===n?a:12;for(let l=1;l<=i;l++){const c=`${o}\uB144 ${l}\uC6D4`;r.push({value:c,label:c,year:o,month:l})}}return r.reverse()}Wi();function f4(){return Wi()}const qi=["\uCCAB\uC9F8","\uB458\uC9F8","\uC14B\uC9F8","\uB137\uC9F8","\uB2E4\uC12F\uC9F8","\uC5EC\uC12F\uC9F8","\uC77C\uACF1\uC9F8"];function Ui(e){const{t:n,i18n:a}=he.useTranslation(),[r,o]=s.useState("week"),i=s.useMemo(()=>f4().filter(A=>A.value in e),[e]),l=s.useMemo(()=>{const A=[];for(const S of i){const q=new Date(S.year,S.month,0).getDate(),W=ln(S.year,S.month-1),B=Math.ceil((q-W+1)/7);for(let F=B-1;F>=0;F--)A.push({value:`${S.value}#${F}`,monthKey:S.value,year:S.year,month:S.month,week:F})}return A},[i]),c=s.useCallback(A=>{const S=n("calendar.yearMonth",{year:A.year,month:A.month});return a.language?.startsWith("ko")?`${S} ${qi[A.week]??`${A.week+1}`}\uC8FC`:`${S} Week ${A.week+1}`},[n,a.language]),u=s.useMemo(()=>i.map(A=>({value:A.value,label:n("calendar.yearMonth",{year:A.year,month:A.month})})),[n,i]),d=s.useMemo(()=>l.map(A=>({value:A.value,label:c(A)})),[l,c]),p=s.useMemo(()=>h4(),[e]),h=s.useMemo(()=>i.find(A=>A.value===p.monthKey)?.value??i[0]?.value??"",[i,p]),m=s.useMemo(()=>l.find(A=>A.value===p.value)?.value??l[0]?.value??"",[l,p]),[g,y]=s.useState(""),[C,f]=s.useState("");s.useEffect(()=>{i.find(A=>A.value===g)||y(h)},[i,g,h]),s.useEffect(()=>{l.find(A=>A.value===C)||f(m)},[l,C,m]);const v=r==="month"?u:d,x=r==="month"?g:C,_=r==="month"?y:f,b=s.useMemo(()=>{const A=n("calendar.dow",{returnObjects:!0});return Array.isArray(A)?A:["\uC77C","\uC6D4","\uD654","\uC218","\uBAA9","\uAE08","\uD1A0"]},[n]),N=v.findIndex(A=>A.value===x),w=s.useCallback(()=>{const A=v.findIndex(S=>S.value===x);A<v.length-1&&_(v[A+1].value)},[v,x,_]),k=s.useCallback(()=>{const A=v.findIndex(S=>S.value===x);A>0&&_(v[A-1].value)},[v,x,_]),j=s.useMemo(()=>[{key:"week",label:n("manager.chart.periodWeek","\uC8FC")},{key:"month",label:n("manager.chart.periodMonth","\uC6D4")}],[n]);return{period:r,setPeriod:o,range:x,setRange:_,activeOptions:v,activeIdx:N,handlePrev:w,handleNext:k,periodOptions:j,monthRange:g,weekRange:C,weekRanges:l,DOW:b}}const Kt=e=>typeof e=="number"&&Number.isFinite(e)?e:0;function C4({data:e,colorA:n,colorB:a,labelA:r,labelB:o,barWidth:i=10,height:l=140,maxOverride:c,tightMax:u,seriesColors:d,seriesLabels:p,rateLabels:h}){const m=!a,g=!!(d&&d.length>0),y=s.useMemo(()=>g?Math.max(0,...e.filter(k=>k.a!==-1).map(k=>(k.parts??[]).reduce((j,A)=>j+Math.max(0,Kt(A)),0))):Math.max(0,...e.filter(k=>k.a!==-1).flatMap(k=>m?[Kt(k.a)]:[Kt(k.a),Kt(k.b)])),[e,m,g]),C=s.useMemo(()=>c??(u?y>0?y:10:Math.ceil(y/10)*10||10),[y,c,u]),f=l,v=g||m?1:2,x={"--bar-width":`${s.useMemo(()=>{const k=Math.max(1,e.length);return Math.max(8,Math.min(i,Math.round(120/(k*v)+6)))},[e.length,v,i])}px`},_=s.useMemo(()=>{const k=Math.round(C/2);return k!==C?[C,k,0]:[C,0]},[C]),[b,N]=s.useState(null),w=s.useCallback(()=>N(null),[]);return t.jsxs("div",{className:"manager-bar-chart-wrap",children:[t.jsx("div",{className:"manager-bar-chart-inner",children:t.jsx("div",{className:"manager-bar-chart-scroll",children:t.jsxs("div",{className:"manager-bar-chart-area",children:[t.jsxs("div",{className:"manager-bar-chart-plot",style:{height:f},children:[_.slice(0,-1).map((k,j)=>t.jsx("div",{className:"manager-bar-chart-gridline",style:{top:(1-k/C)*f},children:t.jsx("span",{className:"manager-bar-chart-gridline__label caption-1",children:k})},j)),e.map((k,j)=>{const A=k.a===-1,S=F=>Math.min(f,Math.max(0,Kt(F)/C*f)),q=A?0:S(k.a),W=A?0:S(k.b),B=(k.parts??[]).map(Kt);return t.jsx("div",{className:"manager-bar-chart-col",style:{cursor:A?"default":"pointer"},onMouseEnter:A?void 0:F=>{const E=F.currentTarget.getBoundingClientRect(),te=[k.label,k.sublabel].filter(Boolean).join(" ");let $;if(g){const H=(p??[]).map((ee,Y)=>({text:`${ee}: ${B[Y]??0}`,color:(d??[])[Y]})),Q=H.filter((ee,Y)=>(B[Y]??0)>0);$=Q.length?Q:H}else h&&!m?$=[{text:`${r} ${Kt(k.a)}%`,color:n},{text:`${o} ${Kt(k.b)}%`,color:a}]:h&&k.rawB!==void 0?$=[{text:`${h.total} ${k.rawB}`},{text:`${h.done} ${k.rawA??0}`,color:n}]:m?$=[{text:`${r}: ${Kt(k.a)}`,color:n}]:$=[{text:`${r}: ${Kt(k.a)}`,color:n},{text:`${o}: ${Kt(k.b)}`,color:a}];N({rect:{left:E.left,top:E.top,right:E.right,bottom:E.bottom,width:E.width,height:E.height},title:te,items:$})},onMouseLeave:w,children:!A&&(g?t.jsx("div",{className:"manager-bar-chart-stack",style:x,children:(()=>{const F=B.reduce((te,$,H)=>$>0?H:te,-1);let E=f;return B.map((te,$)=>{if(te<=0)return null;const H=Math.min(E,te/C*f);return E-=H,t.jsx("div",{className:"manager-bar-chart-stack-segment",style:{height:H,background:(d??[])[$],borderRadius:$===F?"6px 6px 0 0":void 0}},$)})})()}):t.jsxs(t.Fragment,{children:[t.jsx("div",{className:"manager-bar-chart-bar",style:{...x,height:q,background:n}}),!m&&t.jsx("div",{className:"manager-bar-chart-bar",style:{...x,height:W,background:a}})]}))},j)})]}),t.jsx("div",{className:"manager-bar-chart-x-axis",children:e.map((k,j)=>{const A=k.a===-1;return t.jsxs("span",{className:`manager-bar-chart-x-axis__label${A?" manager-bar-chart-x-axis__label--future":""}`,children:[t.jsxs("span",{className:"caption-1 manager-bar-chart-x-axis__main",children:[k.isToday&&t.jsx("span",{className:"manager-bar-chart-x-axis__today-dot",style:{background:n}}),k.label]}),k.sublabel&&t.jsx("span",{className:"caption-1",children:k.sublabel})]},j)})})]})})}),b&&t.jsx(Sn,{anchorRect:b.rect,title:b.title,items:b.items,showIndex:!1,closeOnOutsideClick:!1})]})}function Gi({control:e}){const{t:n}=he.useTranslation(),{activeOptions:a,activeIdx:r,range:o,setRange:i,handlePrev:l,handleNext:c,periodOptions:u,period:d,setPeriod:p}=e,h=d==="week"?n("calendar.prevWeek","\uC774\uC804 \uC8FC"):n("calendar.prevMonth","\uC774\uC804 \uB2EC"),m=d==="week"?n("calendar.nextWeek","\uB2E4\uC74C \uC8FC"):n("calendar.nextMonth","\uB2E4\uC74C \uB2EC");return t.jsxs("div",{className:"manager-section-controls",children:[t.jsx(oe,{htmlType:"button",size:32,type:"dot",icon:"chevron-left",ariaLabel:h,showTooltipInfo:h,disabled:r===a.length-1,onClick:l}),t.jsx(Gt,{value:o,onChange:i,options:a,size:40,className:"month-dropdown",ariaLabel:n("calendar.rangeSelect","\uAE30\uAC04 \uC120\uD0DD")}),t.jsx(oe,{htmlType:"button",size:32,type:"dot",icon:"chevron-right",ariaLabel:m,showTooltipInfo:m,disabled:r<=0,onClick:c}),t.jsx(En,{ariaLabel:n("calendar.periodSelect","\uAE30\uAC04 \uB2E8\uC704"),options:u,value:d,onChange:g=>p(g),size:32})]})}function Ki(e,n,a){const r=new Date(a.getFullYear(),a.getMonth(),a.getDate());return Array.from({length:7},(o,i)=>{const l=new Date(n);l.setDate(n.getDate()+i);const c=(e[`${l.getFullYear()}\uB144 ${l.getMonth()+1}\uC6D4`]?.daily??[])[l.getDate()-1],u=c?.a===-1||l>r;return{dt:l,entry:c,isFuture:u}})}function g4(e,n,a,r){const{period:o,monthRange:i,weekRange:l,weekRanges:c,DOW:u}=n,d=r?.startsWith("ko"),p=new Date,h=p.getFullYear(),m=p.getMonth()+1,g=p.getDate();if(o==="month"){const f=e[i]??{weekly:[],daily:[]},v=i.match(/^(\d+)년 (\d+)월$/),x=v?Number(v[1]):null,_=v?Number(v[2]):null,b=x&&_?ln(x,_-1):1;return f.weekly.map((N,w)=>{const k=w+1;let j=N.label,A=!1,S=!1;if(x&&_){const q=b+w*7,W=new Date(x,_-1,q+6),B=W.getMonth()+1,F=W.getDate(),E=B===_?`${F}`:`${B}/${F}`;j=a("manager.chart.weekRange",{start:q,end:E});const te=new Date(h,m-1,g).getTime();A=te>=new Date(x,_-1,q).getTime()&&te<=W.getTime(),S=x>h||x===h&&(_>m||_===m&&q>g)}return{...N,label:j,sublabel:d?`${qi[k-1]??k}\uC8FC`:`Week ${k}`,isToday:A,a:S?-1:N.a,b:S?0:N.b}})}const y=c.find(f=>f.value===l);if(!y)return[];const C=new Date(y.year,y.month-1,ln(y.year,y.month-1)+y.week*7);return Ki(e,C,p).map(({dt:f,entry:v,isFuture:x})=>{const _=f.getMonth()+1,b=f.getDate(),N=f.getFullYear();return{label:_===y.month&&N===y.year?`${b}`:`${_}/${b}`,sublabel:u[f.getDay()]??"",a:x?-1:v&&v.a>0?v.a:0,b:x?0:v&&v.b>0?v.b:0,isToday:N===h&&_===m&&b===g,...v?.parts?{parts:x?v.parts.map(()=>0):v.parts}:{}}})}const b4={small:{height:100,barWidth:16},medium:{height:140,barWidth:20},large:{height:180,barWidth:24}};function y4({size:e="medium",barWidth:n,titleKey:a,data:r,colorA:o,colorB:i,labelAKey:l,labelBKey:c,showTotal:u=!1,totalUnitKey:d,totalLabelKey:p,control:h,hideControls:m=!1,rate:g=!1,tightMax:y=!1,avgMode:C=!1,totalFormat:f,series:v,loading:x=!1,onDetail:_,inGrid:b=!1}){const{t:N,i18n:w}=he.useTranslation(),k=b4[e],j=Ui(r),A=h??j,S=s.useMemo(()=>g4(r,A,N,w.language),[r,A,N,w.language]),q=s.useMemo(()=>{if(!g)return S;const E=A.period==="month"?A.monthRange.match(/^(\d+)년 (\d+)월$/):null,te=new Date;return S.map(($,H)=>{let Q=$.a===-1?-1:$.b>0?Math.round($.a/$.b*100):0;if(E&&$.a!==-1){const ee=Number(E[1]),Y=Number(E[2])-1,O=Ki(r,new Date(ee,Y,ln(ee,Y)+H*7),te).filter(T=>!T.isFuture);Q=O.length?Math.round(O.reduce((T,{entry:M})=>T+(M&&M.b>0?M.a/M.b*100:0),0)/O.length):0}return{...$,a:Q,b:$.a===-1?0:c&&$.parts&&$.parts[1]>0?Math.round($.parts[0]/$.parts[1]*100):0,rawA:$.a===-1?-1:$.a,rawB:$.b}})},[S,g,c,A.period,A.monthRange,r]),W=s.useMemo(()=>{if(g||C){const E=(A.period==="week"?S:r[A.monthRange]?.daily??[]).filter($=>$.a!==-1);if(E.length===0)return 0;const te=g?E.reduce(($,H)=>$+(H.b>0?H.a/H.b*100:0),0):E.reduce(($,H)=>$+(H.a>0?H.a:0),0);return Math.round(te/E.length)}return q.reduce((E,te)=>E+(te.a>0?te.a:0)+(c&&te.b>0?te.b:0),0)},[q,S,g,C,c,A.period,A.monthRange,r]),B=v&&v.length>0?v.map(E=>({color:E.color,label:E.label})):[{color:o,label:N(l)},...c?[{color:i,label:N(c)}]:[]],F=e==="small";return t.jsx(vr,{className:F?"manager-section--compact":e==="large"?"manager-section--full":void 0,inGrid:b,title:N(a),titleClassName:F?"h5 chart-section-title--small":void 0,headRight:F?void 0:t.jsxs(t.Fragment,{children:[!m&&t.jsx(Gi,{control:A}),_&&t.jsx("span",{className:"manager-bar-chart-detail-btn",children:t.jsx(oe,{htmlType:"button",size:32,type:"dot",icon:"list",ariaLabel:N("trainingStatus.detail","\uC0C1\uC138\uBCF4\uAE30"),onClick:_})})]}),subRow:t.jsxs(t.Fragment,{children:[u?g||C||p&&f?t.jsx(Aa,{label:F?void 0:`${N(A.period==="week"?"manager.chart.weeklyPrefix":"manager.chart.monthlyPrefix")} ${N(p??l)}`,children:f?(f(W).match(/(\d+|[^\d]+)/g)??[]).map((E,te)=>/\d/.test(E)?t.jsx("span",{className:"barchart-total__num h0",children:E},te):t.jsx("span",{className:"barchart-total__unit h5",children:E},te)):t.jsxs(t.Fragment,{children:[t.jsx("span",{className:"barchart-total__num h0",children:W}),d&&t.jsx("span",{className:"barchart-total__unit h5",children:N(d)})]})}):t.jsxs(Aa,{children:[t.jsx("span",{className:"barchart-total__num h0",children:W}),t.jsx("span",{className:"barchart-total__unit h5",children:N(l)}),d&&t.jsx("span",{className:"barchart-total__unit h5",children:N(d)})]}):t.jsx("span",{}),t.jsx(yr,{items:B,className:"caption-1"})]}),children:x?t.jsx("div",{className:"manager-bar-chart-loading",children:t.jsx(la,{size:32})}):t.jsx(C4,{data:q,colorA:o,colorB:c?i:void 0,labelA:N(l),labelB:c?N(c):void 0,barWidth:n??k.barWidth,height:k.height,maxOverride:g?100:void 0,tightMax:y,seriesColors:v?.map(E=>E.color),seriesLabels:v?.map(E=>E.label),rateLabels:g?{total:N("trainingStatus.today.tooltipTotal","\uC804\uCCB4"),done:N("trainingStatus.today.tooltipDone","\uC644\uB8CC")}:void 0})})}function v4(e){if(e.period==="month"){const i=e.monthRange.match(/^(\d+)년 (\d+)월$/),l=new Date,c=i?Number(i[1]):l.getFullYear(),u=i?Number(i[2]):l.getMonth()+1;return{from:new Date(c,u-1,1,0,0,0),to:new Date(c,u,0,23,59,59)}}const n=e.weekRanges.find(i=>i.value===e.weekRange);if(!n){const i=new Date;return{from:i,to:i}}const a=ln(n.year,n.month-1),r=new Date(n.year,n.month-1,a+n.week*7,0,0,0),o=new Date(r);return o.setDate(r.getDate()+6),o.setHours(23,59,59),{from:r,to:o}}const Yi={small:{diameter:96,strokeWidth:16},medium:{diameter:120,strokeWidth:18},large:{diameter:160,strokeWidth:22}};function Zi(e){return!Number.isFinite(e)||e<=0?0:e>=1?100:Math.min(99,Math.max(1,Math.round(e*100)))}function Xi({done:e,total:n,segments:a,color:r="var(--color-main)",size:o="medium",strokeWidth:i,label:l="%",hideCenter:c=!1,hideLabel:u=!1}){const d=typeof o=="number"?o:Yi[o].diameter,p=i??(typeof o=="number"?12:Yi[o].strokeWidth),h=d/2,m=(d-p)/2,g=2*Math.PI*m;if(a&&a.length>0){const v=a.reduce((x,_)=>{const b=x.length>0?x[x.length-1].acc:0,N=Number.isFinite(_.ratio)?_.ratio:0,w=Math.max(0,Math.min(N,1-b));return x.push({color:_.color,rotate:-90+b*360,dash:g*w,acc:b+w}),x},[]);return t.jsx("div",{className:"ring-chart",style:{width:d,height:d},children:t.jsxs("svg",{width:d,height:d,viewBox:`0 0 ${d} ${d}`,"aria-hidden":"true",children:[t.jsx("circle",{cx:h,cy:h,r:m,fill:"none",stroke:"var(--color-whiteLine)",strokeWidth:p}),v.map((x,_)=>x.dash>0&&t.jsx("circle",{cx:h,cy:h,r:m,fill:"none",stroke:x.color,strokeWidth:p,strokeDasharray:`${x.dash} ${g}`,strokeLinecap:"round",transform:`rotate(${x.rotate} ${h} ${h})`},_))]})})}const y=(n??0)>0?Math.min((e??0)/n,1):0,C=g*y,f=g-C;return t.jsxs("div",{className:"ring-chart",style:{width:d,height:d},children:[t.jsxs("svg",{width:d,height:d,viewBox:`0 0 ${d} ${d}`,"aria-hidden":"true",children:[t.jsx("circle",{cx:h,cy:h,r:m,fill:"none",stroke:"var(--color-whiteLine)",strokeWidth:p}),y>0&&t.jsx("circle",{cx:h,cy:h,r:m,fill:"none",stroke:r,strokeWidth:p,strokeDasharray:`${C} ${f}`,strokeLinecap:y<.02||y>.98?"butt":"round",transform:`rotate(-90 ${h} ${h})`})]}),!c&&t.jsxs("div",{className:`ring-chart__center${u?"":` ${d<=96?"ring-chart__center--small":o==="medium"?"ring-chart__center--medium":"ring-chart__center--large"}`}`,children:[t.jsx("span",{className:`ring-chart__pct ${d<=96?"h2":"h1"}`,children:Zi(y)}),!u&&t.jsx("span",{className:`ring-chart__label ${d<=96?"caption-2":"caption-1"}${d<=96||o==="medium"?" ring-chart__label--tight":""}`,children:l})]})]})}function x4({titleKey:e,headRight:n,icon:a,showTotal:r,totalLabelKey:o,legend:i,loading:l,className:c,inGrid:u=!1,...d}){const{t:p}=he.useTranslation();if(!e)return t.jsx(Xi,{...d});const h=(d.total??0)>0?Zi(Math.min((d.done??0)/d.total,1)):0,m=d.size==="small",g=d.size==="large",y=[c,m?"manager-section--compact":g?"manager-section--full":""].filter(Boolean).join(" ")||void 0,C=a&&t.jsx("span",{className:"chart-section-icon",children:t.jsx(Oe,{icon:a,className:"chart-section-icon-inner"})});return t.jsx(vr,{className:y,inGrid:u,title:p(e),titleClassName:m?"h5 chart-section-title--small":void 0,headRight:C||(m?void 0:n),subRow:(r||i)&&t.jsxs(t.Fragment,{children:[r?t.jsxs(Aa,{label:!m&&o?p(o):void 0,children:[t.jsx("span",{className:"barchart-total__num h0",children:h}),t.jsx("span",{className:"barchart-total__unit h5",children:"%"})]}):t.jsx("span",{}),i&&t.jsx(yr,{items:i})]}),children:l?t.jsx("div",{className:"manager-bar-chart-loading",children:t.jsx(la,{size:32})}):t.jsx("div",{className:"ring-chart-section-body ring-chart-section-body--offset",children:t.jsx(Xi,{...d,hideCenter:m||d.hideCenter})})})}function _4({label:e,value:n,change:a,changeType:r,icon:o,tooltip:i,onClick:l}){const c=s.useRef(null),{anchorRect:u,openAt:d,close:p}=_a(),h=s.useCallback(()=>{i&&c.current&&d(c.current)},[i,d]),m=r??(a===void 0?void 0:a>0?"up":a<0?"down":"neutral"),g=a===void 0?void 0:a>0?`+${a}`:`${a}`,y=s.useCallback(C=>{l&&(C.key==="Enter"||C.key===" ")&&(C.preventDefault(),l())},[l]);return t.jsxs("div",{ref:c,className:`manager-stat-card${l?" manager-stat-card--clickable":""}`,onClick:l,onKeyDown:l?y:void 0,onPointerEnter:h,onPointerLeave:p,onFocus:h,onBlur:p,role:l?"button":void 0,tabIndex:l?0:void 0,"aria-label":l?[e,n,g].filter(C=>C!==void 0&&C!=="").join(" "):void 0,children:[i&&u&&t.jsx(gn,{anchorRect:{left:u.left,top:u.top+21,right:u.right,bottom:u.bottom,width:u.width,height:u.height},text:i}),t.jsxs("div",{className:"manager-stat-card__label-row",children:[t.jsx("span",{className:"manager-stat-card__label h5",children:e}),o&&t.jsx("span",{className:"manager-stat-card__icon",children:t.jsx(Oe,{icon:o,className:"manager-stat-card__icon-inner"})})]}),t.jsx("div",{className:"manager-stat-card__content",children:t.jsxs("div",{className:"manager-stat-card__left",children:[t.jsx("div",{className:"manager-stat-card__value h2",children:n}),g&&t.jsx("div",{className:`manager-stat-card__change manager-stat-card__change--${m??"neutral"} caption-1`,children:g})]})})]})}function Ji({value:e,onChange:n,min:a=0,max:r=100,step:o=1,orientation:i="horizontal",size:l=24,disabled:c=!1,ariaLabel:u,length:d,className:p,label:h,formatValue:m,labelPos:g,labelAlign:y="right",showMinMax:C=!1,minLabel:f,maxLabel:v,showBgTick:x=!1,showFillTick:_=!1,tickStep:b,tickShape:N="dot"}){n&&!u&&qn("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 w=Math.min(r,Math.max(a,e)),k=r>a?(w-a)/(r-a):0,j=i==="vertical",A=!n,S=T=>n?.(Number(T.target.value)),q=typeof d=="number"?`${d}px`:d,W={"--slider-ratio":String(k),"--slider-thumb":`${l}px`,...q?j?{height:q}:{width:q}:{}},B=b??o,F=(x||_)&&B>0&&r>a?Math.floor((r-a)/B+1e-6):0;if(F>0&&F<=100){const T=N!=="dash",M=ae=>T?`radial-gradient(circle, ${ae} 0.5px, transparent 1px)`:j?`linear-gradient(to bottom, transparent calc(50% - 2px), ${ae} calc(50% - 2px), ${ae} calc(50% + 2px), transparent calc(50% + 2px))`:`linear-gradient(to right, transparent calc(50% - 2px), ${ae} calc(50% - 2px), ${ae} calc(50% + 2px), transparent calc(50% + 2px))`,V=T?"2px":"4px",I=[],P=[],z=[];for(let ae=0;ae<=F;ae++){const ne=ae*B/(r-a);if(ne>1+1e-6)break;const re=`${((j?1-ne:ne)*100).toFixed(4)}%`,pe=ne<=k+1e-6;if(pe?!_:!x)continue;const _e=pe?"var(--slider-tick-color-on-fill, var(--color-deepWhite))":"var(--slider-tick-color, var(--color-lightGray))";I.push(M(_e)),P.push(j?`${V} var(--slider-thumb)`:`var(--slider-thumb) ${V}`),z.push(j?`center ${re}`:`${re} center`)}I.push(j?"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))"),P.push("100% 100%"),z.push("0 0"),W.backgroundImage=I.join(", "),W.backgroundSize=P.join(", "),W.backgroundPosition=z.join(", "),W.backgroundRepeat="no-repeat"}const E=t.jsx("input",{type:"range",className:ye("slider",`slider--${i}`,A&&"slider--static",!h&&!C&&p),min:a,max:r,step:o,value:w,disabled:c,readOnly:A,tabIndex:A?-1:void 0,"aria-label":u,"aria-orientation":i,onChange:S,style:W});if(!h&&!C)return E;const te=t.jsx("span",{className:"slider-wrap__minmax caption-1",children:f??a}),$=t.jsx("span",{className:"slider-wrap__minmax caption-1",children:v??r}),H=C?t.jsxs("div",{className:ye("slider-track-group",`slider-track-group--${i}`,!h&&p),children:[j?$:te,E,j?te:$]}):E;if(!h)return H;const Q=g??(j?"bottom":"right"),ee=`${Math.round(r>a?(w-a)/(r-a)*100:0)}%`,Y=m?m(w):h==="percent"?ee:h==="count"?`${w} / ${r}`:String(w),O=t.jsx("span",{className:"slider-wrap__value body-3b",children:Y});return t.jsxs("div",{className:ye("slider-wrap",`slider-wrap--${i}`,`slider-wrap--label-${Q}`,`slider-wrap--align-${y}`,p),children:[H,O]})}const w4=.86,k4=250,xr=(e,n,a,r)=>Math.round(Math.min(r,Math.max(a,e-n))),_r=(e,n,a,r)=>{const o=xr(e,n,a,r);return`${o<0?"-":"+"}${Math.abs(o)} dB`};function wr({analyser:e,audioElement:n,orientation:a="horizontal",length:r,label:o,labelPos:i,labelAlign:l="right",floorDb:c=-60,refDb:u=-35,displayMin:d=-5,displayMax:p=25,className:h,ariaLabel:m}){const g=s.useRef(null),y=s.useRef(null),C=s.useRef(null),f=s.useRef(null),[v,x]=s.useState(null);s.useEffect(()=>{const w=te=>{const $=_r(te,u,d,p);C.current&&(C.current.textContent=$);const H=g.current;H&&(H.setAttribute("aria-valuenow",String(xr(te,u,d,p))),H.setAttribute("aria-valuetext",$))},k=e??zm(n)??(v&&v.el===n?v.node:null),j=y.current;if(!k||!j){j?.style.setProperty("--meter-level","0"),w(c);let te=!1;return!e&&n&&fa(n).then($=>{!te&&$&&x({el:n,node:$})}),()=>{te=!0}}Qa();const A=new Float32Array(k.fftSize);let S=0,q=0,W=0,B=0,F=null;const E=te=>{const $=Wm(k,A);S=$>S?$:S*w4;const H=S>1e-5?20*Math.log10(S):-1/0,Q=Math.max(c,H),ee=Q-u,Y=Math.min(1,Math.max(0,(ee-d)/(p-d)));if(j.style.setProperty("--meter-level",Y.toFixed(3)),q+=Q,W+=1,te-B>=k4){const O=q/W;F=F==null?O:F*.6+O*.4,w(F),q=0,W=0,B=te}f.current=requestAnimationFrame(E)};return f.current=requestAnimationFrame(E),()=>{f.current!=null&&cancelAnimationFrame(f.current),f.current=null}},[e,n,v,c,u,d,p]);const _=typeof r=="number"?`${r}px`:r,b=t.jsx("div",{className:"audio-meter__track",style:_?a==="vertical"?{height:_}:{width:_}:{},children:t.jsx("div",{ref:y,className:"audio-meter__fill"})}),N=i??(a==="vertical"?"bottom":"right");return t.jsxs("div",{ref:g,className:ye("audio-meter",`audio-meter--${a}`,o&&`audio-meter--label-${N}`,o&&`audio-meter--align-${l}`,h),role:"meter","aria-label":m,"aria-valuemin":d,"aria-valuemax":p,"aria-valuenow":xr(c,u,d,p),"aria-valuetext":_r(c,u,d,p),children:[b,o&&t.jsx("span",{ref:C,className:"audio-meter__value caption-2",children:_r(c,u,d,p)})]})}const Qi=500;function el({message:e,position:n,duration:a,onClose:r}){const[o,i]=s.useState(!1),[l,c]=s.useState(!1),u=s.useRef(l),d=s.useRef(o);s.useEffect(()=>{u.current=l},[l]),s.useEffect(()=>{d.current=o},[o]);const p=s.useRef(null),h=s.useRef(""),m=s.useRef(r);s.useEffect(()=>{m.current=r});const g=a,y=s.useRef(null),C=s.useRef(0),f=s.useRef(0),v=s.useRef(!1),x=s.useRef(null),_=s.useRef(null),b=s.useRef(null),N=s.useRef(null),w=s.useRef(()=>{});w.current=A=>{A<0||(C.current=Date.now(),f.current=A,y.current=setTimeout(()=>{y.current=null,i(!1),x.current=setTimeout(()=>{c(!1);try{m.current()}catch{}},Qi)},A))};const k=s.useCallback(()=>{v.current||!y.current||(v.current=!0,clearTimeout(y.current),y.current=null,f.current=Math.max(0,f.current-(Date.now()-C.current)))},[]),j=s.useCallback(()=>{v.current&&(v.current=!1,w.current(f.current))},[]);return s.useEffect(()=>{if(e!==h.current&&(y.current&&(clearTimeout(y.current),y.current=null),x.current&&(clearTimeout(x.current),x.current=null)),e){if(d.current)return g>0&&!y.current&&(v.current?f.current=g:w.current(g)),h.current=e,()=>{y.current&&(clearTimeout(y.current),y.current=null)};const A=()=>{const S=p.current;if(S)try{S.classList.remove("is-visible"),S.style.transition="none",n==="top"?S.style.transform="translateX(-50%) translateY(-16px)":S.style.transform="translateX(-50%) translateY(16px)",S.style.opacity="0",S.offsetWidth,S.style.transition="",S.classList.add("is-visible"),N.current&&clearTimeout(N.current),N.current=setTimeout(()=>{N.current=null;try{S.style.opacity="",S.style.transform="",S.style.transition=""}catch{}},60)}catch{}};u.current?(A(),i(!0)):(c(!0),_.current=requestAnimationFrame(()=>{b.current=requestAnimationFrame(()=>{A(),i(!0)})})),g>0&&(v.current=!1,w.current(g))}else i(!1),x.current=setTimeout(()=>c(!1),Qi);return h.current=e,()=>{y.current&&clearTimeout(y.current),x.current&&clearTimeout(x.current),_.current&&cancelAnimationFrame(_.current),b.current&&cancelAnimationFrame(b.current),N.current&&clearTimeout(N.current),y.current=null,x.current=null,_.current=null,b.current=null,N.current=null}},[e,g,n]),{mounted:l,showing:o,popupRef:p,pause:k,resume:j}}function Fn({message:e="",position:n="top",type:a="normal",onClose:r=()=>{},duration:o=2e3}){const{mounted:i,showing:l,popupRef:c,pause:u,resume:d}=el({message:e,position:n,duration:o,onClose:r});if(!i)return null;const p=a==="notice"||a==="warning"?a:"normal",h=t.jsx("div",{ref:c,className:`toast toast--${n} ${l?"is-visible":""}`,role:"status","aria-live":"polite",onMouseEnter:u,onMouseLeave:d,onFocusCapture:u,onBlurCapture:d,children:t.jsx("div",{className:`toast__inner toast__inner--${p} body-2`,children:e})});return typeof document<"u"?It.createPortal(h,document.body):h}const A4=24;function N4({value:e,max:n=100,size:a=8,color:r,trackColor:o,label:i,formatValue:l,labelPos:c,labelAlign:u="right",ariaLabel:d,className:p}){const h=Number.isFinite(n)&&n>0?n:1,m=Math.max(0,Math.min(Number.isFinite(e)?e:0,h)),g=m/h*100,y=Number.isFinite(n)&&n>0?n:0,C=c??(a>=A4?"inside":"bottom"),f=C==="center"?"inside":C,v=f==="inside"&&(u==="left"?g>=15:u==="center"?g>=50:g>=85),x={};return r&&(x["--progress-bar-fill"]=r),o&&(x["--progress-bar-track"]=o),t.jsxs("div",{className:ye("progress-bar",`progress-bar--${a}`,`progress-bar--label-${f}`,i&&`progress-bar--align-${u}`,i&&v&&"progress-bar--label-on-fill",p),style:x,children:[t.jsx("div",{className:"progress-bar__track",role:"progressbar","aria-valuenow":m,"aria-valuemin":0,"aria-valuemax":y,"aria-label":d,children:t.jsx("div",{className:"progress-bar__fill",style:{width:`${g}%`}})}),i&&t.jsx("span",{className:"progress-bar__label caption-1b",children:l?l(m):i==="percent"?`${Math.round(g)}%`:i==="raw"?String(m):`${m} / ${y}`})]})}const B4={position:"absolute",width:1,height:1,margin:-1,padding:0,overflow:"hidden",clipPath:"inset(50%)",whiteSpace:"nowrap",border:0},S4="rgba(255, 255, 255, 0.16)";function tl({max:e,index:n,inactiveBg:a,inactiveColor:r,transparent:o,variant:i="numbered",announce:l=!1,ariaLabel:c}){const{t:u}=he.useTranslation(),d=Xt("(max-width: 767px)");if(!Number.isInteger(e)||e<=0)return null;const p=Number.isInteger(n)?Math.max(0,Math.min(n,e-1)):0,h=c??u("progress.steps",{current:p+1,total:e,defaultValue:"\uC9C4\uD589 \uB2E8\uACC4 {{current}} / {{total}}"}),m={};return a&&(m["--pi-inactive-bg"]=a),r&&(m["--pi-inactive-color"]=r),o&&(a||(m["--pi-inactive-bg"]=S4),r||(m["--pi-inactive-color"]="var(--color-white)")),i==="dot"?t.jsxs("div",{className:"progress-indicator progress-indicator--dot",style:m,role:l?"status":"img","aria-label":l?void 0:h,children:[l&&t.jsx("span",{style:B4,children:h}),Array.from({length:e}).map((g,y)=>t.jsx("span",{"aria-hidden":"true",className:`progress-indicator-dot--dot${y<p?" done":y===p?" active":""}`},y))]}):d?t.jsx("div",{className:"progress-indicator progress-indicator--mobile",style:m,role:"list","aria-label":h,children:t.jsxs("span",{role:"listitem",className:"progress-indicator-dot active body-3",children:[p+1," / ",e]})}):t.jsx("div",{className:"progress-indicator",style:m,role:"list","aria-label":h,children:Array.from({length:e}).map((g,y)=>t.jsx("span",{role:"listitem","aria-current":y===p?"step":void 0,className:`progress-indicator-dot ${y<p?" done":y===p?" active":""} body-3`,children:y+1},y))})}function D4(e){if(!e)return[];const n=[];let a=0,r="";for(const o of e.trim()){if(o==="("?a++:o===")"&&a--,/\s/.test(o)&&a===0){r&&(n.push(r),r="");continue}r+=o}return r&&n.push(r),n}function j4({children:e,className:n,style:a}){return t.jsx("div",{className:n?`table-cell ${n}`:"table-cell",style:a,children:e})}function kr({variant:e="default",children:n,className:a,draggable:r,onClick:o,onMouseEnter:i,onMouseLeave:l,onDragStart:c,onDragEnd:u,expandedContent:d}){const p=s.useCallback(h=>{o&&h.target===h.currentTarget&&(h.key==="Enter"||h.key===" ")&&(h.preventDefault(),o())},[o]);return e==="loading"?t.jsx("div",{className:"table-row-wrap",children:t.jsx("div",{className:"table-row table-row--loading",children:t.jsx(la,{size:28})})}):e==="empty"?t.jsx("div",{className:"table-row-wrap",children:t.jsx("div",{className:"table-row table-row--empty body-3",children:n})}):t.jsxs("div",{className:"table-row-wrap",children:[t.jsx("div",{className:a?`table-row ${a}`:"table-row",draggable:r,onClick:o,onKeyDown:o?p:void 0,onMouseEnter:i,onMouseLeave:l,onDragStart:c,onDragEnd:u,role:o?"button":void 0,tabIndex:o?0:void 0,children:n}),d&&t.jsx("div",{className:"table-row-expand",children:d})]})}function T4({dir:e}){return t.jsx(e==="asc"?jo:Do,{className:"table-field__sort-arrow",size:16,strokeWidth:2})}function E4({children:e,onClick:n,className:a,sortDir:r,onResizeStart:o}){const i=s.useCallback(l=>{n&&l.target===l.currentTarget&&(l.key==="Enter"||l.key===" ")&&(l.preventDefault(),n())},[n]);return t.jsxs("div",{onClick:n,onKeyDown:n?i:void 0,role:n?"button":void 0,tabIndex:n?0:void 0,"aria-sort":r?r==="asc"?"ascending":"descending":void 0,className:ye("table-field body-3",a,r?"table-field--sorted":"",o?"table-field--resizable":""),children:[e,r&&t.jsx(T4,{dir:r}),o&&t.jsx("span",{className:"table-field__resizer",onPointerDown:o,onClick:l=>l.stopPropagation(),"aria-hidden":"true"})]})}function Ar({fields:e=[],headerGroups:n,items:a=[],renderRow:r,onRowClick:o,isRowClickable:i,onRowMouseEnter:l,onRowMouseLeave:c,onRowDragStart:u,onRowDragEnd:d,draggingId:p,gridTemplateColumns:h,mobileGridTemplateColumns:m,resizable:g=!1,resizeMode:y="grow",resizeStorageKey:C,size:f="small",title:v,icon:x,count:_,collapsed:b=!1,onToggleCollapse:N,headerActions:w,empty:k,loading:j,dragOver:A=!1,onDragOver:S,onDragLeave:q,onDrop:W,renderExpandedRow:B,expandedId:F}){const{t:E}=he.useTranslation(),te=Xt("(max-width: 767px)"),$=m&&te?m:null,H=g&&!$,Q=48,ee=C?`table-cols:${C}`:null,Y=s.useRef(null),O=s.useRef(()=>!1),T=s.useRef([]),M=s.useRef(null),V=X=>{if(!X||typeof window>"u")return null;try{const ue=JSON.parse(window.localStorage.getItem(X)??"null");return Array.isArray(ue)&&ue.length>0&&ue.every(ke=>typeof ke=="number"&&Number.isFinite(ke)&&ke>0)?ue:null}catch{return null}},[I,P]=s.useState(()=>V(ee)),[z,ae]=s.useState(ee);z!==ee&&(ae(ee),P(V(ee)));const ne=s.useRef(I);s.useEffect(()=>{ne.current=I},[I]);const re=s.useCallback(X=>{const ue=M.current;ue&&P(ke=>{if(!ke)return ke;const Me=[...ke];if(ue.next!=null&&ue.startWNext!=null){const Fe=X.clientX-ue.startX,De=Math.max(Q-ue.startW,Math.min(ue.startWNext-Q,Fe));Me[ue.index]=ue.startW+De,Me[ue.next]=ue.startWNext-De}else Me[ue.index]=Math.max(Q,ue.startW+(X.clientX-ue.startX));return Me})},[]),pe=s.useCallback(()=>{if(M.current=null,window.removeEventListener("pointermove",re),window.removeEventListener("pointerup",pe),document.body.style.cursor="",document.body.style.userSelect="",ee&&ne.current)try{window.localStorage.setItem(ee,JSON.stringify(ne.current))}catch{}},[re,ee]),_e=s.useCallback((X,ue)=>{ue.preventDefault(),ue.stopPropagation();const ke=Y.current;if(!ke)return;const Me=Array.from(ke.children).map(De=>De.getBoundingClientRect().width),Fe=y==="fit"?e.findIndex((De,Pe)=>Pe>X&&De.resizable!==!1):-1;M.current=Fe>=0?{index:X,startX:ue.clientX,startW:Me[X],next:Fe,startWNext:Me[Fe]}:{index:X,startX:ue.clientX,startW:Me[X]},P(Me),window.addEventListener("pointermove",re),window.addEventListener("pointerup",pe),document.body.style.cursor="col-resize",document.body.style.userSelect="none"},[re,pe,y,e]),Z=s.useCallback(()=>{const X=Y.current,ue=X?.closest(".table-wrap");if(!X||!ue)return;const ke=ue.style.getPropertyValue("--table-grid-cols");ue.style.setProperty("--table-grid-cols",e.map((ge,Ve)=>O.current(Ve)?T.current[Ve]:"max-content").join(" "));const Me=Array.from(ue.querySelectorAll(".table-row")).filter(ge=>!ge.classList.contains("table-row--loading")&&!ge.classList.contains("table-row--empty")),Fe=e.map((ge,Ve)=>{let Be=X.children[Ve]?.getBoundingClientRect().width??0;for(const Ee of Me){const Ne=Ee.children[Ve];Ne&&(Be=Math.max(Be,Ne.getBoundingClientRect().width))}return Math.max(Q,Math.ceil(Be))}),De=window.getComputedStyle(X),Pe=X.clientWidth-(parseFloat(De.paddingLeft)||0)-(parseFloat(De.paddingRight)||0);ke?ue.style.setProperty("--table-grid-cols",ke):ue.style.removeProperty("--table-grid-cols");let Le=Fe;const Je=Fe.reduce((ge,Ve,Be)=>ge+(O.current(Be)?Ve:0),0),ze=Fe.reduce((ge,Ve,Be)=>ge+(O.current(Be)?0:Ve),0),He=Pe-Je;if(Pe>0&&ze>0&&He>0){const ge=He/ze;Le=Fe.map((Be,Ee)=>O.current(Ee)?Be:Math.max(Q,Math.round(Be*ge)));const Ve=Math.round(He-Le.reduce((Be,Ee,Ne)=>Be+(O.current(Ne)?0:Ee),0));if(Ve!==0){let Be=-1;Le.forEach((Ee,Ne)=>{!O.current(Ne)&&(Be<0||Ee>Le[Be])&&(Be=Ne)}),Be>=0&&(Le[Be]=Math.max(Q,Le[Be]+Ve))}}if(P(Le),ee)try{window.localStorage.setItem(ee,JSON.stringify(Le))}catch{}},[e,y,ee]);s.useEffect(()=>()=>{M.current&&(window.removeEventListener("pointermove",re),window.removeEventListener("pointerup",pe),document.body.style.cursor="",document.body.style.userSelect="")},[re,pe]);const ie=D4(h),J=ie.filter(X=>/\b(auto|min-content|max-content)\b|fit-content\(/.test(X));J.length>0&&qn(`table-content-track:${h}`,`[ihabdevteam-core] Table \uC758 gridTemplateColumns \uC5D0 \uB0B4\uC6A9\uC73C\uB85C \uD06C\uAE30\uAC00 \uC815\uD574\uC9C0\uB294 \uD2B8\uB799(${J.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: ${h})`);const be=X=>/^\d+(\.\d+)?px$/.test(ie[X]??"");O.current=be,T.current=ie;const xe=X=>y==="fit"&&!be(X)?"fr":"px",Ce=I&&I.length===e.length&&(y==="fit"||a.length>0),fe=$??(Ce?e.map((X,ue)=>X.resizable===!1&&ie[ue]?ie[ue]:`${I[ue]}${xe(ue)}`).join(" "):h),ve=fe?{"--table-grid-cols":fe}:void 0,Se=v!==void 0;return t.jsx("div",{className:`table-wrap table-wrap--${f}${H?" table-wrap--resizable":""}${A?" table-wrap--dragover":""}${b?" table-wrap--collapsed":""}`,style:ve,onDragOver:S,onDragLeave:q,onDrop:W,children:t.jsxs("div",{className:"table body-2",children:[Se&&t.jsxs("div",{className:"table-header",onClick:N,role:N?"button":void 0,tabIndex:N?0:void 0,"aria-expanded":N?!b:void 0,onKeyDown:N?X=>{X.target===X.currentTarget&&(X.key==="Enter"||X.key===" ")&&(X.preventDefault(),N())}:void 0,children:[N&&t.jsx(oe,{htmlType:"button",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:b?"chevron-right":"chevron-down",ariaLabel:b?E("common.expand","\uD3BC\uCE58\uAE30"):E("common.collapse","\uC811\uAE30"),className:"table-header__chevron"}),x&&t.jsx(Oe,{icon:x,label:typeof v=="string"?v:void 0,className:"table-header__icon"}),t.jsx("span",{className:"table-header__title h5b",children:v}),_!==void 0&&t.jsx("span",{className:"table-header__count body-3b",children:_}),w&&t.jsx("span",{className:"table-header__actions",onClick:X=>X.stopPropagation(),children:w})]}),!b&&t.jsxs(t.Fragment,{children:[n&&n.length>0&&t.jsx("div",{className:"table-fields table-fields--groups",children:n.map((X,ue)=>t.jsx("div",{className:ye("table-field body-3",X.className),style:{gridColumn:`span ${X.span}`},children:X.label},ue))}),t.jsxs("div",{className:ye("table-fields-strip",H&&"table-fields-strip--resizable"),children:[t.jsx("div",{className:"table-fields",ref:Y,children:e.map((X,ue)=>t.jsx(E4,{onClick:X.onClick,className:X.className,sortDir:X.sortDir,onResizeStart:H&&ue<e.length-1&&X.resizable!==!1&&(y!=="fit"||e.some((ke,Me)=>Me>ue&&ke.resizable!==!1))?ke=>_e(ue,ke):void 0,children:X.label},ue))}),H&&t.jsx(oe,{htmlType:"button",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:"chevrons-left-right-ellipsis",ariaLabel:E("table.resetColumns","\uCE78 \uB108\uBE44 \uCD08\uAE30\uD654"),showTooltipInfo:E("table.resetColumns","\uCE78 \uB108\uBE44 \uCD08\uAE30\uD654"),className:"table-fields__reset",onClick:Z})]}),t.jsx("div",{className:"table-body",children:j?t.jsx(kr,{variant:"loading"}):a.length===0&&k?t.jsx(kr,{variant:"empty",children:k}):a.map((X,ue)=>{const ke=p!=null&&X.id===p,Me=!!o&&(i?i(X):!0),Fe=F!=null&&(F instanceof Set?F.has(X.id):X.id===F);return t.jsx(kr,{className:`${Me?" table-row--clickable":""}${u?" table-row--draggable":""}${ke?" table-row--dragging":""}`.trim(),draggable:!!u,onClick:Me?()=>o(X):void 0,onMouseEnter:l?De=>l(X,De):void 0,onMouseLeave:c?De=>c(X,De):void 0,onDragStart:u?De=>u(X,De):void 0,onDragEnd:d?De=>d(X,De):void 0,expandedContent:Fe&&B?B(X):void 0,children:r(X).map((De,Pe)=>t.jsx(j4,{className:De.className,style:De.style,children:De.content},Pe))},String(X.id??ue))})})]})]})})}function nl(e){switch(e){case"\uBCF4\uCCAD\uAE30":return"main";case"\uC778\uACF5\uC640\uC6B0":return"sub";default:return"default"}}const M4={\uBCF4\uCCAD\uAE30:"hearingAid",\uC778\uACF5\uC640\uC6B0:"cochlearImplant"};function L4(e,n){const a=M4[e];return a?n(`device.type.${a}`,{defaultValue:e}):e}function al(e,n){return n!=="wornAt"?String(e[n]??""):e.wornYear?`${e.wornYear}-${e.wornMonth.padStart(2,"0")}-${e.wornDay.padStart(2,"0")}`:""}function $4({rows:e,onSelect:n,onDelete:a,onWear:r,onRelease:o,onAdd:i}){const{t:l}=he.useTranslation(),c=y=>y==="\uC88C"?l("device.direction.left","\uC88C"):l("device.direction.right","\uC6B0"),{\uC815\uB82C:u,\uCE78:d}=G0(),p=s.useMemo(()=>{if(!u)return e;const{key:y,asc:C}=u;return[...e].sort((f,v)=>{const x=y==="worn"?Number(v.worn)-Number(f.worn):al(f,y).localeCompare(al(v,y),"ko");return C?x:-x})},[e,u]),{pageRows:h,pageSizeProps:m,paginationProps:g}=U0(p,u);return t.jsxs("div",{className:"dlp-side-table",children:[t.jsx(gr,{count:{value:e.length,unit:l("customers.device.unit","\uAC1C")},pageSize:m,pagination:g,actions:i&&t.jsx(oe,{htmlType:"button",size:40,type:"bar",variant:"main",icon:"plus",label:l("customers.device.addButton","\uAE30\uAE30 \uCD94\uAC00"),onClick:i})}),t.jsx(Ar,{resizable:!0,resizeMode:"fit",resizeStorageKey:"customer-device-history-v2",fields:[{...d(l("customers.device.wearingNow","\uCC29\uC6A9"),"worn"),resizable:!1},d(l("device.direction.label","\uBC29\uD5A5"),"side"),d(l("device.deviceType","\uC885\uB958"),"device"),d(l("device.brand","\uBE0C\uB79C\uB4DC"),"brand"),d(l("device.fitType","\uCC29\uC6A9\uD615\uD0DC"),"fitType"),d(l("device.productName","\uC81C\uD488\uBA85"),"productName"),d(l("device.wornDate","\uCC29\uC6A9\uC77C"),"wornAt"),...a?[{label:"",resizable:!1}]:[]],items:h.map((y,C)=>({id:y.id??`${y.side}-${C}`,row:y})),gridTemplateColumns:`56px 110px 110px minmax(120px, 1fr) 100px minmax(120px, 1fr) 110px${a?" 80px":""}`,renderRow:({row:y})=>[{content:t.jsx("span",{className:"dlp-worn-check",onClick:C=>C.stopPropagation(),children:t.jsx(Vi,{checked:y.worn,disabled:!r||!o,ariaLabel:y.worn?l("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C"):l("customers.device.wear","\uCC29\uC6A9"),onChange:C=>{C?r?.(y):o?.(y)}})})},{content:t.jsx("span",{children:c(y.side)})},{content:y.device?t.jsx(it,{size:"small",variant:nl(y.device),fill:"soft",label:L4(y.device,l)}):t.jsx("span",{})},{content:t.jsx("span",{children:y.brand})},{content:t.jsx("span",{children:y.fitType||"-"})},{content:t.jsx("span",{children:y.productName||"-"})},{content:t.jsx("span",{className:"dlp-date",children:y.wornYear?`${y.wornYear}.${y.wornMonth}.${y.wornDay}`:"-"})},...a?[{content:t.jsx("span",{className:"dlp-row-actions",children:t.jsx(oe,{htmlType:"button",size:28,type:"bar",variant:"transparent-gray",label:l("common.delete","\uC0AD\uC81C"),onClick:C=>{C?.stopPropagation(),a(y)}})})}]:[]],onRowClick:({row:y})=>n(y),empty:l("customers.device.historyEmpty","\uB4F1\uB85D\uB41C \uAE30\uAE30 \uC774\uB825\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.")})]})}function rl(e,n){return e?{role:n?.role??"button",tabIndex:0,...n?.selected===void 0?{}:{"aria-selected":n.selected},onKeyDown:a=>{a.target===a.currentTarget&&(a.key!=="Enter"&&a.key!==" "||(a.preventDefault(),e(a)))}}:{}}function R4(e,n){return new Date(e,n+1,0).getDate()}function P4(e,n){return new Date(e,n,1).getDay()}function I4({visits:e=[],onVisitClick:n,onVisitMove:a,onDayClick:r}){const{t:o}=he.useTranslation(),i=s.useMemo(()=>o("calendar.dow",{returnObjects:!0}),[o]),[l,c]=s.useState(new Date().getFullYear()),[u,d]=s.useState(new Date().getMonth()),[p,h]=s.useState(null),m=s.useRef(null),g=new Date,y=s.useMemo(()=>{const b={};return e.forEach(N=>{b[N.date]||(b[N.date]=[]),b[N.date].push(N)}),b},[e]),C=s.useMemo(()=>{const b=R4(l,u),N=P4(l,u),w=[];for(let k=0;k<N;k++)w.push(null);for(let k=1;k<=b;k++)w.push(k);for(;w.length<35;)w.push(null);return w},[l,u]),f=s.useCallback(()=>{u===0?(c(b=>b-1),d(11)):d(b=>b-1)},[u]),v=s.useCallback(()=>{u===11?(c(b=>b+1),d(0)):d(b=>b+1)},[u]),x=b=>`${l}-${String(u+1).padStart(2,"0")}-${String(b).padStart(2,"0")}`,_=b=>g.getFullYear()===l&&g.getMonth()===u&&g.getDate()===b;return t.jsxs("div",{children:[t.jsxs("div",{className:"calendar-nav",children:[t.jsx("button",{type:"button",className:"calendar-nav__button",onClick:f,"aria-label":o("calendar.prevMonth","\uC774\uC804 \uB2EC"),children:t.jsx(Oe,{icon:"chevron-left",label:"",className:"",svgClassName:"calendar-nav__button-icon",size:18})}),t.jsx("span",{className:"calendar-nav__title h5",children:o("calendar.yearMonth",{year:l,month:u+1})}),t.jsx("button",{type:"button",className:"calendar-nav__button",onClick:v,"aria-label":o("calendar.nextMonth","\uB2E4\uC74C \uB2EC"),children:t.jsx(Oe,{icon:"chevron-right",label:"",className:"",svgClassName:"calendar-nav__button-icon",size:18})}),t.jsxs("div",{className:"calendar-nav__legend",children:[t.jsx("span",{className:"calendar-nav__legend-dot calendar-nav__legend-dot--main"}),t.jsx("span",{className:"caption-1",children:o("calendar.legend.visited","\uBC29\uBB38")}),t.jsx("span",{className:"calendar-nav__legend-dot calendar-nav__legend-dot--sub"}),t.jsx("span",{className:"caption-1",children:o("calendar.legend.scheduled","\uC608\uC57D")}),t.jsx("span",{className:"calendar-nav__legend-dot calendar-nav__legend-dot--disabled"}),t.jsx("span",{className:"caption-1",children:o("calendar.legend.noVisit","\uBBF8\uBC29\uBB38")})]})]}),t.jsxs("div",{className:"calendar-grid",children:[i.map(b=>t.jsx("div",{className:"calendar-day-header body-3",children:b},b)),C.map((b,N)=>{if(b===null)return t.jsx("div",{className:"calendar-cell empty"},`empty-${N}`);const w=b,k=x(w),j=y[k]??[],A=p===k;return t.jsxs("div",{className:`calendar-cell${_(w)?" today":""}${A?" drag-over":""}${r?" calendar-cell--clickable":""}`,role:r?"button":void 0,tabIndex:r?0:void 0,"aria-label":r?o("calendar.addOnDate",{date:k}):void 0,onClick:r?()=>r(k):void 0,onKeyDown:r?S=>{S.target===S.currentTarget&&(S.key!=="Enter"&&S.key!==" "||(S.preventDefault(),r(k)))}:void 0,onDragOver:a?S=>{S.preventDefault(),h(k)}:void 0,onDragLeave:a?S=>{S.currentTarget.contains(S.relatedTarget)||h(null)}:void 0,onDrop:a?S=>{S.preventDefault(),m.current!=null&&(a(m.current,k),m.current=null),h(null)}:void 0,children:[t.jsx("div",{className:"calendar-cell__number body-3",children:w}),t.jsx("div",{className:"calendar-cell__badges",children:j.map((S,q)=>t.jsxs("div",{draggable:!!a,className:`calendar-visit-badge${S.status==="noVisit"?" calendar-visit-badge--no-visit":S.status==="scheduled"?" calendar-visit-badge--scheduled":""}${n?" calendar-visit-badge--clickable":""}${a?" calendar-visit-badge--draggable":""}`,onDragStart:a?W=>{m.current=S.id,W.dataTransfer.effectAllowed="move"}:void 0,onDragEnd:a?()=>{m.current=null,h(null)}:void 0,onClick:n?W=>{W.stopPropagation(),n(S)}:void 0,...rl(n?()=>n(S):void 0),"aria-label":[S.time?vs(S.time,o):null,S.customer,o(S.status==="noVisit"?"calendar.legend.noVisit":S.status==="scheduled"?"calendar.legend.scheduled":"calendar.legend.visited")].filter(Boolean).join(" "),children:[S.time&&t.jsx("span",{className:"calendar-visit-badge__time body-3",children:vs(S.time,o)}),t.jsx("span",{className:"calendar-visit-badge__name body-3",children:S.customer}),S.status==="noVisit"&&t.jsx("span",{className:"calendar-visit-badge__no-visit caption-1",children:o("calendar.legend.noVisit","\uBBF8\uBC29\uBB38")})]},S.id??q))})]},w)})]})]})}const F4={page:"h3",pagePopup:"h4",popup:"h5"};function On({type:e="page",title:n,headingLevel:a,icon:r,action:o,disc:i,children:l,className:c,style:u}){const d=F4[e],p=n||i,h=a?`h${a}`:"div";return t.jsxs("div",{className:ye("section",`section--${e}`,c),style:u,children:[p&&t.jsxs("div",{className:"section__header",children:[t.jsxs("div",{className:"section__title-row",children:[r&&t.jsx(Oe,{icon:r,label:typeof n=="string"?n:void 0,className:"section__icon"}),t.jsxs("div",{className:"section__title-group",children:[n&&t.jsx(h,{className:`section__title ${d}`,children:n}),i&&t.jsx("div",{className:"section__disc body-3",children:i})]})]}),o&&t.jsx("div",{className:"section__action",children:o})]}),l]})}function ol({icon:e,label:n,tooltip:a,wrapperStyle:r,color:o,bgColor:i,useHover:l=!0,iconSize:c="medium"}){const u=c==="small",d=ye("category-icon",u?"category-icon--small":""),p=u?16:20,h=s.useRef(null),[m,g]=s.useState(!1),y=s.useMemo(()=>{const w=r&&typeof r=="object"?{...r}:{};return!o&&!i?w:{...w,...o?{color:o,"--t-item-fg":o}:{},...i?{"--t-item-bg":i}:{}}},[r,o,i]),C=a||n,[f,v]=s.useState(null);s.useLayoutEffect(()=>{m&&v(h.current?.getBoundingClientRect()??null)},[m]),s.useEffect(()=>{if(!l&&m)try{g(!1)}catch{}},[l,m]),s.useEffect(()=>{if(!m)return;const w=k=>{const j=h.current;if(!j)return;const A=k.target;A&&!j.contains(A)&&g(!1)};return document.addEventListener("pointerdown",w,!0),()=>document.removeEventListener("pointerdown",w,!0)},[m]);const x=s.useCallback(()=>{l&&g(!0)},[l]),_=s.useCallback(()=>{l&&g(!1)},[l]),b=s.useCallback(()=>g(!1),[]),N=s.useCallback(w=>{if(w.key==="Escape"){g(!1);return}(w.key==="Enter"||w.key===" ")&&(w.preventDefault(),g(k=>!k))},[]);return t.jsxs("span",{ref:h,className:"category-icon__wrap",onPointerEnter:x,onPointerLeave:_,onFocus:x,onBlur:_,onKeyDown:N,role:"button",tabIndex:0,"aria-label":typeof C=="string"?C:void 0,"aria-haspopup":!!C,"aria-expanded":m,"data-tooltip-ignore":!0,children:[t.jsx(Oe,{icon:e,label:n,className:d,imgClassName:"category-icon__image",maskClassName:"category-icon__mask",svgClassName:"category-icon__svg",wrapperStyle:y,size:p}),m&&C&&t.jsx(gn,{anchorRect:f,text:typeof C=="string"?C:void 0,offset:8,onClose:b,className:"category-icon__tooltip",ariaLabel:typeof C=="string"?C:void 0})]})}function O4(e,n){if(!e)return{previewCodes:[],previewBucket:null};const a=e,r=l=>l.map(c=>c?.contextCode||c?.context_code).filter(Boolean).map(String);if(n==="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(n==="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(n==="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(n==="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 o=a.sentences||a.items||[],i=r(Array.isArray(o)?o:[]);return i.length===0&&(a.contextCode||a.context_code)&&i.push(String(a.contextCode||a.context_code)),{previewCodes:i,previewBucket:null}}function H4(e,n){const[a,r]=s.useState(!1),[o,i]=s.useState(-1),[l,c]=s.useState({key:"",urls:[]}),u=s.useRef(null),d=s.useRef(!1),p=s.useRef(null),[h,m]=s.useState(!1),g=s.useRef([]),{previewCodes:y,previewBucket:C}=O4(e,n),f=`${y.join(",")}|${C??""}`,v=s.useMemo(()=>l.key===f?l.urls:[],[l,f]);s.useEffect(()=>{if(!y.length)return;let _=!1;return(async()=>{const b=[],N=[];for(const w of y)try{const k=ts(w,C);if(!k){b.push("");continue}let j=null;try{j=await ns(k)}catch{}if(!j)try{const A=await as(k);A&&(j=URL.createObjectURL(A),N.push(j))}catch{}b.push(j??"")}catch{b.push("")}_?N.forEach(w=>{try{URL.revokeObjectURL(w)}catch{}}):(g.current.forEach(w=>{try{URL.revokeObjectURL(w)}catch{}}),g.current=N,c({key:f,urls:b}))})(),()=>{_=!0}},[y.join(","),C]),s.useEffect(()=>()=>{g.current.forEach(_=>{try{URL.revokeObjectURL(_)}catch{}}),g.current=[]},[]);const x=s.useCallback(async _=>{if(_.stopPropagation(),_.preventDefault(),d.current){d.current=!1;try{u.current?.pause()}catch{}r(!1),i(-1);return}if(v.filter(Boolean).length){d.current=!0,r(!0);for(let b=0;b<v.length&&d.current;b++){const N=v[b];if(N){i(b);try{await new Promise((w,k)=>{const j=new Audio(N);u.current=j,j.onended=()=>w(),j.onerror=()=>k(),j.play().catch(k)})}catch{break}}}d.current=!1,r(!1),i(-1)}},[v]);return s.useEffect(()=>()=>{d.current=!1;try{u.current?.pause()}catch{}u.current=null},[]),{playing:a,playingIndex:o,previewUrls:v,previewHover:h,setPreviewHover:m,previewBtnRef:p,handlePreview:x}}const V4=e=>{if(!e)return[];const n=typeof e.context=="string"&&e.context.trim()||typeof e.sentence=="string"&&e.sentence.trim()||typeof e.text=="string"&&e.text.trim()||"";if(n)return[String(n)];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 o=r;return o.sentence||o.text||o.context||o.question||o.title||""}return""}).filter(r=>typeof r=="string"&&r.trim().length>0).map(r=>r.trim()):[]};function Nr(e){const{index:n,type:a,trainingData:r,ariaLabel:o,depth:i,renderPopup:l,completed:c,completedIds:u,selectedIds:d,tooltipText:p,useDescriptionTooltip:h=!1,onRemove:m,hideCheckBadge:g=!1,showTypeLabel:y=!1,onComplete:C,onSelect:f,onMore:v,countLabelOverride:x,size:_="square"}=e||{},{t:b}=he.useTranslation(),[N,w]=s.useState(!1),k=s.useRef(null),[j,A]=s.useState(!1);s.useEffect(()=>{k.current?.matches(":hover")&&A(!0)},[]);const{playing:S,playingIndex:q,previewUrls:W,previewHover:B,setPreviewHover:F,previewBtnRef:E,handlePreview:te}=H4(r,a?.key),$=s.useCallback(()=>{f?f():w(!0)},[f]),H=s.useCallback(()=>w(!1),[]),Q=s.useCallback(()=>A(!0),[]),ee=s.useCallback(()=>A(!1),[]),Y=s.useCallback(()=>F(!0),[F]),O=s.useCallback(()=>F(!1),[F]),[T,M]=s.useState(null);s.useLayoutEffect(()=>{B&&M(E.current?.getBoundingClientRect()??null)},[B,E]);const[V,I]=s.useState(null);s.useLayoutEffect(()=>{j&&!N&&h&&I(k.current?.getBoundingClientRect()??null)},[j,N,h]);const P=s.useCallback(ge=>{ge.target===ge.currentTarget&&(ge.key==="Enter"||ge.key===" ")&&(ge.preventDefault(),$())},[$]),z=r||null,ae=s.useMemo(()=>{if(!h)return null;const ge=p?(Array.isArray(p)?p:[p]).filter(Boolean):null,Ve=ge&&ge.length>0?ge:V4(z);return Ve&&Ve.length>0?Ve:null},[h,p,z]),ne=s.useCallback(ge=>{ge.stopPropagation(),m?.()},[m]),re=s.useCallback(ge=>ge.stopPropagation(),[]),pe=s.useCallback(ge=>{typeof C=="function"&&C(ge)},[C]),_e=c||(u&&r?.id!=null?u.has(String(r.id)):!1),Z=!_e&&(d!=null&&r?.id!=null?d.has(String(r.id)):!1);ri("speechear.popup.close",H);const ie=xs(),J=`${a?.label||""} ${n+1}`,be=z?.title||z?.name||J;let xe=a?.icon,Ce,fe="",ve="";try{const ge=z?.category_0||z?.category_main_code||z?.category_main,Ve=z?.category_1||z?.category_sub_code||z?.category_sub,Be=ie.find(Ee=>Ee.key===ge);Be?.icon&&(xe=Be.icon),!Ce&&Be?.color&&(Ce={"--t-item-fg":Be.color}),!Ce&&z?.iconColor&&(Ce={"--t-item-fg":z.iconColor}),fe=Be?b(`topic.${Be.key}`,{defaultValue:Be.label||""}):"";try{const Ee=Be?.subs?.find(Ne=>Ne.key===Ve);ve=Ee?b(`topic.sub.${Ee.key}`,{defaultValue:Ee.label||""}):""}catch{}}catch{}const Se=ve?`${fe} / ${ve}`:fe||a?.label||be,X=ge=>b("training.countQuestions",{n:ge}),ue=ge=>b("training.countSentences",{n:ge});let ke="";try{if(z)if(a?.key==="LISTEN_IN_NOISE"){let ge=0;Array.isArray(z.items)&&z.items.length>0?ge=z.items.length:Array.isArray(z.sentences)&&z.sentences.length>0?ge=z.sentences.length:z.sentences&&(ge=1),ke=ue(ge)}else if(a?.key==="SHORT_STORY"){let ge=1;Array.isArray(r?.items)?ge=r.items.length:Array.isArray(r?.raw&&r.raw?.items)?ge=r.raw.items.length:Array.isArray(z?.questions)?ge=z.questions.length:Array.isArray(z?.sentences)&&(ge=z.sentences.length),ke=X(ge)}else if(a?.key==="LONG_STORY"){let ge=1;if(Array.isArray(z.items)&&z.items.length>0){const Ve=z.items.reduce((Be,Ee)=>{const Ne=Ee.questionItems;return Array.isArray(Ne)?Be+Ne.length:Array.isArray(Ee.questions)?Be+Ee.questions.length:Be},0);ge=Ve>0?Ve:z.items.length}else Array.isArray(z.questions)&&z.questions.length>0?ge=z.questions.length:Array.isArray(z.sentences)&&z.sentences.length>0&&(ge=z.sentences.length);ke=X(ge)}else if(a?.key==="ORDERING_SENTENCE"){let ge=1;Array.isArray(z.items)&&z.items.length>0?ge=z.items.length:Array.isArray(z.sentences)&&z.sentences.length>0&&(ge=z.sentences.length),ke=ue(ge)}else Array.isArray(z.items)&&(ke=z.items.length>0?X(z.items.length):"")}catch{}const Me=_==="row",Fe=_==="list"||Me,De=_==="compact",Pe=_==="small",Le=Pe&&a?.key?_0().find(ge=>ge.key===a.key):void 0,Je=Le?_s[Le.key]:void 0,ze=Le?Je?b(`trainingType.${Je}.title`,{defaultValue:Le.label}):Le.label??"":"",He=!!y&&!!a?.label&&a.label!==String(be)||Pe&&!!ze&&ze!==String(be);return t.jsxs(t.Fragment,{children:[t.jsxs("div",{ref:k,className:`training-block-button${Fe?" training-block-button--list":""}${Me?" training-block-button--row":""}${De?" training-block-button--compact":""}${Pe?" training-block-button--small":""}${_e?" training-block-button--completed":""}${Z?" training-block-button--selected":""}${He&&!Pe?" training-block-button--withType":""}${Pe&&!He?" training-block-button--no-type-label":""}`,onClick:$,onPointerEnter:Q,onPointerLeave:ee,role:"button",tabIndex:0,onKeyDown:P,"aria-label":typeof o=="string"?o:typeof be=="string"?be:void 0,children:[t.jsxs("div",{className:"training-block-button__left",children:[y&&a?.label&&a.label!==String(be)&&t.jsx("span",{className:"training-block-button__type-label caption-1",children:a.label}),Pe&&ze&&ze!==String(be)&&t.jsx("span",{className:"training-block-button__type-label caption-2",children:ze}),t.jsx(ol,{icon:xe,label:be,tooltip:Se,wrapperStyle:Ce,iconSize:Pe||De?"small":"medium"}),!g&&(_e||Z)&&!(m&&j)&&t.jsx(it,{type:"dot",icon:"check",position:"top-left",size:"medium","aria-label":_e?b("training.completed","\uD6C8\uB828 \uC644\uB8CC"):b("training.selected","\uC120\uD0DD\uB428")}),m&&j&&t.jsx(it,{type:"dot",icon:"remove",position:"top-left",size:"medium","aria-label":b("common.remove","\uC81C\uAC70"),onClick:ne}),t.jsx("div",{className:`training-block-button__title ${De?"body-3":Pe?"body-3b":"h3"}`,children:String(be)}),t.jsxs("div",{className:"training-block-button__description",children:[(()=>{const ge=x!==void 0?x:ke;return ge?t.jsx("div",{className:`training-block-button__count ${Pe?"caption-2":"caption-1"}`,children:ge}):null})(),t.jsx("div",{className:"training-block-button__chevron",children:t.jsx(Oe,{icon:"chevron-right",label:b("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:Pe?12:20})})]}),(Fe&&!Me||Pe)&&W.length>0&&t.jsx("div",{ref:E,className:"training-block-button__preview","data-tooltip-ignore":!0,onClick:re,onPointerEnter:Y,onPointerLeave:O,children:t.jsx(oe,{htmlType:"button",size:Pe?28:32,type:"dot",icon:S?"pause":"play",variant:Pe?"transparent-lightGray":"default",useBorder:!1,selected:S,ariaLabel:S?b("training.stop","\uC815\uC9C0"):b("training.preview","\uBBF8\uB9AC \uB4E3\uAE30"),onClick:te})})]}),v&&t.jsx("div",{className:"training-block-button__more","data-tooltip-ignore":!0,onClick:ge=>{ge.stopPropagation(),v(ge)},children:t.jsx(oe,{htmlType:"button",size:40,type:"dot",icon:"more-horizontal",variant:"transparent-lightGray",useBorder:!1,ariaLabel:b("common.more","\uB354\uBCF4\uAE30")})})]}),B&&t.jsx(gn,{anchorRect:T,text:S?b("training.stop","\uC815\uC9C0"):b("training.preview","\uBBF8\uB9AC \uB4E3\uAE30"),offset:8,onClose:O}),j&&!N&&h&&(ae?t.jsx(Sn,{anchorRect:V,items:ae,activeIndex:q,onClose:ee}):z?.subTitle?t.jsx(gn,{anchorRect:V,text:z.subTitle,offset:8,onClose:ee}):null),N&&l&&l({trainingData:z,typeKey:a?.key??"",onClose:H,onComplete:pe,popupTitle:String(be),popupSubTitle:a?.subTitle,depth:i!=null?String(i):void 0,popupIcon:xe,popupIconTooltip:String(Se),popupWrapperStyle:Ce})]})}const Na=20;function z4(e){const{t:n}=he.useTranslation(),{type:a,trainingDatas:r,depth:o,renderPopup:i,completedIds:l,selectedIds:c,onItemComplete:u,size:d,useDescriptionTooltip:p,onRemove:h,onMore:m,sectionType:g="page"}=e||{},[,y]=s.useState(0),C=typeof r<"u"?Array.isArray(r)?r:[]:[],f=C.length,[v,x]=s.useState(Math.min(f,Na)),_=s.useMemo(()=>Array.isArray(o)?[...o,a?.label].filter(Boolean).join(" \xB7 "):[o||"",a?.label].filter(Boolean).join(" \xB7 "),[o,a?.label]);s.useEffect(()=>{x(Math.min(f,Na))},[f]),ri("speechear.data.updated",()=>y(k=>k+1));const b=s.useRef(null),N=s.useRef(null);function w(){const k=document.activeElement;N.current=k&&k.closest?.(".training-block__more")?v:null,x(j=>Math.min(f,j+Na))}return s.useEffect(()=>{const k=N.current;if(k==null)return;N.current=null;const j=document.activeElement;j&&j!==document.body||b.current?.querySelectorAll(".training-block-button")[k]?.focus()},[v]),t.jsxs(On,{type:g,title:a?.label,icon:a?.icon,disc:a?.desc,className:"training-block",children:[t.jsx("div",{className:"training-list",ref:b,children:(C||[]).slice(0,v).map((k,j)=>{const A=k;return t.jsx(Nr,{index:j,type:a,trainingData:A,depth:_,renderPopup:i,completedIds:l,selectedIds:c,size:d,useDescriptionTooltip:p,onRemove:typeof h=="function"&&c!=null&&A?.id!=null&&c.has(String(A.id))?()=>h(A):void 0,onComplete:typeof u=="function"&&A?.id!=null?()=>u(String(A.id)):void 0,onMore:typeof m=="function"?S=>m(A,S):void 0},A?.id!=null?`${a?.key||"t"}-${String(A.id)}`:`${a?.key||"t"}-${j}`)})}),f>Na&&v<f&&t.jsx("div",{className:"training-block__more",children:t.jsx(oe,{htmlType:"button",size:48,type:"bar",icon:"plus",onClick:w,ariaLabel:n("common.loadMore","\uB354\uBCF4\uAE30"),label:n("common.loadMore","\uB354\uBCF4\uAE30"),variant:"main"})})]})}function Br(e){const n=s.useRef(null),[a,r]=s.useState(!!e),[o,i]=s.useState(!1);s.useEffect(()=>{i(!1);const u=n.current;r(!!e&&!(u?.complete&&u.naturalWidth>0))},[e]);const l=s.useCallback(()=>r(!1),[]),c=s.useCallback(()=>{r(!1),i(!0)},[]);return{imgRef:n,loading:a,failed:o,hasImage:!!e&&!o,onLoad:l,onError:c}}let bn=null;function W4(e){if(bn&&bn!==e)try{bn()}catch{}return bn=e,()=>{bn===e&&(bn=null)}}function q4(e){if(bn===e){bn=null;try{e()}catch{}}}var U4='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 G4=U4,Sr=s.forwardRef(function({item:e,disabled:n=!1,onPlayDone:a,selectable:r=!1,selected:o=!1,onSelect:i,flipDelay:l=0,hideLabel:c=!1,hideAudio:u=!1,orderRank:d=null},p){const{t:h}=he.useTranslation(),m=e.word||e.title||"",g=n||!m,y=e.audio??e.sound??e.audioKey,C=e.subLabel||e.pronunciation||"",f=e.colloquialLabel||"",[v,x]=s.useState({label:m,subLabel:C,colloquialLabel:f,homonum:e.homonum});m&&(v.label!==m||v.subLabel!==C||v.colloquialLabel!==f||v.homonum!==e.homonum)&&x({label:m,subLabel:C,colloquialLabel:f,homonum:e.homonum});const _=s.useRef(null),b=Xt("(max-width: 767px)"),[N,w]=s.useState(!1),k=`${typeof y=="string"?y:y?.src??""}\0${m}`,[j,A]=s.useState({for:"",url:""}),S=j.for===k?j.url:"",q=Rn()?.(v.label,v.homonum)??e.image??"",{imgRef:W,loading:B,hasImage:F,onLoad:E,onError:te}=Br(q);s.useEffect(()=>{let V=!1;return(async()=>{if(y){if(typeof y=="string"){if(y.startsWith("http")||y.includes("/")){A({for:k,url:y});return}}else if(typeof y=="object"&&!Array.isArray(y)){const P=y.src;if(P){A({for:k,url:P});return}}}const I=Za();if(I&&m)try{const P=await Promise.resolve(I(m));!V&&P&&A({for:k,url:P})}catch{}})(),()=>{V=!0}},[y,m,k]);const $=s.useRef(!0),H=s.useRef(null);s.useEffect(()=>($.current=!0,()=>{$.current=!1,H.current&&q4(H.current),H.current=null;try{_.current?.pause()}catch{}_.current=null}),[]);const Q=s.useCallback(()=>new Promise(V=>{if(typeof window<"u"&&window.speechSynthesis&&m){w(!0),window.speechSynthesis.cancel();const I=new SpeechSynthesisUtterance(m);I.lang="ko-KR",I.onend=()=>{w(!1);try{a?.()}catch{}V()},I.onerror=()=>{w(!1),V()},window.speechSynthesis.speak(I)}else V()}),[m,a]),ee=s.useCallback(V=>new Promise(I=>{let P=!1;const z=()=>{P||(P=!0,w(!1),I(!1))};try{const ae=new Audio(V);_.current=ae,ae.onended=()=>{if(!P){P=!0,w(!1);try{a?.()}catch{}I(!0)}},ae.onerror=z,ae.play().catch(z)}catch{z()}}),[a]),Y=s.useCallback(async()=>{if(n||!$.current)return;const V=()=>{H.current===V&&(H.current=null);try{_.current?.pause()}catch{}try{window.speechSynthesis?.cancel()}catch{}w(!1)},I=W4(V);H.current=V;try{window.speechSynthesis?.cancel()}catch{}try{if(S&&(w(!0),await ee(S)))return;const P=Fm();if(P&&m)try{const z=await Promise.resolve(P(m));if(!$.current||H.current!==V||z&&(w(!0),await ee(z)))return}catch{}if(!$.current||H.current!==V)return;await Q()}finally{I(),H.current===V&&(H.current=null)}},[n,S,m,ee,Q]);s.useImperativeHandle(p,()=>({play:()=>Y()}),[Y]);const O=V=>V.stopPropagation(),T=s.useCallback(V=>{if(V.stopPropagation(),!n){if(N){try{_.current?.pause()}catch{}try{window.speechSynthesis?.cancel()}catch{}w(!1);return}Y()}},[n,N,Y]),M=ye("training-word-card",n?"training-word-card--disabled":"",g?"training-word-card--flipped":"",r?"training-word-card--selectable":"",o?"training-word-card--selected":"");return t.jsx("div",{className:M,onClick:r&&!n?i:void 0,role:r?"button":void 0,"aria-pressed":r?o:void 0,tabIndex:r&&!n?0:void 0,"aria-disabled":r&&n?!0:void 0,onKeyDown:r&&!n?V=>{V.target===V.currentTarget&&(V.key==="Enter"||V.key===" "||V.key==="Spacebar")&&(V.preventDefault(),i?.())}:void 0,children:t.jsxs("div",{className:"training-word-card__flipper",style:{transitionDelay:g?"0ms":`${l}ms`},children:[t.jsxs("div",{className:"training-word-card__front",children:[o&&t.jsx("div",{className:"training-word-card__selected-badge",onClick:O,children:t.jsx(it,{type:"dot",size:40,position:"inline",animate:!0,icon:d!=null?void 0:"check",number:d??void 0,"aria-label":d!=null?h("training.nthSelected",{n:d}):h("training.selected","\uC120\uD0DD\uB428")})}),t.jsx("div",{className:"training-word-card__image-wrap",children:F?t.jsxs(t.Fragment,{children:[B&&t.jsx("div",{className:"training-word-card__spinner"}),t.jsx("img",{ref:W,className:"training-word-card__image",src:q,alt:v.label||h("common.image","\uC774\uBBF8\uC9C0"),style:{opacity:B?0:1},onLoad:E,onError:te})]}):t.jsx("div",{className:"training-word-card__placeholder"})}),!c&&t.jsxs("div",{className:"training-word-card__body",children:[t.jsx("div",{className:"training-word-card__word",children:v.label}),v.subLabel&&t.jsxs("div",{className:"training-word-card__pronunciation",children:["[",v.subLabel,"]"]}),v.colloquialLabel&&t.jsxs("div",{className:"training-word-card__colloquial caption-1",children:["[",v.colloquialLabel,"]"]})]}),!u&&t.jsx("div",{className:"training-word-card__bottom",onClick:r?O:void 0,children:t.jsx(oe,{htmlType:"button",size:b?40:48,type:b?"dot":"bar",icon:N?"pause":"play",label:b?void 0:h("training.playSound","\uC18C\uB9AC \uB4E3\uAE30"),selected:N,onClick:T,disabled:n,ariaLabel:h("training.playSound","\uC18C\uB9AC \uB4E3\uAE30")})})]}),t.jsx("div",{className:"training-word-card__back","aria-hidden":"true",children:t.jsx("img",{src:G4,className:"training-word-card__disabled-symbol",alt:"",draggable:!1})})]})})}),K4=260;function yn(e){const{t:n}=he.useTranslation(),{title:a,subtitle:r,headerActions:o,children:i,buttons:l,footer:c,footerClassName:u="",onClose:d,closeDisabled:p=!1,beforeClose:h,closeOnBackdrop:m=!0,className:g="",ariaLabel:y,useTitle:C=!0,inline:f=!1,size:v,layer:x="modal",height:_,fillBody:b=!1,resetScrollKey:N}=e||{},[w,k]=s.useState(!1),j=s.useRef(!1),A=s.useRef(null),S=s.useId(),q=s.useRef(null);s.useEffect(()=>{},[f,a,y,g]),s.useEffect(()=>{N!==void 0&&q.current&&(q.current.scrollTop=0)},[N]);const[W,B]=s.useState(!1);s.useEffect(()=>{const T=q.current;if(!T)return;const M=()=>B(T.scrollHeight>T.clientHeight+1);if(M(),typeof ResizeObserver>"u")return;const V=new ResizeObserver(M);V.observe(T);const I=T.firstElementChild;return I&&V.observe(I),()=>V.disconnect()},[i,N]),s.useEffect(()=>{if(!f)return Pi()},[f]),s.useEffect(()=>{if(f)return;const T=document.activeElement,M=A.current;return M&&!M.contains(document.activeElement)&&(M.querySelector(Nn)??M).focus(),()=>{const V=document.activeElement;(!V||V===document.body||M&&M.contains(V))&&T?.focus?.()}},[f]),sr(A,!f);const F=s.useCallback(T=>{j.current||(j.current=!0,k(!0),setTimeout(()=>{try{T&&T()}catch{}},K4))},[]),E=s.useCallback(()=>{p||h&&h()===!1||F(d)},[F,d,p,h]),te=s.useRef(E);s.useEffect(()=>{te.current=E});const $=!f&&!!d;s.useEffect(()=>{if($)return Bn(()=>te.current())},[$]);const H=$&&m,Q=s.useRef(!1),ee=T=>{Q.current=T.target===T.currentTarget},Y=T=>{const M=Q.current;Q.current=!1,M&&T.target===T.currentTarget&&E()},O=t.jsx("div",{className:`popup ${f?"popup--inline":""} ${x==="belowPagePopup"?"popup--below-page-popup":""} ${w?"popup--closing":""} ${g}`,onPointerDown:H?ee:void 0,onClick:H?Y:void 0,onMouseDown:f?void 0:T=>{T.target===T.currentTarget&&T.preventDefault()},children:t.jsxs("div",{ref:A,className:`popup-panel${v?` popup-panel--${v}`:""}${_!=null?" popup-panel--has-height":""}${b?" popup-panel--fill-body":""}`,style:_!=null?{"--popup-height":typeof _=="number"?`${_}px`:_}:void 0,tabIndex:-1,role:f?void 0:"dialog","aria-modal":f?void 0:!0,"aria-labelledby":!f&&a?S:void 0,"aria-label":!f&&!a&&y?y:void 0,children:[!C&&(o||d)?t.jsxs("div",{className:"popup-close-float",children:[o,d&&t.jsx(oe,{htmlType:"button",size:40,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,onClick:E,disabled:p,ariaLabel:n("common.close","\uB2EB\uAE30")})]}):a||o||d?t.jsxs("div",{className:`popup-header${r?" popup-header--with-subtitle":""}`,children:[t.jsxs("div",{className:"popup-header-main",children:[t.jsx("span",{id:S,className:"popup-title popup-title--left h2",children:a}),r&&t.jsx("span",{className:"popup-subtitle body-3",children:r})]}),t.jsxs("div",{className:"popup-header-actions",children:[o,d&&t.jsx(oe,{htmlType:"button",size:40,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,onClick:E,disabled:p,ariaLabel:n("common.close","\uB2EB\uAE30")})]})]}):null,t.jsx("div",{className:"popup-content",ref:q,tabIndex:W?0:void 0,children:t.jsx("div",{className:"popup-content__inner",children:typeof i=="function"?i({animateThen:F,closeWithAnimation:E}):i})}),l?.length?t.jsx("div",{className:"popup-footer popup-footer--buttons",children:l.map((T,M)=>t.jsx(oe,{htmlType:"button",size:48,variant:T.variant??"default",label:T.label,disabled:T.disabled,onClick:()=>T.onClick?.({animateThen:F,closeWithAnimation:E})},M))}):c?t.jsx("div",{className:`popup-footer${u?` ${u}`:""}`,children:typeof c=="function"?c({animateThen:F,closeWithAnimation:E}):c}):null]})});return f||typeof document>"u"?O:It.createPortal(O,document.body)}function Ba(e){return String(e)}const sl=["o","triangle","x"];function il(e,n){return e===n?null:n}const ll={o:"circle",triangle:"triangle",x:"x"},cl={o:"main",triangle:"warn",x:"danger"};function Y4(e){let n=0,a=0,r=0;for(const i of Object.values(e))i==="o"?n++:i==="triangle"?a++:i==="x"&&r++;const o=n+a+r;return{marked:o,o:n,triangle:a,x:r,rate:o===0?null:(n+a*.5)/o}}function Dr(e){const n={};for(const[a,r]of Object.entries(e))(r==="o"||r==="triangle"||r==="x")&&(n[a]=r);return n}function ul(e){const n=[];let a=0;for(const r of e)n.push(a),a+=r;return n}function Z4(e,n){return!n&&e>0}const Hn={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 X4(e="landscape"){const{printSize:n,printW:a,printH:r}=Hn[e],o=document.createElement("style");o.textContent=`@page { size: ${n}; margin: 0; } .word-table { width: ${a} !important; height: ${r} !important; }`,document.head.appendChild(o);const i=()=>{document.head.removeChild(o),window.removeEventListener("afterprint",i)};window.addEventListener("afterprint",i),window.print()}function dl(e,n){if(e.length===0)return[[]];const a=Math.max(1,Math.floor(n)),r=[];for(let o=0;o<e.length;o+=a)r.push(e.slice(o,o+a));return r}const J4={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 Q4(e,n){const a=J4[e][n];if(a)return a;const r=Math.max(1,Math.ceil(n)),o=Math.max(1,Math.ceil(Math.sqrt(r*.707)));let i,l;return e==="landscape"?(l=o,i=Math.ceil(r/l)):(i=o,l=Math.ceil(r/i)),(e==="landscape"?i<l:l<i)&&([i,l]=[l,i]),{cols:i,rows:l}}const eb={\uD45C\uC2DC:"word-table-block__content--cut-show",\uC810\uC120:"",\uCF54\uB108:"word-table-block__content--cut-corner",\uBBF8\uD45C\uC2DC:""},pl={\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"},hl={\uACE0\uC720:"\uACE0\uC720\uC5B4",\uD55C\uC790:"\uD55C\uC790\uC5B4",\uC678\uB798:"\uC678\uB798\uC5B4",\uD63C\uC885:"\uD63C\uC885\uC5B4"};function jr(e,n){return e?e.split("/").map(a=>n[a]??a).join("/"):""}function ml(e,n,a,r){if(r!=="\uC810\uC120")return{};const o=e%n,i=Math.floor(e/n),l=o<n-1,c=i<a-1;if(!l&&!c)return{};const u="#ddd",d=g=>`repeating-linear-gradient(to ${g}, ${u} 0, ${u} 5px, transparent 5px, transparent 10px)`,p=[],h=[],m=[];return l&&(p.push(d("bottom")),h.push("1px 100%"),m.push("right center")),c&&(p.push(d("right")),h.push("100% 1px"),m.push("center bottom")),{backgroundImage:p.join(", "),backgroundSize:h.join(", "),backgroundPosition:m.join(", "),backgroundRepeat:"no-repeat",printColorAdjust:"exact",WebkitPrintColorAdjust:"exact"}}const tb=280,nb=240,ab=280,rb=400,ob=120,sb=280;function fl(e,n){const a=s.useRef(null),[r,o]=s.useState(1),[i,l]=s.useState(0),c=s.useCallback((u,d)=>{const p=u/e,h=n?d/n:1/0,m=Math.min(1,p,h);o(m),l(Math.max(0,(u-e*m)/2))},[e,n]);return s.useEffect(()=>{const u=a.current;if(!u)return;const d=n?u.parentElement??u:u;if(c(d.clientWidth,d.clientHeight),typeof ResizeObserver>"u")return;const p=new ResizeObserver(([h])=>c(h.contentRect.width,h.contentRect.height));return p.observe(d),()=>p.disconnect()},[c,n]),{scalerRef:a,scale:r,offset:i}}let cn=null;function Cl({label:e,subLabel:n,colloquialLabel:a,homonum:r,showWord:o=!0,showImage:i=!0,showPronunciation:l=!0,showColloquial:c=!0,buttonSize:u=40,wordInfo:d}){const{t:p}=he.useTranslation(),h=s.useRef(null),m=s.useRef(null),g=s.useRef(null),[y,C]=s.useState(1),[f,v]=s.useState(!1),[x,_]=s.useState({for:"",url:""}),[b,N]=s.useState(null),w=n&&n.length>0?n:Hm()?.(e,r)??"",k=Rn()?.(e,r)??"",{imgRef:j,loading:A,failed:S,onLoad:q,onError:W}=Br(k),B=s.useCallback(()=>N(m.current?.getBoundingClientRect()??null),[]),F=s.useCallback(()=>N(null),[]),E=s.useMemo(()=>{if(!d)return null;const O=[];return d.grade&&O.push(p("wordTable.info.grade",{n:d.grade,defaultValue:"\uB09C\uC774\uB3C4: {{n}}\uB4F1\uAE09"})),d.syllables&&O.push(p("wordTable.info.syllables",{n:d.syllables,defaultValue:"\uC74C\uC808 \uC218: {{n}}\uC74C\uC808"})),d.pos&&O.push(p("wordTable.info.pos",{v:jr(d.pos,ib(p)),defaultValue:"\uD488\uC0AC: {{v}}"})),d.wordType&&O.push(p("wordTable.info.wordType",{v:jr(d.wordType,lb(p)),defaultValue:"\uC720\uD615: {{v}}"})),O.length?O:null},[d,p]),te=w||e,$=x.for===te?x.url:"";s.useEffect(()=>{const O=Za(),T=w||e;if(!O||!T)return;let M=!1;return Promise.resolve(O(T)).then(V=>{!M&&V&&_({for:T,url:V})}),()=>{M=!0}},[w,e]),s.useEffect(()=>()=>{g.current?.pause(),cn?.audio===g.current&&(cn=null)},[]);const H=s.useCallback(async O=>{if(O.stopPropagation(),f){g.current?.pause(),v(!1),cn=null;return}if($){cn?.stop(),v(!0);try{const T=new Audio($);g.current=T;const M=()=>{v(!1),cn?.audio===T&&(cn=null)};cn={audio:T,stop:()=>{T.pause(),M()}},T.onended=M,T.onerror=M,await T.play()}catch{v(!1),cn?.audio===g.current&&(cn=null)}}},[f,$]),Q=i&&!!k&&!S,ee=Q&&o?tb:Q?ab:nb,Y=Q&&o?rb:Q?sb:ob;return s.useEffect(()=>{const O=h.current;if(!O||typeof ResizeObserver>"u")return;const T=new ResizeObserver(([M])=>{const{width:V,height:I}=M.contentRect;C(Math.min(V/ee,I/Y))});return T.observe(O),()=>T.disconnect()},[ee,Y]),t.jsxs("div",{ref:h,className:"word-table-cell",children:[t.jsxs("div",{className:"word-table-cell__inner",style:{transform:`scale(${y})`},children:[Q&&t.jsxs("div",{className:"word-table-cell__image-wrap",children:[A&&t.jsx("div",{className:"word-table-cell__spinner"}),t.jsx("img",{ref:j,className:"word-table-cell__image",src:k,alt:e,draggable:!1,style:{opacity:A?0:1},onLoad:q,onError:W})]}),o&&t.jsx("span",{className:"word-table-cell__word h0",children:e}),l&&w&&t.jsxs("span",{className:"word-table-cell__sub h3",children:["[",w,"]"]}),c&&a&&t.jsxs("span",{className:"word-table-cell__colloquial h5",children:["[",a,"]"]})]}),t.jsxs("div",{className:"word-table-cell__play-button","data-audio-src":$,children:[t.jsx("span",{"data-play-state":"play",style:{display:f?"none":void 0},children:t.jsx(oe,{htmlType:"button",size:u,type:"dot",icon:"play",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:p("common.play","\uC7AC\uC0DD"),onClick:H})}),t.jsx("span",{"data-play-state":"pause",style:{display:f?void 0:"none"},children:t.jsx(oe,{htmlType:"button",size:u,type:"dot",icon:"pause",useBorder:!1,selected:!0,showTooltipInfo:p("common.pause","\uBA48\uCDA4"),onClick:H})})]}),d&&t.jsxs("div",{ref:m,className:"word-table-cell__info-button",onPointerEnter:B,onPointerLeave:F,onFocus:B,onBlur:F,children:[t.jsx(oe,{htmlType:"button",size:u,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()}),b&&E&&t.jsx(Sn,{anchorRect:b,items:E,showIndex:!1})]})]})}const gl={\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"},bl={\uACE0\uC720:"native",\uD55C\uC790:"sino",\uC678\uB798:"foreign",\uD63C\uC885:"mixed"};function ib(e){return Object.fromEntries(Object.entries(pl).map(([n,a])=>[n,gl[n]?e(`wordTable.pos.${gl[n]}`,{defaultValue:a}):a]))}function lb(e){return Object.fromEntries(Object.entries(hl).map(([n,a])=>[n,bl[n]?e(`wordSearch.filter.type.${bl[n]}`,{defaultValue:a}):a]))}function Vn({title:e,titleIcon:n,disc:a,className:r,orientation:o="landscape",contentTypes:i=["\uC774\uBBF8\uC9C0","\uB2E8\uC5B4","\uD45C\uC900 \uBC1C\uC74C"],cutLine:l="\uD45C\uC2DC",showOutline:c=!0,showDivLine:u=!0,items:d,editCells:p,count:h,activeCell:m=null,onActivateCell:g,onRemoveCell:y,onRemoveItem:C,onReorder:f,showFillerAdd:v=!1,contentRef:x,buttonSize:_=40,pageNumber:b,pageNumberPosition:N="right",fitHeight:w=!1,scoring:k=!1,marks:j,onMarkClick:A,scoreIndexOffset:S=0}){const q=s.useCallback((pe,_e)=>{A?.(S+pe,_e)},[A,S]),W=(pe,_e)=>{const Z=j?.[Ba(S+pe)]??null;return t.jsx("div",{className:ye("word-table-cell__score",Z?"word-table-cell__score--marked":""),children:sl.map(ie=>t.jsx("span",{className:ye("word-table-cell__score-slot",Z===ie?"word-table-cell__score-slot--on":""),children:t.jsx(oe,{htmlType:"button",size:_,type:"dot",icon:ll[ie],variant:Z===ie?cl[ie]:"default",selected:Z===ie,useBorder:!1,showTooltipInfo:!1,ariaLabel:B(`wordTable.scoring.${ie}`,{word:_e,defaultValue:`${_e} ${ie}`}),onClick:J=>{J.stopPropagation(),q(pe,ie)}})},ie))})},{t:B}=he.useTranslation(),F=p!==void 0,E=s.useRef(null),[te,$]=s.useState(null),{width:H,height:Q}=Hn[o],{scalerRef:ee,scale:Y,offset:O}=fl(H,w?Q:void 0),T=F?p?.length??0:d?.length??0,M=Math.max(h??T,1),{cols:V,rows:I}=Q4(o,M),P={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")},z=F?(p??[]).some(pe=>pe!==null&&pe.length>1):(d??[]).some(pe=>pe.words.length>1),ae=ye("word-table-block__content",eb[l],c&&"word-table-block__content--outline",u&&z&&"word-table-block__content--div-line"),ne={transform:`scale(${1/Y})`,transformOrigin:"center center"},re=t.jsx("div",{ref:ee,className:"word-table__scaler",style:{height:Q*Y},children:t.jsx("div",{className:ye("word-table",r),style:{width:H,height:Q,transform:`scale(${Y})`,transformOrigin:"top left",marginLeft:O},children:t.jsxs("div",{ref:x,className:ae,style:{gridTemplateColumns:`repeat(${V}, 1fr)`,gridTemplateRows:`repeat(${I}, 1fr)`},children:[F?t.jsx(t.Fragment,{children:(p??[]).map((pe,_e)=>t.jsx("div",{className:ye("word-table-block__edit-cell",pe?"word-table-block__edit-cell--filled":"word-table-block__edit-cell--empty",m===_e?"word-table-block__edit-cell--active":""),style:ml(_e,V,I,l),children:pe?t.jsxs(t.Fragment,{children:[pe.map((Z,ie)=>t.jsxs(s.Fragment,{children:[ie>0&&t.jsx("div",{className:"word-table-block__pair-divider"}),t.jsx(Cl,{label:Z.word,subLabel:Z.pronunciation,colloquialLabel:Z.colloquialPronunciation,homonum:Z.homonum,showWord:P.word,showImage:P.image,showPronunciation:P.pron,showColloquial:P.colloq,buttonSize:_})]},ie)),k&&W(_e,pe.map(Z=>Z.word).join(" / ")),y&&t.jsx("div",{className:"word-table-block__card-close",children:t.jsx(oe,{htmlType:"button",size:_,type:"dot",icon:"x",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:pe.length>1?B("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):B("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),ariaLabel:pe.length>1?B("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):B("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),onClick:()=>y(_e)})})]}):g&&t.jsx("div",{style:ne,children:t.jsx(oe,{htmlType:"button",size:"48",type:"bar",icon:"plus",label:B("wordTable.addWord","\uCD94\uAC00\uD558\uAE30"),onClick:()=>g(_e)})})},_e))}):t.jsxs(t.Fragment,{children:[(d??[]).map((pe,_e)=>t.jsxs("div",{className:`word-table-block__card${f?" word-table-block__card--draggable":""}${te===_e?" word-table-block__card--drag-over":""}`,style:ml(_e,V,I,l),draggable:!!f,onDragStart:f?()=>{E.current=_e}:void 0,onDragOver:f?Z=>{Z.preventDefault(),$(_e)}:void 0,onDragLeave:f?()=>$(null):void 0,onDrop:f?Z=>{Z.preventDefault(),E.current!==null&&E.current!==_e&&f(E.current,_e),E.current=null,$(null)}:void 0,onDragEnd:f?()=>{E.current=null,$(null)}:void 0,children:[pe.words.map((Z,ie)=>t.jsxs(s.Fragment,{children:[ie>0&&t.jsx("div",{className:"word-table-block__pair-divider"}),t.jsx(Cl,{label:Z.label,subLabel:Z.subLabel,colloquialLabel:Z.colloquialLabel,homonum:Z.homonum,showWord:P.word,showImage:P.image,showPronunciation:P.pron,showColloquial:P.colloq,buttonSize:_,wordInfo:Z.grade||Z.syllables!=null||Z.pos||Z.wordType?{grade:Z.grade,syllables:Z.syllables,pos:Z.pos,wordType:Z.wordType}:void 0})]},ie)),k&&W(_e,pe.words.map(Z=>Z.label).join(" / ")),C&&t.jsx("div",{className:"word-table-block__card-close",children:t.jsx(oe,{htmlType:"button",size:_,type:"dot",icon:"x",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:pe.words.length>1?B("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):B("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),ariaLabel:pe.words.length>1?B("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):B("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),onClick:()=>C(pe.id)})})]},pe.id)),Array.from({length:Math.max(0,V*I-(d?.length??0))}).map((pe,_e)=>{const Z=(d?.length??0)+_e<M;return t.jsx("div",{className:"word-table-block__card word-table-block__card--filler",children:v&&g&&Z&&t.jsx("div",{style:ne,children:t.jsx(oe,{htmlType:"button",size:_,type:"bar",icon:"plus",label:B("wordTable.addWord","\uCD94\uAC00\uD558\uAE30"),onClick:()=>g((d?.length??0)+_e)})})},`filler-${_e}`)})]}),b&&N!=="none"&&t.jsx("span",{className:`word-table__page-number body-3 word-table__page-number--${N}`,children:B("wordTable.filter.pageIndicator",{current:b.current,total:b.total})})]})})});return e!=null||n||a?t.jsx(On,{type:"page",icon:n,title:e,disc:a,className:ye("word-table-block",r),children:re}):re}function un({title:e,headerAction:n,collapsible:a=!1,defaultCollapsed:r=!1,collapsed:o,onCollapsedChange:i,footer:l,sections:c,selected:u={},onSelect:d,align:p,sectionAlign:h,className:m}){const g=(p??(h==="vertical"?"newline":"inline"))==="inline",{t:y}=he.useTranslation(),[C,f]=s.useState(r),v=o??C,x=()=>{const b=!v;f(b),i?.(b)},_=e||n||a;return t.jsxs("div",{className:ye("filter-panel",a?"filter-panel--collapsible":"",v?"filter-panel--collapsed":"",m),children:[_&&t.jsxs("div",{className:"filter-panel__header",children:[t.jsxs("div",{className:"filter-panel__title-row",children:[a&&t.jsx(oe,{htmlType:"button",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:v?"chevron-down":"chevron-up",ariaLabel:v?y("common.expand","\uD3BC\uCE58\uAE30"):y("common.collapse","\uC811\uAE30"),"aria-expanded":!v,onClick:x}),e&&t.jsx("span",{className:"filter-panel__title h4",children:e})]}),t.jsx("div",{className:"filter-panel__header-actions",children:!v&&n})]}),!v&&t.jsxs(t.Fragment,{children:[t.jsx("div",{className:ye("filter-panel__sections",g?"filter-panel__sections--row":""),children:c.map(b=>{const N=u[b.label],w=N===void 0||(Array.isArray(N)?N.length===0:!1),k=(b.items??[]).filter(A=>A!=null);b.allOption&&k.some(A=>(typeof A=="string"?A:A.value)===Jt)&&qn(`filter-panel-all-value:${b.label}`,`[FilterPanel] '${b.label}' \uC808\uC5D0 allOption \uACFC \uAC12 '${Jt}' \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 j=A=>{const S=typeof A=="string"?A:A.value,q=typeof A!="string"&&!!A.disabled,W=typeof A!="string"?A.labels:void 0,B=typeof A!="string"?A.displayLabel:void 0,F=typeof A!="string"?A.tooltip:void 0,E=typeof A!="string"?A.descriptionTooltip:void 0,te=typeof A!="string"?A.shape:void 0,$=Array.isArray(N)?N.includes(S):N===S;return t.jsx(oe,{htmlType:"button",size:"keyboard",label:W??B??S,type:b.itemType??(W?"bar":S.length===1?"dot":void 0),selected:$,disabled:q,shape:te,showTooltipInfo:!!F,tooltipInfoText:F,tooltipDescription:E,onClick:()=>d?.(S,b.label)},S)};return t.jsxs(s.Fragment,{children:[b.groupLabel&&t.jsxs("div",{className:"filter-panel__group-label-row",children:[t.jsx("div",{className:"filter-panel__group-label body-2",children:b.groupLabel}),b.groupAction]}),t.jsxs("div",{className:ye("filter-panel__section",b.layout==="row"?"filter-panel__section--row":"",b.block?"filter-panel__section--block":""),children:[t.jsxs("div",{className:"filter-panel__section-label-row",children:[t.jsx("span",{className:"filter-panel__section-label body-3",children:b.displayLabel??b.label}),b.labelAction??(b.labelInfo?t.jsx(oa,{...b.labelInfo}):null)]}),b.type==="note"?t.jsx("div",{className:"filter-panel__note body-3",children:b.content}):b.type==="input"?t.jsx(Tn,{className:"filter-panel__textfield",placeholder:b.placeholder,ariaLabel:b.displayLabel??b.label,value:u[b.label]??"",onChange:A=>d?.(A,b.label),error:b.error}):!b.multiple&&b.display==="segmented"?t.jsx(En,{ariaLabel:b.displayLabel??b.label,options:[...b.allOption?[{key:Jt,label:b.allLabel??y("common.all","\uC804\uCCB4")}]:[],...k.map(A=>{const S=typeof A=="string"?A:A.value,q=typeof A!="string"?A.displayLabel:void 0,W=typeof A!="string"?A.disabled:void 0;return{key:S,label:q??S,disabled:W}})],value:w&&b.allOption?Jt:u[b.label]??"",onChange:A=>d?.(A,b.label),size:32}):!b.multiple&&b.display==="dropdown"?t.jsx(Gt,{className:"filter-panel__dropdown",size:40,options:[...b.allOption?[{value:Jt,label:b.allLabel??y("common.all","\uC804\uCCB4")}]:[],...k.map(A=>{const S=typeof A=="string"?A:A.value,q=typeof A!="string"?A.displayLabel:void 0,W=typeof A!="string"?A.disabled:void 0;return{value:S,label:q??S,disabled:W}})],value:w&&b.allOption?Jt:u[b.label],onChange:A=>d?.(A,b.label)}):t.jsxs("div",{className:b.groups?"filter-panel__item-groups":"filter-panel__items",children:[b.allOption&&!b.groups&&t.jsx(oe,{htmlType:"button",size:"keyboard",label:b.allLabel??y("common.all","\uC804\uCCB4"),selected:w,disabled:b.allOptionDisabled,onClick:()=>d?.(Jt,b.label)}),b.groups?b.groups.map((A,S)=>t.jsxs("div",{className:"filter-panel__item-group",children:[S===0&&b.allOption&&t.jsx(oe,{htmlType:"button",size:"keyboard",label:b.allLabel??y("common.all","\uC804\uCCB4"),selected:w,disabled:b.allOptionDisabled,onClick:()=>d?.(Jt,b.label)}),A.filter(q=>q!=null).map(j)]},S)):k.map(j)]})]})]},b.label)})}),l!=null&&l!==!1&&t.jsx("div",{className:"filter-panel__footer body-3",children:l})]})]})}const cb=[1,2,3,4,5,6,7,8,9,10,11,12],Tr=[8,4,2,1];function yl(e,n){return{label:e("wordTable.filter.composition","\uAD6C\uC131"),items:[{value:"\uC774\uBBF8\uC9C0",disabled:!n.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:!n.hasColloquial,displayLabel:e("wordTable.filter.colloquialPron","\uAD6C\uC5B4\uCCB4 \uBC1C\uC74C")}],multiple:!0,allOption:!0}}function vl(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 xl(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 _l(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 wl(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 kl(e,n){return{label:e(n.hasPairs?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord"),items:[n.itemCount,...Tr.filter(a=>a<n.itemCount)].map(a=>({value:`${a}\uAC1C`,displayLabel:e("wordTable.filter.itemsPerPageOption",{count:a})})),display:"segmented"}}function Al(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 Nl={left:"\uC67C\uCABD",center:"\uC911\uC559",right:"\uC624\uB978\uCABD",none:"\uBBF8\uD45C\uC2DC"};function Bl(e){return e==="\uC67C\uCABD"?"left":e==="\uC911\uC559"?"center":e==="\uC624\uB978\uCABD"?"right":"none"}function Sl(e,n){return{[e("wordTable.filter.composition","\uAD6C\uC131")]:n.contentTypes,[e("wordTable.filter.paperOrientation","\uC6A9\uC9C0 \uBC29\uD5A5")]:n.orientation==="landscape"?"\uAC00\uB85C":"\uC138\uB85C",[e("wordTable.filter.border","\uC678\uACFD\uC120")]:n.showOutline?"\uD45C\uC2DC":"\uBBF8\uD45C\uC2DC",[e("wordTable.filter.cutLine","\uC808\uCDE8\uC120")]:n.cutLine,[e("wordPrint.divLine","\uB300\uB9BD\uC120")]:n.showDivLine?"\uD45C\uC2DC":"\uBBF8\uD45C\uC2DC"}}function Dl(e,n,a,r){return a===e("wordTable.filter.composition","\uAD6C\uC131")?n===Jt?(r.setContentTypes(()=>[]),!0):(r.setContentTypes(o=>o.includes(n)?o.filter(i=>i!==n):[...o,n]),!0):a===e("wordTable.filter.paperOrientation","\uC6A9\uC9C0 \uBC29\uD5A5")?(r.setOrientation(n==="\uAC00\uB85C"?"landscape":"portrait"),!0):a===e("wordTable.filter.border","\uC678\uACFD\uC120")?(r.setShowOutline(n==="\uD45C\uC2DC"),!0):a===e("wordTable.filter.cutLine","\uC808\uCDE8\uC120")?(r.setCutLine(n),!0):a===e("wordPrint.divLine","\uB300\uB9BD\uC120")?(r.setShowDivLine(n==="\uD45C\uC2DC"),!0):!1}function ub(e){return"sections"in e}function Er(e){const{t:n}=he.useTranslation(),{title:a,className:r}=e;if(ub(e))return t.jsx(un,{className:r,title:a??n("wordTable.filterTitle","\uD45C \uC124\uC815"),sections:e.sections,selected:e.selected,onSelect:e.onSelect,align:"inline"});const{hasImage:o,hasColloquial:i,contentTypes:l,orientation:c,showOutline:u,cutLine:d,showDivLine:p,setters:h,showCutLine:m=!1,showDivLine2:g=!1,middleSections:y=[],extraSelected:C={},onExtraSelect:f}=e,v=[yl(n,{hasImage:o,hasColloquial:i}),vl(n),...y,xl(n),...m?[_l(n)]:[],...g?[wl(n)]:[]],x={...Sl(n,{contentTypes:l,orientation:c,showOutline:u,cutLine:d,showDivLine:p}),...C},_=(b,N)=>{Dl(n,b,N,h)||f?.(b,N)};return t.jsx(un,{className:r,title:a??n("wordTable.filterTitle","\uD45C \uC124\uC815"),sections:v,selected:x,onSelect:_,sectionAlign:"horizontal"})}function jl(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function Mr(e){return e.replace(/[\\/:*?"<>|]/g,"_").trim()}let Sa=null;function db(e,n,a,r="",o=""){if(e.length===0)return;const i=r?Mr(r):"";Sa?.();let l=null;if(i){const d=document.title;document.title=i,l=()=>{document.title=d,window.removeEventListener("afterprint",l),Sa===l&&(Sa=null)},Sa=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 u=c.contentDocument;if(!u){c.remove();return}u.open(),u.write(Lr(e,n,a,!0,i,o)),u.close(),c.contentWindow?.addEventListener("afterprint",()=>{l?.(),setTimeout(()=>c.remove(),0)})}function Lr(e,n,a,r=!1,o="",i=""){o=o?Mr(o):"";const l=Array.from(document.styleSheets).flatMap(p=>{try{return Array.from(p.cssRules).map(h=>h.cssText)}catch{return[]}}).join(`
838
+ `),C=y===-1?a:a.slice(0,y);i("comment",C),a=a.slice(C.length);continue}const c=a.match(/^\/\*[\s\S]*?\*\//);if(c){i("comment",c[0]),a=a.slice(c[0].length);continue}const u=a.match(/^(`(?:\\.|[^`])*`|"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*')/);if(u){i("string",u[0]),a=a.slice(u[0].length);continue}const d=a.match(/^\d+(?:\.\d+)?/);if(d){i("number",d[0]),a=a.slice(d[0].length);continue}const p=a.match(o4);if(p){i("keyword",p[0]),a=a.slice(p[0].length);continue}const h=a.match(/^[A-Za-z_$][A-Za-z0-9_$-]*/);if(h){const y=h[0];i(o&&r4.has(y)?"command":"identifier",y),a=a.slice(y.length);continue}const m=a.match(/^[=+\-*/%<>!&|^~?:]+/);if(m){i("operator",m[0]),a=a.slice(m[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:n="bash",title:a="",showCopy:r=!0,size:o="default",className:i=""}){const{t:l}=he.useTranslation(),[c,u]=s.useState(!1),d=a4(Oi(e)),p=s.useRef(null);s.useEffect(()=>()=>{p.current&&clearTimeout(p.current)},[]);const h=async()=>{try{if(!await b0(d))return;u(!0),p.current&&clearTimeout(p.current),p.current=setTimeout(()=>u(!1),2e3)}catch{}},m=s4(d,n),g=o==="small"?"caption-1":"body-3";return t.jsxs("div",{className:ye("code-box",o==="small"?"code-box--small":"",i),children:[(a||r)&&t.jsxs("div",{className:"code-box__header",role:"toolbar","aria-label":l("common.codeBlock","\uCF54\uB4DC \uBE14\uB85D"),children:[t.jsx("div",{className:"code-box__title caption-1",children:a}),r&&t.jsx(oe,{htmlType:"button",className:"code-box__copy",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:c?"check":"copy",onClick:h,ariaLabel:c?l("common.copied","\uBCF5\uC0AC\uB428"):l("common.copyCode","\uCF54\uB4DC \uBCF5\uC0AC")})]}),t.jsx("pre",{className:"code-box__inner","data-lang":n,children:t.jsx("code",{children:m.map((y,C)=>t.jsx("span",{className:`code-token ${y.type} ${g}`,children:y.content},C))})})]})}function la(e){const{t:n}=he.useTranslation(),{variant:a="spinner",size:r=24,progress:o=null,label:i}=e||{},l=i||n("loader.loading","Loading");if(a==="bar"){const u=Math.max(0,Math.min(100,Number(o)||0));return t.jsx("div",{className:"loader-bar",role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":u,"aria-label":l,children:t.jsx("div",{className:"loader-bar__inner",style:{width:`${u}%`}})})}const c=typeof r=="number"?`${r}px`:r;return t.jsx("div",{className:"loader-spinner",style:{width:c,height:c},role:"status","aria-label":l,children:t.jsxs("svg",{className:"loader-spinner__svg",viewBox:"0 0 50 50",width:r,height:r,children:[t.jsx("circle",{className:"loader-spinner__bg",cx:"25",cy:"25",r:"20",fill:"none",strokeWidth:"4"}),t.jsx("circle",{className:"loader-spinner__fg",cx:"25",cy:"25",r:"20",fill:"none",strokeWidth:"4",strokeLinecap:"round"})]})})}function Vi({checked:e,onChange:n,disabled:a=!1,label:r,ariaLabel:o,labelPosition:i="right",className:l="",id:c}){const u=r&&t.jsx("span",{className:"toggle__label body-3",children:r});return t.jsxs("label",{className:`toggle${a?" toggle--disabled":""} ${l}`.trim(),children:[i==="left"&&u,t.jsx("input",{id:c,type:"checkbox",role:"switch",checked:e,disabled:a,onChange:d=>n?.(d.target.checked),"aria-label":!r&&o?o:void 0}),t.jsx("span",{className:"toggle__slider"}),i==="right"&&u]})}function Hi({checked:e=!1,onChange:n,disabled:a,indeterminate:r,label:o,size:i="medium",className:l,title:c,ariaLabel:u}){const d=s.useRef(null),p=s.useId(),h=s.useRef(!!r);return h.current=!!r,s.useEffect(()=>{d.current&&(d.current.indeterminate=!!r)}),t.jsxs("label",{className:ye("checkbox",i==="small"&&"checkbox--small",i==="large"&&"checkbox--large",a&&"checkbox--disabled",l),htmlFor:p,title:c,children:[t.jsx("input",{ref:d,id:p,type:"checkbox",className:"checkbox__input",checked:e,onChange:m=>{n?.(m.target.checked),d.current&&(d.current.indeterminate=h.current)},disabled:a,"aria-label":!o&&u?u:void 0}),t.jsx("span",{className:"checkbox__box"}),o&&t.jsx("span",{className:"checkbox__label body-3",children:o})]})}function l4({count:e,actions:n,onClear:a,clearLabel:r,visible:o,content:i,max:l}){const{t:c}=he.useTranslation(),u=o!==void 0?o:e>0,d=r??c("bulkBar.clearSelection","\uC120\uD0DD \uD574\uC81C"),p=s.useRef(null),[h,m]=s.useState(!1);return s.useEffect(()=>{const g=p.current;if(!g)return;const y=()=>{const f=g.firstElementChild??g,v=Array.from(f.children);if(v.length<2){m(!1);return}const x=v[0].offsetTop;m(v.some(_=>_.offsetTop!==x))};if(y(),typeof ResizeObserver>"u")return;const C=new ResizeObserver(y);return C.observe(g),()=>C.disconnect()},[i,e]),t.jsxs("div",{className:`bulk-bar ${u?"bulk-bar--visible":""}`,inert:!u||void 0,"aria-hidden":u?void 0:!0,children:[t.jsx("span",{ref:p,className:"bulk-bar__count body-2",children:i??t.jsx("b",{children:c("common.selectedCount",{count:e})})}),l!==void 0&&t.jsx(it,{size:"small",fill:"soft",variant:"main",label:`${e} / ${l}`}),t.jsxs("div",{className:`bulk-bar__actions${h?" bulk-bar__actions--stacked":""}`,children:[t.jsx(oe,{htmlType:"button",size:40,label:d,onClick:a}),n.map((g,y)=>t.jsx(oe,{htmlType:"button",size:40,variant:g.variant??"default",icon:g.icon,label:g.label,onClick:g.onClick},y))]})]})}function zi(e){const n=()=>{if(e){const[g,y]=e.split("-");return{y:+g,m:+y-1}}const m=new Date;return{y:m.getFullYear(),m:m.getMonth()}},[a,r]=s.useState(()=>n().y),[o,i]=s.useState(()=>n().m),l=s.useRef(e);s.useEffect(()=>{if(e===l.current)return;l.current=e;const m=n();r(m.y),i(m.m)},[e]);const c=s.useRef({y:a,m:o});s.useEffect(()=>{c.current={y:a,m:o}},[a,o]);const u=s.useCallback(m=>{const g=c.current.y*12+c.current.m+m,y=Math.floor(g/12),C=g-y*12;c.current={y,m:C},r(y),i(C)},[]),d=s.useCallback(()=>u(-1),[u]),p=s.useCallback(()=>u(1),[u]),h=s.useCallback((m,g)=>{c.current={y:m,m:g},r(m),i(g)},[]);return{viewY:a,viewM:o,prevMonth:d,nextMonth:p,setViewYM:h}}function br(e,n){return new Date(e,n+1,0).getDate()}function c4(e,n){return new Date(e,n,1).getDay()}function In(e,n,a){return`${e}-${String(n+1).padStart(2,"0")}-${String(a).padStart(2,"0")}`}function u4(e){if(!e)return"";const[n,a,r]=e.split("-");return`${n}. ${a}. ${r}.`}function d4(e,n,a,r){const o=a?+a.split("-")[0]:e-10,i=r?+r.split("-")[0]:e+10,l=[];for(let c=o;c<=i;c++)for(let u=0;u<12;u++){const d=`${c}-${String(u+1).padStart(2,"0")}`;a&&d<a.slice(0,7)||r&&d>r.slice(0,7)||l.push({value:d,label:n(c,u+1)})}return l}function p4({value:e,onChange:n,size:a=48,min:r,max:o,disabled:i,placeholder:l,className:c}){const{t:u}=he.useTranslation(),d=l??u("datePicker.chooseDate","\uB0A0\uC9DC \uC120\uD0DD"),p=s.useMemo(()=>u("calendar.dow",{returnObjects:!0}),[u]),h=new Date,{viewY:m,viewM:g,prevMonth:y,nextMonth:C,setViewYM:f}=zi(e),v=s.useCallback(V=>{const T=window.innerHeight-V.bottom,P=300,F=T<P&&V.top>P;return{position:"fixed",left:V.left,width:V.width,minWidth:260,...F?{bottom:window.innerHeight-V.top+6}:{top:V.bottom+6},zIndex:9999}},[]),{open:x,setOpen:_,toggle:b,style:N,triggerRef:w,menuRef:k}=na({computeStyle:v,onScroll:"reposition",onResize:"reposition",ignoreOutsideClickSelector:".dropdown__menu"});s.useEffect(()=>{if(!x)return;const V=k.current;return(V?.querySelector(".date-picker__day--selected:not(:disabled)")??V?.querySelector(".date-picker__day--today:not(:disabled)")??V?.querySelector(".date-picker__day:not(:disabled)")??V?.querySelector(Nn)??V)?.focus?.(),()=>{const T=document.activeElement;(!T||T===document.body)&&w.current?.focus?.()}},[x,k,w]);const[j,A]=s.useState(1),S=s.useRef(null),q=s.useRef(null);s.useEffect(()=>{if(!x)return;const V=In(h.getFullYear(),h.getMonth(),h.getDate()),T=e&&e.slice(0,7)===`${m}-${String(g+1).padStart(2,"0")}`?+e.slice(8):V.slice(0,7)===`${m}-${String(g+1).padStart(2,"0")}`?+V.slice(8):1;A(T)},[x]),s.useEffect(()=>{if(q.current==null)return;const V=q.current;q.current=null,S.current?.querySelector(`[data-day="${V}"]`)?.focus()}),s.useEffect(()=>{A(V=>Math.min(V,br(m,g)))},[m,g]);const W=s.useCallback(V=>{let T=In(V.getFullYear(),V.getMonth(),V.getDate());r&&T<r&&(T=r),o&&T>o&&(T=o);const[P,F,L]=T.split("-").map(Number);(P!==m||F-1!==g)&&f(P,F-1),A(L),q.current=L},[r,o,m,g,f]),B=s.useCallback(V=>{const T=new Date(m,g,j),P=L=>{T.setDate(T.getDate()+L),W(T)},F=L=>{T.setMonth(T.getMonth()+L),W(T)};switch(V.key){case"ArrowLeft":P(-1);break;case"ArrowRight":P(1);break;case"ArrowUp":P(-7);break;case"ArrowDown":P(7);break;case"Home":P(-T.getDay());break;case"End":P(6-T.getDay());break;case"PageUp":V.shiftKey?F(-12):F(-1);break;case"PageDown":V.shiftKey?F(12):F(1);break;default:return}V.preventDefault()},[m,g,j,W]),O=s.useCallback(V=>{n(In(m,g,V)),_(!1)},[m,g,n,_]),E=V=>{const T=In(m,g,V);return!!(r&&T<r||o&&T>o)},ee=(()=>{const V=br(m,g);if(j>=1&&j<=V&&!E(j))return j;for(let T=1;T<=V;T++)if(!E(T))return T;return-1})(),M=[];for(let V=0;V<c4(m,g);V++)M.push(null);for(let V=1;V<=br(m,g);V++)M.push(V);const H=a===64?20:a===40?16:18,Q=d4(m,(V,T)=>u("calendar.yearMonth",{year:V,month:T,defaultValue:"{{year}}\uB144 {{month}}\uC6D4"}),r,o),te=`${m}-${String(g+1).padStart(2,"0")}`,Y=x?It.createPortal(t.jsxs("div",{ref:k,className:"date-picker__dropdown",style:N,role:"dialog","aria-label":u("datePicker.chooseDate","\uB0A0\uC9DC \uC120\uD0DD"),tabIndex:-1,children:[t.jsxs("div",{className:"date-picker__nav",children:[t.jsx("button",{type:"button",className:"date-picker__nav-btn",onClick:y,"aria-label":u("calendar.prevMonth","\uC774\uC804 \uB2EC"),children:t.jsx(bo,{size:16,strokeWidth:2})}),t.jsx(Gt,{className:"date-picker__nav-dropdown",ariaLabel:u("datePicker.selectYearMonth","\uC5F0\uC6D4 \uC120\uD0DD"),options:Q,value:te,onChange:V=>{const[T,P]=V.split("-");f(+T,+P-1)},block:!0,size:40}),t.jsx("button",{type:"button",className:"date-picker__nav-btn",onClick:C,"aria-label":u("calendar.nextMonth","\uB2E4\uC74C \uB2EC"),children:t.jsx(yo,{size:16,strokeWidth:2})})]}),t.jsxs("div",{className:"date-picker__grid",ref:S,onKeyDown:B,children:[p.map(V=>t.jsx("div",{className:"date-picker__dow caption-1",children:V},V)),M.map((V,T)=>{if(V===null)return t.jsx("div",{},`e${T}`);const P=In(m,g,V),F=P===e,L=P===In(h.getFullYear(),h.getMonth(),h.getDate()),R=E(V),z=T%7;return t.jsx("button",{type:"button",disabled:R,"data-day":V,tabIndex:V===ee?0:-1,"aria-current":L?"date":void 0,onClick:()=>!R&&O(V),className:ye("date-picker__day caption-1",F&&"date-picker__day--selected",L&&!F&&"date-picker__day--today",R&&"date-picker__day--disabled",z===0&&"date-picker__day--sun",z===6&&"date-picker__day--sat"),children:V},V)})]})]}),document.body):null;return t.jsxs("div",{className:ye("date-picker",`date-picker--s${a}`,x&&"date-picker--open",c),children:[t.jsxs("button",{ref:w,type:"button",className:"date-picker__trigger body-2",onClick:()=>!i&&b(),disabled:i,"aria-haspopup":"true","aria-expanded":x,children:[t.jsx("span",{className:e?"date-picker__value":"date-picker__placeholder",children:e?u4(e):d}),t.jsx(So,{size:H,className:"date-picker__icon",strokeWidth:1.5})]}),Y]})}function yr({items:e,className:n}){return t.jsx("div",{className:n?`manager-bar-chart-legend ${n}`:"manager-bar-chart-legend",children:e.map((a,r)=>t.jsxs("span",{className:"manager-bar-chart-legend-item",children:[t.jsx("span",{className:"manager-bar-chart-legend-dot",style:{background:a.color}}),a.label]},r))})}function Aa({label:e,children:n}){return e?t.jsxs("div",{className:"barchart-total barchart-total--stacked",children:[t.jsx("span",{className:"barchart-total__label body-3",children:e}),t.jsx("span",{className:"barchart-total__value",children:n})]}):t.jsx("div",{className:"barchart-total",children:n})}function vr({title:e,titleClassName:n="h3",headRight:a,subRow:r,className:o,inGrid:i=!1,children:l}){return t.jsxs("section",{className:["manager-section",i&&"manager-section--grid",o].filter(Boolean).join(" "),children:[t.jsxs("div",{className:"manager-section__head",children:[t.jsx("div",{className:n,children:e}),a]}),r&&t.jsx("div",{className:"barchart-sub-row",children:r}),l]})}function ln(e,n){const a=new Date(e,n,1).getDay();return 1+(8-(a===0?7:a))%7}function h4(){const e=new Date;let n=e.getFullYear(),a=e.getMonth(),r=e.getDate();if(r<ln(n,a)){const l=new Date(n,a,0);n=l.getFullYear(),a=l.getMonth(),r=l.getDate()}const o=Math.floor((r-ln(n,a))/7),i=`${n}\uB144 ${a+1}\uC6D4`;return{monthKey:i,value:`${i}#${o}`}}function m4(e){const n=new Date,a=`${n.getFullYear()}\uB144 ${n.getMonth()+1}\uC6D4`,r=(u,d)=>`${u}\uB144 ${d+1}\uC6D4`,o=new Map;o.set(a,[]);for(const u of e){if(isNaN(u.date.getTime()))continue;const d=r(u.date.getFullYear(),u.date.getMonth());o.has(d)||o.set(d,[]),o.get(d).push(u)}for(const[u,d]of[...o.entries()]){const p=u.match(/^(\d+)년 (\d+)월$/);if(!p)continue;const h=Number(p[1]),m=Number(p[2])-1,g=ln(h,m);if(!(u===a&&n.getDate()<g)&&!d.some(f=>f.date.getDate()<g))continue;const y=new Date(h,m,0),C=r(y.getFullYear(),y.getMonth());o.has(C)||o.set(C,[])}const i=new Map;for(const[u,d]of o){const p=u.match(/^(\d+)년 (\d+)월$/);if(!p)continue;const h=Number(p[1]),m=Number(p[2])-1,g=new Date(h,m+1,0).getDate(),y=d.reduce((x,_)=>Math.max(x,_.parts?.length??0),0),C=new Array(g+1).fill(0),f=new Array(g+1).fill(0),v=Array.from({length:g+1},()=>new Array(y).fill(0));for(const x of d){const _=x.date.getDate();if(C[_]+=x.a,f[_]+=x.b,x.parts)for(let b=0;b<y;b++)v[_][b]+=x.parts[b]??0}i.set(u,{year:h,month:m,daysInMonth:g,partsLen:y,dayA:C,dayB:f,dayParts:v})}const l=(u,d,p)=>new Date(u,d,p).getTime()>new Date(n.getFullYear(),n.getMonth(),n.getDate()).getTime(),c={};for(const[u,d]of i){const{year:p,month:h,daysInMonth:m,dayA:g,dayB:y,dayParts:C}=d,f=p===n.getFullYear()&&h===n.getMonth(),v=n.getDate(),x=i.get(r(h===11?p+1:p,(h+1)%12)),_=d.partsLen,b=[];for(let w=1;w<=m;w++){const k=f&&w>v;b.push({label:String(w),a:k&&g[w]===0&&y[w]===0?-1:g[w],b:y[w],..._?{parts:C[w]}:{}})}const N=[];for(let w=ln(p,h);w<=m;w+=7){const k=Math.max(0,w+6-m),j=k&&x?Math.max(_,x.partsLen):_;let A=0,S=0;const q=new Array(j).fill(0);for(let B=w;B<=Math.min(w+6,m);B++){A+=g[B],S+=y[B];for(let O=0;O<_;O++)q[O]+=C[B][O]}if(k&&x)for(let B=1;B<=k&&!l(x.year,x.month,B);B++){A+=x.dayA[B],S+=x.dayB[B];for(let O=0;O<x.partsLen;O++)q[O]+=x.dayParts[B][O]}const W=k?`${(h+1)%12+1}/${k}`:`${w+6}`;N.push({label:`${N.length+1}\uC8FC`,sublabel:`[${w}\uC77C~${W}\uC77C]`,a:A,b:S,...j?{parts:q}:{}})}c[u]={weekly:N,daily:b}}return c}function Wi(){const e=new Date,n=e.getFullYear(),a=e.getMonth()+1,r=[];for(let o=2024;o<=n;o++){const i=o===n?a:12;for(let l=1;l<=i;l++){const c=`${o}\uB144 ${l}\uC6D4`;r.push({value:c,label:c,year:o,month:l})}}return r.reverse()}Wi();function f4(){return Wi()}const qi=["\uCCAB\uC9F8","\uB458\uC9F8","\uC14B\uC9F8","\uB137\uC9F8","\uB2E4\uC12F\uC9F8","\uC5EC\uC12F\uC9F8","\uC77C\uACF1\uC9F8"];function Ui(e){const{t:n,i18n:a}=he.useTranslation(),[r,o]=s.useState("week"),i=s.useMemo(()=>f4().filter(A=>A.value in e),[e]),l=s.useMemo(()=>{const A=[];for(const S of i){const q=new Date(S.year,S.month,0).getDate(),W=ln(S.year,S.month-1),B=Math.ceil((q-W+1)/7);for(let O=B-1;O>=0;O--)A.push({value:`${S.value}#${O}`,monthKey:S.value,year:S.year,month:S.month,week:O})}return A},[i]),c=s.useCallback(A=>{const S=n("calendar.yearMonth",{year:A.year,month:A.month});return a.language?.startsWith("ko")?`${S} ${qi[A.week]??`${A.week+1}`}\uC8FC`:`${S} Week ${A.week+1}`},[n,a.language]),u=s.useMemo(()=>i.map(A=>({value:A.value,label:n("calendar.yearMonth",{year:A.year,month:A.month})})),[n,i]),d=s.useMemo(()=>l.map(A=>({value:A.value,label:c(A)})),[l,c]),p=s.useMemo(()=>h4(),[e]),h=s.useMemo(()=>i.find(A=>A.value===p.monthKey)?.value??i[0]?.value??"",[i,p]),m=s.useMemo(()=>l.find(A=>A.value===p.value)?.value??l[0]?.value??"",[l,p]),[g,y]=s.useState(""),[C,f]=s.useState("");s.useEffect(()=>{i.find(A=>A.value===g)||y(h)},[i,g,h]),s.useEffect(()=>{l.find(A=>A.value===C)||f(m)},[l,C,m]);const v=r==="month"?u:d,x=r==="month"?g:C,_=r==="month"?y:f,b=s.useMemo(()=>{const A=n("calendar.dow",{returnObjects:!0});return Array.isArray(A)?A:["\uC77C","\uC6D4","\uD654","\uC218","\uBAA9","\uAE08","\uD1A0"]},[n]),N=v.findIndex(A=>A.value===x),w=s.useCallback(()=>{const A=v.findIndex(S=>S.value===x);A<v.length-1&&_(v[A+1].value)},[v,x,_]),k=s.useCallback(()=>{const A=v.findIndex(S=>S.value===x);A>0&&_(v[A-1].value)},[v,x,_]),j=s.useMemo(()=>[{key:"week",label:n("manager.chart.periodWeek","\uC8FC")},{key:"month",label:n("manager.chart.periodMonth","\uC6D4")}],[n]);return{period:r,setPeriod:o,range:x,setRange:_,activeOptions:v,activeIdx:N,handlePrev:w,handleNext:k,periodOptions:j,monthRange:g,weekRange:C,weekRanges:l,DOW:b}}const Kt=e=>typeof e=="number"&&Number.isFinite(e)?e:0;function C4({data:e,colorA:n,colorB:a,labelA:r,labelB:o,barWidth:i=10,height:l=140,maxOverride:c,tightMax:u,seriesColors:d,seriesLabels:p,rateLabels:h}){const m=!a,g=!!(d&&d.length>0),y=s.useMemo(()=>g?Math.max(0,...e.filter(k=>k.a!==-1).map(k=>(k.parts??[]).reduce((j,A)=>j+Math.max(0,Kt(A)),0))):Math.max(0,...e.filter(k=>k.a!==-1).flatMap(k=>m?[Kt(k.a)]:[Kt(k.a),Kt(k.b)])),[e,m,g]),C=s.useMemo(()=>c??(u?y>0?y:10:Math.ceil(y/10)*10||10),[y,c,u]),f=l,v=g||m?1:2,x={"--bar-width":`${s.useMemo(()=>{const k=Math.max(1,e.length);return Math.max(8,Math.min(i,Math.round(120/(k*v)+6)))},[e.length,v,i])}px`},_=s.useMemo(()=>{const k=Math.round(C/2);return k!==C?[C,k,0]:[C,0]},[C]),[b,N]=s.useState(null),w=s.useCallback(()=>N(null),[]);return t.jsxs("div",{className:"manager-bar-chart-wrap",children:[t.jsx("div",{className:"manager-bar-chart-inner",children:t.jsx("div",{className:"manager-bar-chart-scroll",children:t.jsxs("div",{className:"manager-bar-chart-area",children:[t.jsxs("div",{className:"manager-bar-chart-plot",style:{height:f},children:[_.slice(0,-1).map((k,j)=>t.jsx("div",{className:"manager-bar-chart-gridline",style:{top:(1-k/C)*f},children:t.jsx("span",{className:"manager-bar-chart-gridline__label caption-1",children:k})},j)),e.map((k,j)=>{const A=k.a===-1,S=O=>Math.min(f,Math.max(0,Kt(O)/C*f)),q=A?0:S(k.a),W=A?0:S(k.b),B=(k.parts??[]).map(Kt);return t.jsx("div",{className:"manager-bar-chart-col",style:{cursor:A?"default":"pointer"},onMouseEnter:A?void 0:O=>{const E=O.currentTarget.getBoundingClientRect(),ee=[k.label,k.sublabel].filter(Boolean).join(" ");let M;if(g){const H=(p??[]).map((te,Y)=>({text:`${te}: ${B[Y]??0}`,color:(d??[])[Y]})),Q=H.filter((te,Y)=>(B[Y]??0)>0);M=Q.length?Q:H}else h&&!m?M=[{text:`${r} ${Kt(k.a)}%`,color:n},{text:`${o} ${Kt(k.b)}%`,color:a}]:h&&k.rawB!==void 0?M=[{text:`${h.total} ${k.rawB}`},{text:`${h.done} ${k.rawA??0}`,color:n}]:m?M=[{text:`${r}: ${Kt(k.a)}`,color:n}]:M=[{text:`${r}: ${Kt(k.a)}`,color:n},{text:`${o}: ${Kt(k.b)}`,color:a}];N({rect:{left:E.left,top:E.top,right:E.right,bottom:E.bottom,width:E.width,height:E.height},title:ee,items:M})},onMouseLeave:w,children:!A&&(g?t.jsx("div",{className:"manager-bar-chart-stack",style:x,children:(()=>{const O=B.reduce((ee,M,H)=>M>0?H:ee,-1);let E=f;return B.map((ee,M)=>{if(ee<=0)return null;const H=Math.min(E,ee/C*f);return E-=H,t.jsx("div",{className:"manager-bar-chart-stack-segment",style:{height:H,background:(d??[])[M],borderRadius:M===O?"6px 6px 0 0":void 0}},M)})})()}):t.jsxs(t.Fragment,{children:[t.jsx("div",{className:"manager-bar-chart-bar",style:{...x,height:q,background:n}}),!m&&t.jsx("div",{className:"manager-bar-chart-bar",style:{...x,height:W,background:a}})]}))},j)})]}),t.jsx("div",{className:"manager-bar-chart-x-axis",children:e.map((k,j)=>{const A=k.a===-1;return t.jsxs("span",{className:`manager-bar-chart-x-axis__label${A?" manager-bar-chart-x-axis__label--future":""}`,children:[t.jsxs("span",{className:"caption-1 manager-bar-chart-x-axis__main",children:[k.isToday&&t.jsx("span",{className:"manager-bar-chart-x-axis__today-dot",style:{background:n}}),k.label]}),k.sublabel&&t.jsx("span",{className:"caption-1",children:k.sublabel})]},j)})})]})})}),b&&t.jsx(Sn,{anchorRect:b.rect,title:b.title,items:b.items,showIndex:!1,closeOnOutsideClick:!1})]})}function Gi({control:e}){const{t:n}=he.useTranslation(),{activeOptions:a,activeIdx:r,range:o,setRange:i,handlePrev:l,handleNext:c,periodOptions:u,period:d,setPeriod:p}=e,h=d==="week"?n("calendar.prevWeek","\uC774\uC804 \uC8FC"):n("calendar.prevMonth","\uC774\uC804 \uB2EC"),m=d==="week"?n("calendar.nextWeek","\uB2E4\uC74C \uC8FC"):n("calendar.nextMonth","\uB2E4\uC74C \uB2EC");return t.jsxs("div",{className:"manager-section-controls",children:[t.jsx(oe,{htmlType:"button",size:32,type:"dot",icon:"chevron-left",ariaLabel:h,showTooltipInfo:h,disabled:r===a.length-1,onClick:l}),t.jsx(Gt,{value:o,onChange:i,options:a,size:40,className:"month-dropdown",ariaLabel:n("calendar.rangeSelect","\uAE30\uAC04 \uC120\uD0DD")}),t.jsx(oe,{htmlType:"button",size:32,type:"dot",icon:"chevron-right",ariaLabel:m,showTooltipInfo:m,disabled:r<=0,onClick:c}),t.jsx(En,{ariaLabel:n("calendar.periodSelect","\uAE30\uAC04 \uB2E8\uC704"),options:u,value:d,onChange:g=>p(g),size:32})]})}function Ki(e,n,a){const r=new Date(a.getFullYear(),a.getMonth(),a.getDate());return Array.from({length:7},(o,i)=>{const l=new Date(n);l.setDate(n.getDate()+i);const c=(e[`${l.getFullYear()}\uB144 ${l.getMonth()+1}\uC6D4`]?.daily??[])[l.getDate()-1],u=c?.a===-1||l>r;return{dt:l,entry:c,isFuture:u}})}function g4(e,n,a,r){const{period:o,monthRange:i,weekRange:l,weekRanges:c,DOW:u}=n,d=r?.startsWith("ko"),p=new Date,h=p.getFullYear(),m=p.getMonth()+1,g=p.getDate();if(o==="month"){const f=e[i]??{weekly:[],daily:[]},v=i.match(/^(\d+)년 (\d+)월$/),x=v?Number(v[1]):null,_=v?Number(v[2]):null,b=x&&_?ln(x,_-1):1;return f.weekly.map((N,w)=>{const k=w+1;let j=N.label,A=!1,S=!1;if(x&&_){const q=b+w*7,W=new Date(x,_-1,q+6),B=W.getMonth()+1,O=W.getDate(),E=B===_?`${O}`:`${B}/${O}`;j=a("manager.chart.weekRange",{start:q,end:E});const ee=new Date(h,m-1,g).getTime();A=ee>=new Date(x,_-1,q).getTime()&&ee<=W.getTime(),S=x>h||x===h&&(_>m||_===m&&q>g)}return{...N,label:j,sublabel:d?`${qi[k-1]??k}\uC8FC`:`Week ${k}`,isToday:A,a:S?-1:N.a,b:S?0:N.b}})}const y=c.find(f=>f.value===l);if(!y)return[];const C=new Date(y.year,y.month-1,ln(y.year,y.month-1)+y.week*7);return Ki(e,C,p).map(({dt:f,entry:v,isFuture:x})=>{const _=f.getMonth()+1,b=f.getDate(),N=f.getFullYear();return{label:_===y.month&&N===y.year?`${b}`:`${_}/${b}`,sublabel:u[f.getDay()]??"",a:x?-1:v&&v.a>0?v.a:0,b:x?0:v&&v.b>0?v.b:0,isToday:N===h&&_===m&&b===g,...v?.parts?{parts:x?v.parts.map(()=>0):v.parts}:{}}})}const b4={small:{height:100,barWidth:16},medium:{height:140,barWidth:20},large:{height:180,barWidth:24}};function y4({size:e="medium",barWidth:n,titleKey:a,data:r,colorA:o,colorB:i,labelAKey:l,labelBKey:c,showTotal:u=!1,totalUnitKey:d,totalLabelKey:p,control:h,hideControls:m=!1,rate:g=!1,tightMax:y=!1,avgMode:C=!1,totalFormat:f,series:v,loading:x=!1,onDetail:_,inGrid:b=!1}){const{t:N,i18n:w}=he.useTranslation(),k=b4[e],j=Ui(r),A=h??j,S=s.useMemo(()=>g4(r,A,N,w.language),[r,A,N,w.language]),q=s.useMemo(()=>{if(!g)return S;const E=A.period==="month"?A.monthRange.match(/^(\d+)년 (\d+)월$/):null,ee=new Date;return S.map((M,H)=>{let Q=M.a===-1?-1:M.b>0?Math.round(M.a/M.b*100):0;if(E&&M.a!==-1){const te=Number(E[1]),Y=Number(E[2])-1,V=Ki(r,new Date(te,Y,ln(te,Y)+H*7),ee).filter(T=>!T.isFuture);Q=V.length?Math.round(V.reduce((T,{entry:P})=>T+(P&&P.b>0?P.a/P.b*100:0),0)/V.length):0}return{...M,a:Q,b:M.a===-1?0:c&&M.parts&&M.parts[1]>0?Math.round(M.parts[0]/M.parts[1]*100):0,rawA:M.a===-1?-1:M.a,rawB:M.b}})},[S,g,c,A.period,A.monthRange,r]),W=s.useMemo(()=>{if(g||C){const E=(A.period==="week"?S:r[A.monthRange]?.daily??[]).filter(M=>M.a!==-1);if(E.length===0)return 0;const ee=g?E.reduce((M,H)=>M+(H.b>0?H.a/H.b*100:0),0):E.reduce((M,H)=>M+(H.a>0?H.a:0),0);return Math.round(ee/E.length)}return q.reduce((E,ee)=>E+(ee.a>0?ee.a:0)+(c&&ee.b>0?ee.b:0),0)},[q,S,g,C,c,A.period,A.monthRange,r]),B=v&&v.length>0?v.map(E=>({color:E.color,label:E.label})):[{color:o,label:N(l)},...c?[{color:i,label:N(c)}]:[]],O=e==="small";return t.jsx(vr,{className:O?"manager-section--compact":e==="large"?"manager-section--full":void 0,inGrid:b,title:N(a),titleClassName:O?"h5 chart-section-title--small":void 0,headRight:O?void 0:t.jsxs(t.Fragment,{children:[!m&&t.jsx(Gi,{control:A}),_&&t.jsx("span",{className:"manager-bar-chart-detail-btn",children:t.jsx(oe,{htmlType:"button",size:32,type:"dot",icon:"list",ariaLabel:N("trainingStatus.detail","\uC0C1\uC138\uBCF4\uAE30"),onClick:_})})]}),subRow:t.jsxs(t.Fragment,{children:[u?g||C||p&&f?t.jsx(Aa,{label:O?void 0:`${N(A.period==="week"?"manager.chart.weeklyPrefix":"manager.chart.monthlyPrefix")} ${N(p??l)}`,children:f?(f(W).match(/(\d+|[^\d]+)/g)??[]).map((E,ee)=>/\d/.test(E)?t.jsx("span",{className:"barchart-total__num h0",children:E},ee):t.jsx("span",{className:"barchart-total__unit h5",children:E},ee)):t.jsxs(t.Fragment,{children:[t.jsx("span",{className:"barchart-total__num h0",children:W}),d&&t.jsx("span",{className:"barchart-total__unit h5",children:N(d)})]})}):t.jsxs(Aa,{children:[t.jsx("span",{className:"barchart-total__num h0",children:W}),t.jsx("span",{className:"barchart-total__unit h5",children:N(l)}),d&&t.jsx("span",{className:"barchart-total__unit h5",children:N(d)})]}):t.jsx("span",{}),t.jsx(yr,{items:B,className:"caption-1"})]}),children:x?t.jsx("div",{className:"manager-bar-chart-loading",children:t.jsx(la,{size:32})}):t.jsx(C4,{data:q,colorA:o,colorB:c?i:void 0,labelA:N(l),labelB:c?N(c):void 0,barWidth:n??k.barWidth,height:k.height,maxOverride:g?100:void 0,tightMax:y,seriesColors:v?.map(E=>E.color),seriesLabels:v?.map(E=>E.label),rateLabels:g?{total:N("trainingStatus.today.tooltipTotal","\uC804\uCCB4"),done:N("trainingStatus.today.tooltipDone","\uC644\uB8CC")}:void 0})})}function v4(e){if(e.period==="month"){const i=e.monthRange.match(/^(\d+)년 (\d+)월$/),l=new Date,c=i?Number(i[1]):l.getFullYear(),u=i?Number(i[2]):l.getMonth()+1;return{from:new Date(c,u-1,1,0,0,0),to:new Date(c,u,0,23,59,59)}}const n=e.weekRanges.find(i=>i.value===e.weekRange);if(!n){const i=new Date;return{from:i,to:i}}const a=ln(n.year,n.month-1),r=new Date(n.year,n.month-1,a+n.week*7,0,0,0),o=new Date(r);return o.setDate(r.getDate()+6),o.setHours(23,59,59),{from:r,to:o}}const Yi={small:{diameter:96,strokeWidth:16},medium:{diameter:120,strokeWidth:18},large:{diameter:160,strokeWidth:22}};function Zi(e){return!Number.isFinite(e)||e<=0?0:e>=1?100:Math.min(99,Math.max(1,Math.round(e*100)))}function Xi({done:e,total:n,segments:a,color:r="var(--color-main)",size:o="medium",strokeWidth:i,label:l="%",hideCenter:c=!1,hideLabel:u=!1}){const d=typeof o=="number"?o:Yi[o].diameter,p=i??(typeof o=="number"?12:Yi[o].strokeWidth),h=d/2,m=(d-p)/2,g=2*Math.PI*m;if(a&&a.length>0){const v=a.reduce((x,_)=>{const b=x.length>0?x[x.length-1].acc:0,N=Number.isFinite(_.ratio)?_.ratio:0,w=Math.max(0,Math.min(N,1-b));return x.push({color:_.color,rotate:-90+b*360,dash:g*w,acc:b+w}),x},[]);return t.jsx("div",{className:"ring-chart",style:{width:d,height:d},children:t.jsxs("svg",{width:d,height:d,viewBox:`0 0 ${d} ${d}`,"aria-hidden":"true",children:[t.jsx("circle",{cx:h,cy:h,r:m,fill:"none",stroke:"var(--color-whiteLine)",strokeWidth:p}),v.map((x,_)=>x.dash>0&&t.jsx("circle",{cx:h,cy:h,r:m,fill:"none",stroke:x.color,strokeWidth:p,strokeDasharray:`${x.dash} ${g}`,strokeLinecap:"round",transform:`rotate(${x.rotate} ${h} ${h})`},_))]})})}const y=(n??0)>0?Math.min((e??0)/n,1):0,C=g*y,f=g-C;return t.jsxs("div",{className:"ring-chart",style:{width:d,height:d},children:[t.jsxs("svg",{width:d,height:d,viewBox:`0 0 ${d} ${d}`,"aria-hidden":"true",children:[t.jsx("circle",{cx:h,cy:h,r:m,fill:"none",stroke:"var(--color-whiteLine)",strokeWidth:p}),y>0&&t.jsx("circle",{cx:h,cy:h,r:m,fill:"none",stroke:r,strokeWidth:p,strokeDasharray:`${C} ${f}`,strokeLinecap:y<.02||y>.98?"butt":"round",transform:`rotate(-90 ${h} ${h})`})]}),!c&&t.jsxs("div",{className:`ring-chart__center${u?"":` ${d<=96?"ring-chart__center--small":o==="medium"?"ring-chart__center--medium":"ring-chart__center--large"}`}`,children:[t.jsx("span",{className:`ring-chart__pct ${d<=96?"h2":"h1"}`,children:Zi(y)}),!u&&t.jsx("span",{className:`ring-chart__label ${d<=96?"caption-2":"caption-1"}${d<=96||o==="medium"?" ring-chart__label--tight":""}`,children:l})]})]})}function x4({titleKey:e,headRight:n,icon:a,showTotal:r,totalLabelKey:o,legend:i,loading:l,className:c,inGrid:u=!1,...d}){const{t:p}=he.useTranslation();if(!e)return t.jsx(Xi,{...d});const h=(d.total??0)>0?Zi(Math.min((d.done??0)/d.total,1)):0,m=d.size==="small",g=d.size==="large",y=[c,m?"manager-section--compact":g?"manager-section--full":""].filter(Boolean).join(" ")||void 0,C=a&&t.jsx("span",{className:"chart-section-icon",children:t.jsx(Oe,{icon:a,className:"chart-section-icon-inner"})});return t.jsx(vr,{className:y,inGrid:u,title:p(e),titleClassName:m?"h5 chart-section-title--small":void 0,headRight:C||(m?void 0:n),subRow:(r||i)&&t.jsxs(t.Fragment,{children:[r?t.jsxs(Aa,{label:!m&&o?p(o):void 0,children:[t.jsx("span",{className:"barchart-total__num h0",children:h}),t.jsx("span",{className:"barchart-total__unit h5",children:"%"})]}):t.jsx("span",{}),i&&t.jsx(yr,{items:i})]}),children:l?t.jsx("div",{className:"manager-bar-chart-loading",children:t.jsx(la,{size:32})}):t.jsx("div",{className:"ring-chart-section-body ring-chart-section-body--offset",children:t.jsx(Xi,{...d,hideCenter:m||d.hideCenter})})})}function _4({label:e,value:n,change:a,changeType:r,icon:o,tooltip:i,onClick:l}){const c=s.useRef(null),{anchorRect:u,openAt:d,close:p}=_a(),h=s.useCallback(()=>{i&&c.current&&d(c.current)},[i,d]),m=r??(a===void 0?void 0:a>0?"up":a<0?"down":"neutral"),g=a===void 0?void 0:a>0?`+${a}`:`${a}`,y=s.useCallback(C=>{l&&(C.key==="Enter"||C.key===" ")&&(C.preventDefault(),l())},[l]);return t.jsxs("div",{ref:c,className:`manager-stat-card${l?" manager-stat-card--clickable":""}`,onClick:l,onKeyDown:l?y:void 0,onPointerEnter:h,onPointerLeave:p,onFocus:h,onBlur:p,role:l?"button":void 0,tabIndex:l?0:void 0,"aria-label":l?[e,n,g].filter(C=>C!==void 0&&C!=="").join(" "):void 0,children:[i&&u&&t.jsx(gn,{anchorRect:{left:u.left,top:u.top+21,right:u.right,bottom:u.bottom,width:u.width,height:u.height},text:i}),t.jsxs("div",{className:"manager-stat-card__label-row",children:[t.jsx("span",{className:"manager-stat-card__label h5",children:e}),o&&t.jsx("span",{className:"manager-stat-card__icon",children:t.jsx(Oe,{icon:o,className:"manager-stat-card__icon-inner"})})]}),t.jsx("div",{className:"manager-stat-card__content",children:t.jsxs("div",{className:"manager-stat-card__left",children:[t.jsx("div",{className:"manager-stat-card__value h2",children:n}),g&&t.jsx("div",{className:`manager-stat-card__change manager-stat-card__change--${m??"neutral"} caption-1`,children:g})]})})]})}function Ji({value:e,onChange:n,min:a=0,max:r=100,step:o=1,orientation:i="horizontal",size:l=24,disabled:c=!1,ariaLabel:u,length:d,className:p,label:h,formatValue:m,labelPos:g,labelAlign:y="right",showMinMax:C=!1,minLabel:f,maxLabel:v,showBgTick:x=!1,showFillTick:_=!1,tickStep:b,tickShape:N="dot"}){n&&!u&&qn("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 w=Math.min(r,Math.max(a,e)),k=r>a?(w-a)/(r-a):0,j=i==="vertical",A=!n,S=T=>n?.(Number(T.target.value)),q=typeof d=="number"?`${d}px`:d,W={"--slider-ratio":String(k),"--slider-thumb":`${l}px`,...q?j?{height:q}:{width:q}:{}},B=b??o,O=(x||_)&&B>0&&r>a?Math.floor((r-a)/B+1e-6):0;if(O>0&&O<=100){const T=N!=="dash",P=ae=>T?`radial-gradient(circle, ${ae} 0.5px, transparent 1px)`:j?`linear-gradient(to bottom, transparent calc(50% - 2px), ${ae} calc(50% - 2px), ${ae} calc(50% + 2px), transparent calc(50% + 2px))`:`linear-gradient(to right, transparent calc(50% - 2px), ${ae} calc(50% - 2px), ${ae} calc(50% + 2px), transparent calc(50% + 2px))`,F=T?"2px":"4px",L=[],R=[],z=[];for(let ae=0;ae<=O;ae++){const ne=ae*B/(r-a);if(ne>1+1e-6)break;const re=`${((j?1-ne:ne)*100).toFixed(4)}%`,pe=ne<=k+1e-6;if(pe?!_:!x)continue;const _e=pe?"var(--slider-tick-color-on-fill, var(--color-deepWhite))":"var(--slider-tick-color, var(--color-lightGray))";L.push(P(_e)),R.push(j?`${F} var(--slider-thumb)`:`var(--slider-thumb) ${F}`),z.push(j?`center ${re}`:`${re} center`)}L.push(j?"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))"),R.push("100% 100%"),z.push("0 0"),W.backgroundImage=L.join(", "),W.backgroundSize=R.join(", "),W.backgroundPosition=z.join(", "),W.backgroundRepeat="no-repeat"}const E=t.jsx("input",{type:"range",className:ye("slider",`slider--${i}`,A&&"slider--static",!h&&!C&&p),min:a,max:r,step:o,value:w,disabled:c,readOnly:A,tabIndex:A?-1:void 0,"aria-label":u,"aria-orientation":i,onChange:S,style:W});if(!h&&!C)return E;const ee=t.jsx("span",{className:"slider-wrap__minmax caption-1",children:f??a}),M=t.jsx("span",{className:"slider-wrap__minmax caption-1",children:v??r}),H=C?t.jsxs("div",{className:ye("slider-track-group",`slider-track-group--${i}`,!h&&p),children:[j?M:ee,E,j?ee:M]}):E;if(!h)return H;const Q=g??(j?"bottom":"right"),te=`${Math.round(r>a?(w-a)/(r-a)*100:0)}%`,Y=m?m(w):h==="percent"?te:h==="count"?`${w} / ${r}`:String(w),V=t.jsx("span",{className:"slider-wrap__value body-3b",children:Y});return t.jsxs("div",{className:ye("slider-wrap",`slider-wrap--${i}`,`slider-wrap--label-${Q}`,`slider-wrap--align-${y}`,p),children:[H,V]})}const w4=.86,k4=250,xr=(e,n,a,r)=>Math.round(Math.min(r,Math.max(a,e-n))),_r=(e,n,a,r)=>{const o=xr(e,n,a,r);return`${o<0?"-":"+"}${Math.abs(o)} dB`};function wr({analyser:e,audioElement:n,orientation:a="horizontal",length:r,label:o,labelPos:i,labelAlign:l="right",floorDb:c=-60,refDb:u=-35,displayMin:d=-5,displayMax:p=25,className:h,ariaLabel:m}){const g=s.useRef(null),y=s.useRef(null),C=s.useRef(null),f=s.useRef(null),[v,x]=s.useState(null);s.useEffect(()=>{const w=ee=>{const M=_r(ee,u,d,p);C.current&&(C.current.textContent=M);const H=g.current;H&&(H.setAttribute("aria-valuenow",String(xr(ee,u,d,p))),H.setAttribute("aria-valuetext",M))},k=e??zm(n)??(v&&v.el===n?v.node:null),j=y.current;if(!k||!j){j?.style.setProperty("--meter-level","0"),w(c);let ee=!1;return!e&&n&&fa(n).then(M=>{!ee&&M&&x({el:n,node:M})}),()=>{ee=!0}}Qa();const A=new Float32Array(k.fftSize);let S=0,q=0,W=0,B=0,O=null;const E=ee=>{const M=Wm(k,A);S=M>S?M:S*w4;const H=S>1e-5?20*Math.log10(S):-1/0,Q=Math.max(c,H),te=Q-u,Y=Math.min(1,Math.max(0,(te-d)/(p-d)));if(j.style.setProperty("--meter-level",Y.toFixed(3)),q+=Q,W+=1,ee-B>=k4){const V=q/W;O=O==null?V:O*.6+V*.4,w(O),q=0,W=0,B=ee}f.current=requestAnimationFrame(E)};return f.current=requestAnimationFrame(E),()=>{f.current!=null&&cancelAnimationFrame(f.current),f.current=null}},[e,n,v,c,u,d,p]);const _=typeof r=="number"?`${r}px`:r,b=t.jsx("div",{className:"audio-meter__track",style:_?a==="vertical"?{height:_}:{width:_}:{},children:t.jsx("div",{ref:y,className:"audio-meter__fill"})}),N=i??(a==="vertical"?"bottom":"right");return t.jsxs("div",{ref:g,className:ye("audio-meter",`audio-meter--${a}`,o&&`audio-meter--label-${N}`,o&&`audio-meter--align-${l}`,h),role:"meter","aria-label":m,"aria-valuemin":d,"aria-valuemax":p,"aria-valuenow":xr(c,u,d,p),"aria-valuetext":_r(c,u,d,p),children:[b,o&&t.jsx("span",{ref:C,className:"audio-meter__value caption-2",children:_r(c,u,d,p)})]})}const Qi=500;function el({message:e,position:n,duration:a,onClose:r}){const[o,i]=s.useState(!1),[l,c]=s.useState(!1),u=s.useRef(l),d=s.useRef(o);s.useEffect(()=>{u.current=l},[l]),s.useEffect(()=>{d.current=o},[o]);const p=s.useRef(null),h=s.useRef(""),m=s.useRef(r);s.useEffect(()=>{m.current=r});const g=a,y=s.useRef(null),C=s.useRef(0),f=s.useRef(0),v=s.useRef(!1),x=s.useRef(null),_=s.useRef(null),b=s.useRef(null),N=s.useRef(null),w=s.useRef(()=>{});w.current=A=>{A<0||(C.current=Date.now(),f.current=A,y.current=setTimeout(()=>{y.current=null,i(!1),x.current=setTimeout(()=>{c(!1);try{m.current()}catch{}},Qi)},A))};const k=s.useCallback(()=>{v.current||!y.current||(v.current=!0,clearTimeout(y.current),y.current=null,f.current=Math.max(0,f.current-(Date.now()-C.current)))},[]),j=s.useCallback(()=>{v.current&&(v.current=!1,w.current(f.current))},[]);return s.useEffect(()=>{if(e!==h.current&&(y.current&&(clearTimeout(y.current),y.current=null),x.current&&(clearTimeout(x.current),x.current=null)),e){if(d.current)return g>0&&!y.current&&(v.current?f.current=g:w.current(g)),h.current=e,()=>{y.current&&(clearTimeout(y.current),y.current=null)};const A=()=>{const S=p.current;if(S)try{S.classList.remove("is-visible"),S.style.transition="none",n==="top"?S.style.transform="translateX(-50%) translateY(-16px)":S.style.transform="translateX(-50%) translateY(16px)",S.style.opacity="0",S.offsetWidth,S.style.transition="",S.classList.add("is-visible"),N.current&&clearTimeout(N.current),N.current=setTimeout(()=>{N.current=null;try{S.style.opacity="",S.style.transform="",S.style.transition=""}catch{}},60)}catch{}};u.current?(A(),i(!0)):(c(!0),_.current=requestAnimationFrame(()=>{b.current=requestAnimationFrame(()=>{A(),i(!0)})})),g>0&&(v.current=!1,w.current(g))}else i(!1),x.current=setTimeout(()=>c(!1),Qi);return h.current=e,()=>{y.current&&clearTimeout(y.current),x.current&&clearTimeout(x.current),_.current&&cancelAnimationFrame(_.current),b.current&&cancelAnimationFrame(b.current),N.current&&clearTimeout(N.current),y.current=null,x.current=null,_.current=null,b.current=null,N.current=null}},[e,g,n]),{mounted:l,showing:o,popupRef:p,pause:k,resume:j}}function Fn({message:e="",position:n="top",type:a="normal",onClose:r=()=>{},duration:o=2e3}){const{mounted:i,showing:l,popupRef:c,pause:u,resume:d}=el({message:e,position:n,duration:o,onClose:r});if(!i)return null;const p=a==="notice"||a==="warning"?a:"normal",h=t.jsx("div",{ref:c,className:`toast toast--${n} ${l?"is-visible":""}`,role:"status","aria-live":"polite",onMouseEnter:u,onMouseLeave:d,onFocusCapture:u,onBlurCapture:d,children:t.jsx("div",{className:`toast__inner toast__inner--${p} body-2`,children:e})});return typeof document<"u"?It.createPortal(h,document.body):h}const A4=24;function N4({value:e,max:n=100,size:a=8,color:r,trackColor:o,label:i,formatValue:l,labelPos:c,labelAlign:u="right",ariaLabel:d,className:p}){const h=Number.isFinite(n)&&n>0?n:1,m=Math.max(0,Math.min(Number.isFinite(e)?e:0,h)),g=m/h*100,y=Number.isFinite(n)&&n>0?n:0,C=c??(a>=A4?"inside":"bottom"),f=C==="center"?"inside":C,v=f==="inside"&&(u==="left"?g>=15:u==="center"?g>=50:g>=85),x={};return r&&(x["--progress-bar-fill"]=r),o&&(x["--progress-bar-track"]=o),t.jsxs("div",{className:ye("progress-bar",`progress-bar--${a}`,`progress-bar--label-${f}`,i&&`progress-bar--align-${u}`,i&&v&&"progress-bar--label-on-fill",p),style:x,children:[t.jsx("div",{className:"progress-bar__track",role:"progressbar","aria-valuenow":m,"aria-valuemin":0,"aria-valuemax":y,"aria-label":d,children:t.jsx("div",{className:"progress-bar__fill",style:{width:`${g}%`}})}),i&&t.jsx("span",{className:"progress-bar__label caption-1b",children:l?l(m):i==="percent"?`${Math.round(g)}%`:i==="raw"?String(m):`${m} / ${y}`})]})}const B4={position:"absolute",width:1,height:1,margin:-1,padding:0,overflow:"hidden",clipPath:"inset(50%)",whiteSpace:"nowrap",border:0},S4="rgba(255, 255, 255, 0.16)";function tl({max:e,index:n,inactiveBg:a,inactiveColor:r,transparent:o,variant:i="numbered",announce:l=!1,ariaLabel:c}){const{t:u}=he.useTranslation(),d=Xt("(max-width: 767px)");if(!Number.isInteger(e)||e<=0)return null;const p=Number.isInteger(n)?Math.max(0,Math.min(n,e-1)):0,h=c??u("progress.steps",{current:p+1,total:e,defaultValue:"\uC9C4\uD589 \uB2E8\uACC4 {{current}} / {{total}}"}),m={};return a&&(m["--pi-inactive-bg"]=a),r&&(m["--pi-inactive-color"]=r),o&&(a||(m["--pi-inactive-bg"]=S4),r||(m["--pi-inactive-color"]="var(--color-white)")),i==="dot"?t.jsxs("div",{className:"progress-indicator progress-indicator--dot",style:m,role:l?"status":"img","aria-label":l?void 0:h,children:[l&&t.jsx("span",{style:B4,children:h}),Array.from({length:e}).map((g,y)=>t.jsx("span",{"aria-hidden":"true",className:`progress-indicator-dot--dot${y<p?" done":y===p?" active":""}`},y))]}):d?t.jsx("div",{className:"progress-indicator progress-indicator--mobile",style:m,role:"list","aria-label":h,children:t.jsxs("span",{role:"listitem",className:"progress-indicator-dot active body-3",children:[p+1," / ",e]})}):t.jsx("div",{className:"progress-indicator",style:m,role:"list","aria-label":h,children:Array.from({length:e}).map((g,y)=>t.jsx("span",{role:"listitem","aria-current":y===p?"step":void 0,className:`progress-indicator-dot ${y<p?" done":y===p?" active":""} body-3`,children:y+1},y))})}function D4(e){if(!e)return[];const n=[];let a=0,r="";for(const o of e.trim()){if(o==="("?a++:o===")"&&a--,/\s/.test(o)&&a===0){r&&(n.push(r),r="");continue}r+=o}return r&&n.push(r),n}function j4({children:e,className:n,style:a}){return t.jsx("div",{className:n?`table-cell ${n}`:"table-cell",style:a,children:e})}function kr({variant:e="default",children:n,className:a,draggable:r,onClick:o,onMouseEnter:i,onMouseLeave:l,onDragStart:c,onDragEnd:u,expandedContent:d}){const p=s.useCallback(h=>{o&&h.target===h.currentTarget&&(h.key==="Enter"||h.key===" ")&&(h.preventDefault(),o())},[o]);return e==="loading"?t.jsx("div",{className:"table-row-wrap",children:t.jsx("div",{className:"table-row table-row--loading",children:t.jsx(la,{size:28})})}):e==="empty"?t.jsx("div",{className:"table-row-wrap",children:t.jsx("div",{className:"table-row table-row--empty body-3",children:n})}):t.jsxs("div",{className:"table-row-wrap",children:[t.jsx("div",{className:a?`table-row ${a}`:"table-row",draggable:r,onClick:o,onKeyDown:o?p:void 0,onMouseEnter:i,onMouseLeave:l,onDragStart:c,onDragEnd:u,role:o?"button":void 0,tabIndex:o?0:void 0,children:n}),d&&t.jsx("div",{className:"table-row-expand",children:d})]})}function T4({dir:e}){return t.jsx(e==="asc"?jo:Do,{className:"table-field__sort-arrow",size:16,strokeWidth:2})}function E4({children:e,onClick:n,className:a,sortDir:r,onResizeStart:o}){const i=s.useCallback(l=>{n&&l.target===l.currentTarget&&(l.key==="Enter"||l.key===" ")&&(l.preventDefault(),n())},[n]);return t.jsxs("div",{onClick:n,onKeyDown:n?i:void 0,role:n?"button":void 0,tabIndex:n?0:void 0,"aria-sort":r?r==="asc"?"ascending":"descending":void 0,className:ye("table-field body-3",a,r?"table-field--sorted":"",o?"table-field--resizable":""),children:[e,r&&t.jsx(T4,{dir:r}),o&&t.jsx("span",{className:"table-field__resizer",onPointerDown:o,onClick:l=>l.stopPropagation(),"aria-hidden":"true"})]})}function Ar({fields:e=[],headerGroups:n,items:a=[],renderRow:r,onRowClick:o,isRowClickable:i,onRowMouseEnter:l,onRowMouseLeave:c,onRowDragStart:u,onRowDragEnd:d,draggingId:p,gridTemplateColumns:h,mobileGridTemplateColumns:m,resizable:g=!1,resizeMode:y="grow",resizeStorageKey:C,size:f="small",title:v,icon:x,count:_,collapsed:b=!1,onToggleCollapse:N,headerActions:w,empty:k,loading:j,dragOver:A=!1,onDragOver:S,onDragLeave:q,onDrop:W,renderExpandedRow:B,expandedId:O}){const{t:E}=he.useTranslation(),ee=Xt("(max-width: 767px)"),M=m&&ee?m:null,H=g&&!M,Q=48,te=C?`table-cols:${C}`:null,Y=s.useRef(null),V=s.useRef(()=>!1),T=s.useRef([]),P=s.useRef(null),F=X=>{if(!X||typeof window>"u")return null;try{const ue=JSON.parse(window.localStorage.getItem(X)??"null");return Array.isArray(ue)&&ue.length>0&&ue.every(ke=>typeof ke=="number"&&Number.isFinite(ke)&&ke>0)?ue:null}catch{return null}},[L,R]=s.useState(()=>F(te)),[z,ae]=s.useState(te);z!==te&&(ae(te),R(F(te)));const ne=s.useRef(L);s.useEffect(()=>{ne.current=L},[L]);const re=s.useCallback(X=>{const ue=P.current;ue&&R(ke=>{if(!ke)return ke;const Le=[...ke];if(ue.next!=null&&ue.startWNext!=null){const Fe=X.clientX-ue.startX,De=Math.max(Q-ue.startW,Math.min(ue.startWNext-Q,Fe));Le[ue.index]=ue.startW+De,Le[ue.next]=ue.startWNext-De}else Le[ue.index]=Math.max(Q,ue.startW+(X.clientX-ue.startX));return Le})},[]),pe=s.useCallback(()=>{if(P.current=null,window.removeEventListener("pointermove",re),window.removeEventListener("pointerup",pe),document.body.style.cursor="",document.body.style.userSelect="",te&&ne.current)try{window.localStorage.setItem(te,JSON.stringify(ne.current))}catch{}},[re,te]),_e=s.useCallback((X,ue)=>{ue.preventDefault(),ue.stopPropagation();const ke=Y.current;if(!ke)return;const Le=Array.from(ke.children).map(De=>De.getBoundingClientRect().width),Fe=y==="fit"?e.findIndex((De,Pe)=>Pe>X&&De.resizable!==!1):-1;P.current=Fe>=0?{index:X,startX:ue.clientX,startW:Le[X],next:Fe,startWNext:Le[Fe]}:{index:X,startX:ue.clientX,startW:Le[X]},R(Le),window.addEventListener("pointermove",re),window.addEventListener("pointerup",pe),document.body.style.cursor="col-resize",document.body.style.userSelect="none"},[re,pe,y,e]),Z=s.useCallback(()=>{const X=Y.current,ue=X?.closest(".table-wrap");if(!X||!ue)return;const ke=ue.style.getPropertyValue("--table-grid-cols");ue.style.setProperty("--table-grid-cols",e.map((ge,He)=>V.current(He)?T.current[He]:"max-content").join(" "));const Le=Array.from(ue.querySelectorAll(".table-row")).filter(ge=>!ge.classList.contains("table-row--loading")&&!ge.classList.contains("table-row--empty")),Fe=e.map((ge,He)=>{let Be=X.children[He]?.getBoundingClientRect().width??0;for(const Ee of Le){const Ne=Ee.children[He];Ne&&(Be=Math.max(Be,Ne.getBoundingClientRect().width))}return Math.max(Q,Math.ceil(Be))}),De=window.getComputedStyle(X),Pe=X.clientWidth-(parseFloat(De.paddingLeft)||0)-(parseFloat(De.paddingRight)||0);ke?ue.style.setProperty("--table-grid-cols",ke):ue.style.removeProperty("--table-grid-cols");let Me=Fe;const Je=Fe.reduce((ge,He,Be)=>ge+(V.current(Be)?He:0),0),ze=Fe.reduce((ge,He,Be)=>ge+(V.current(Be)?0:He),0),Ve=Pe-Je;if(Pe>0&&ze>0&&Ve>0){const ge=Ve/ze;Me=Fe.map((Be,Ee)=>V.current(Ee)?Be:Math.max(Q,Math.round(Be*ge)));const He=Math.round(Ve-Me.reduce((Be,Ee,Ne)=>Be+(V.current(Ne)?0:Ee),0));if(He!==0){let Be=-1;Me.forEach((Ee,Ne)=>{!V.current(Ne)&&(Be<0||Ee>Me[Be])&&(Be=Ne)}),Be>=0&&(Me[Be]=Math.max(Q,Me[Be]+He))}}if(R(Me),te)try{window.localStorage.setItem(te,JSON.stringify(Me))}catch{}},[e,y,te]);s.useEffect(()=>()=>{P.current&&(window.removeEventListener("pointermove",re),window.removeEventListener("pointerup",pe),document.body.style.cursor="",document.body.style.userSelect="")},[re,pe]);const ie=D4(h),J=ie.filter(X=>/\b(auto|min-content|max-content)\b|fit-content\(/.test(X));J.length>0&&qn(`table-content-track:${h}`,`[ihabdevteam-core] Table \uC758 gridTemplateColumns \uC5D0 \uB0B4\uC6A9\uC73C\uB85C \uD06C\uAE30\uAC00 \uC815\uD574\uC9C0\uB294 \uD2B8\uB799(${J.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: ${h})`);const be=X=>/^\d+(\.\d+)?px$/.test(ie[X]??"");V.current=be,T.current=ie;const xe=X=>y==="fit"&&!be(X)?"fr":"px",Ce=L&&L.length===e.length&&(y==="fit"||a.length>0),fe=M??(Ce?e.map((X,ue)=>X.resizable===!1&&ie[ue]?ie[ue]:`${L[ue]}${xe(ue)}`).join(" "):h),ve=fe?{"--table-grid-cols":fe}:void 0,Se=v!==void 0;return t.jsx("div",{className:`table-wrap table-wrap--${f}${H?" table-wrap--resizable":""}${A?" table-wrap--dragover":""}${b?" table-wrap--collapsed":""}`,style:ve,onDragOver:S,onDragLeave:q,onDrop:W,children:t.jsxs("div",{className:"table body-2",children:[Se&&t.jsxs("div",{className:"table-header",onClick:N,role:N?"button":void 0,tabIndex:N?0:void 0,"aria-expanded":N?!b:void 0,onKeyDown:N?X=>{X.target===X.currentTarget&&(X.key==="Enter"||X.key===" ")&&(X.preventDefault(),N())}:void 0,children:[N&&t.jsx(oe,{htmlType:"button",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:b?"chevron-right":"chevron-down",ariaLabel:b?E("common.expand","\uD3BC\uCE58\uAE30"):E("common.collapse","\uC811\uAE30"),className:"table-header__chevron"}),x&&t.jsx(Oe,{icon:x,label:typeof v=="string"?v:void 0,className:"table-header__icon"}),t.jsx("span",{className:"table-header__title h5b",children:v}),_!==void 0&&t.jsx("span",{className:"table-header__count body-3b",children:_}),w&&t.jsx("span",{className:"table-header__actions",onClick:X=>X.stopPropagation(),children:w})]}),!b&&t.jsxs(t.Fragment,{children:[n&&n.length>0&&t.jsx("div",{className:"table-fields table-fields--groups",children:n.map((X,ue)=>t.jsx("div",{className:ye("table-field body-3",X.className),style:{gridColumn:`span ${X.span}`},children:X.label},ue))}),t.jsxs("div",{className:ye("table-fields-strip",H&&"table-fields-strip--resizable"),children:[t.jsx("div",{className:"table-fields",ref:Y,children:e.map((X,ue)=>t.jsx(E4,{onClick:X.onClick,className:X.className,sortDir:X.sortDir,onResizeStart:H&&ue<e.length-1&&X.resizable!==!1&&(y!=="fit"||e.some((ke,Le)=>Le>ue&&ke.resizable!==!1))?ke=>_e(ue,ke):void 0,children:X.label},ue))}),H&&t.jsx(oe,{htmlType:"button",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:"chevrons-left-right-ellipsis",ariaLabel:E("table.resetColumns","\uCE78 \uB108\uBE44 \uCD08\uAE30\uD654"),showTooltipInfo:E("table.resetColumns","\uCE78 \uB108\uBE44 \uCD08\uAE30\uD654"),className:"table-fields__reset",onClick:Z})]}),t.jsx("div",{className:"table-body",children:j?t.jsx(kr,{variant:"loading"}):a.length===0&&k?t.jsx(kr,{variant:"empty",children:k}):a.map((X,ue)=>{const ke=p!=null&&X.id===p,Le=!!o&&(i?i(X):!0),Fe=O!=null&&(O instanceof Set?O.has(X.id):X.id===O);return t.jsx(kr,{className:`${Le?" table-row--clickable":""}${u?" table-row--draggable":""}${ke?" table-row--dragging":""}`.trim(),draggable:!!u,onClick:Le?()=>o(X):void 0,onMouseEnter:l?De=>l(X,De):void 0,onMouseLeave:c?De=>c(X,De):void 0,onDragStart:u?De=>u(X,De):void 0,onDragEnd:d?De=>d(X,De):void 0,expandedContent:Fe&&B?B(X):void 0,children:r(X).map((De,Pe)=>t.jsx(j4,{className:De.className,style:De.style,children:De.content},Pe))},String(X.id??ue))})})]})]})})}function nl(e){switch(e){case"\uBCF4\uCCAD\uAE30":return"main";case"\uC778\uACF5\uC640\uC6B0":return"sub";default:return"default"}}const M4={\uBCF4\uCCAD\uAE30:"hearingAid",\uC778\uACF5\uC640\uC6B0:"cochlearImplant"};function L4(e,n){const a=M4[e];return a?n(`device.type.${a}`,{defaultValue:e}):e}function al(e,n){return n!=="wornAt"?String(e[n]??""):e.wornYear?`${e.wornYear}-${e.wornMonth.padStart(2,"0")}-${e.wornDay.padStart(2,"0")}`:""}function $4({rows:e,onSelect:n,onDelete:a,onWear:r,onRelease:o,onAdd:i}){const{t:l}=he.useTranslation(),c=y=>y==="\uC88C"?l("device.direction.left","\uC88C"):l("device.direction.right","\uC6B0"),{\uC815\uB82C:u,\uCE78:d}=G0(),p=s.useMemo(()=>{if(!u)return e;const{key:y,asc:C}=u;return[...e].sort((f,v)=>{const x=y==="worn"?Number(v.worn)-Number(f.worn):al(f,y).localeCompare(al(v,y),"ko");return C?x:-x})},[e,u]),{pageRows:h,pageSizeProps:m,paginationProps:g}=U0(p,u);return t.jsxs("div",{className:"dlp-side-table",children:[t.jsx(gr,{count:{value:e.length,unit:l("customers.device.unit","\uAC1C")},pageSize:m,pagination:g,actions:i&&t.jsx(oe,{htmlType:"button",size:40,type:"bar",variant:"main",icon:"plus",label:l("customers.device.addButton","\uAE30\uAE30 \uCD94\uAC00"),onClick:i})}),t.jsx(Ar,{resizable:!0,resizeMode:"fit",resizeStorageKey:"customer-device-history-v2",fields:[{...d(l("customers.device.wearingNow","\uCC29\uC6A9"),"worn"),resizable:!1},d(l("device.direction.label","\uBC29\uD5A5"),"side"),d(l("device.deviceType","\uC885\uB958"),"device"),d(l("device.brand","\uBE0C\uB79C\uB4DC"),"brand"),d(l("device.fitType","\uCC29\uC6A9\uD615\uD0DC"),"fitType"),d(l("device.productName","\uC81C\uD488\uBA85"),"productName"),d(l("device.wornDate","\uCC29\uC6A9\uC77C"),"wornAt"),...a?[{label:"",resizable:!1}]:[]],items:h.map((y,C)=>({id:y.id??`${y.side}-${C}`,row:y})),gridTemplateColumns:`56px 110px 110px minmax(120px, 1fr) 100px minmax(120px, 1fr) 110px${a?" 80px":""}`,renderRow:({row:y})=>[{content:t.jsx("span",{className:"dlp-worn-check",onClick:C=>C.stopPropagation(),children:t.jsx(Hi,{checked:y.worn,disabled:!r||!o,ariaLabel:y.worn?l("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C"):l("customers.device.wear","\uCC29\uC6A9"),onChange:C=>{C?r?.(y):o?.(y)}})})},{content:t.jsx("span",{children:c(y.side)})},{content:y.device?t.jsx(it,{size:"small",variant:nl(y.device),fill:"soft",label:L4(y.device,l)}):t.jsx("span",{})},{content:t.jsx("span",{children:y.brand})},{content:t.jsx("span",{children:y.fitType||"-"})},{content:t.jsx("span",{children:y.productName||"-"})},{content:t.jsx("span",{className:"dlp-date",children:y.wornYear?`${y.wornYear}.${y.wornMonth}.${y.wornDay}`:"-"})},...a?[{content:t.jsx("span",{className:"dlp-row-actions",children:t.jsx(oe,{htmlType:"button",size:28,type:"bar",variant:"transparent-gray",label:l("common.delete","\uC0AD\uC81C"),onClick:C=>{C?.stopPropagation(),a(y)}})})}]:[]],onRowClick:({row:y})=>n(y),empty:l("customers.device.historyEmpty","\uB4F1\uB85D\uB41C \uAE30\uAE30 \uC774\uB825\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.")})]})}function rl(e,n){return e?{role:n?.role??"button",tabIndex:0,...n?.selected===void 0?{}:{"aria-selected":n.selected},onKeyDown:a=>{a.target===a.currentTarget&&(a.key!=="Enter"&&a.key!==" "||(a.preventDefault(),e(a)))}}:{}}function R4(e,n){return new Date(e,n+1,0).getDate()}function P4(e,n){return new Date(e,n,1).getDay()}function I4({visits:e=[],onVisitClick:n,onVisitMove:a,onDayClick:r}){const{t:o}=he.useTranslation(),i=s.useMemo(()=>o("calendar.dow",{returnObjects:!0}),[o]),[l,c]=s.useState(new Date().getFullYear()),[u,d]=s.useState(new Date().getMonth()),[p,h]=s.useState(null),m=s.useRef(null),g=new Date,y=s.useMemo(()=>{const b={};return e.forEach(N=>{b[N.date]||(b[N.date]=[]),b[N.date].push(N)}),b},[e]),C=s.useMemo(()=>{const b=R4(l,u),N=P4(l,u),w=[];for(let k=0;k<N;k++)w.push(null);for(let k=1;k<=b;k++)w.push(k);for(;w.length<35;)w.push(null);return w},[l,u]),f=s.useCallback(()=>{u===0?(c(b=>b-1),d(11)):d(b=>b-1)},[u]),v=s.useCallback(()=>{u===11?(c(b=>b+1),d(0)):d(b=>b+1)},[u]),x=b=>`${l}-${String(u+1).padStart(2,"0")}-${String(b).padStart(2,"0")}`,_=b=>g.getFullYear()===l&&g.getMonth()===u&&g.getDate()===b;return t.jsxs("div",{children:[t.jsxs("div",{className:"calendar-nav",children:[t.jsx("button",{type:"button",className:"calendar-nav__button",onClick:f,"aria-label":o("calendar.prevMonth","\uC774\uC804 \uB2EC"),children:t.jsx(Oe,{icon:"chevron-left",label:"",className:"",svgClassName:"calendar-nav__button-icon",size:18})}),t.jsx("span",{className:"calendar-nav__title h5",children:o("calendar.yearMonth",{year:l,month:u+1})}),t.jsx("button",{type:"button",className:"calendar-nav__button",onClick:v,"aria-label":o("calendar.nextMonth","\uB2E4\uC74C \uB2EC"),children:t.jsx(Oe,{icon:"chevron-right",label:"",className:"",svgClassName:"calendar-nav__button-icon",size:18})}),t.jsxs("div",{className:"calendar-nav__legend",children:[t.jsx("span",{className:"calendar-nav__legend-dot calendar-nav__legend-dot--main"}),t.jsx("span",{className:"caption-1",children:o("calendar.legend.visited","\uBC29\uBB38")}),t.jsx("span",{className:"calendar-nav__legend-dot calendar-nav__legend-dot--sub"}),t.jsx("span",{className:"caption-1",children:o("calendar.legend.scheduled","\uC608\uC57D")}),t.jsx("span",{className:"calendar-nav__legend-dot calendar-nav__legend-dot--disabled"}),t.jsx("span",{className:"caption-1",children:o("calendar.legend.noVisit","\uBBF8\uBC29\uBB38")})]})]}),t.jsxs("div",{className:"calendar-grid",children:[i.map(b=>t.jsx("div",{className:"calendar-day-header body-3",children:b},b)),C.map((b,N)=>{if(b===null)return t.jsx("div",{className:"calendar-cell empty"},`empty-${N}`);const w=b,k=x(w),j=y[k]??[],A=p===k;return t.jsxs("div",{className:`calendar-cell${_(w)?" today":""}${A?" drag-over":""}${r?" calendar-cell--clickable":""}`,role:r?"button":void 0,tabIndex:r?0:void 0,"aria-label":r?o("calendar.addOnDate",{date:k}):void 0,onClick:r?()=>r(k):void 0,onKeyDown:r?S=>{S.target===S.currentTarget&&(S.key!=="Enter"&&S.key!==" "||(S.preventDefault(),r(k)))}:void 0,onDragOver:a?S=>{S.preventDefault(),h(k)}:void 0,onDragLeave:a?S=>{S.currentTarget.contains(S.relatedTarget)||h(null)}:void 0,onDrop:a?S=>{S.preventDefault(),m.current!=null&&(a(m.current,k),m.current=null),h(null)}:void 0,children:[t.jsx("div",{className:"calendar-cell__number body-3",children:w}),t.jsx("div",{className:"calendar-cell__badges",children:j.map((S,q)=>t.jsxs("div",{draggable:!!a,className:`calendar-visit-badge${S.status==="noVisit"?" calendar-visit-badge--no-visit":S.status==="scheduled"?" calendar-visit-badge--scheduled":""}${n?" calendar-visit-badge--clickable":""}${a?" calendar-visit-badge--draggable":""}`,onDragStart:a?W=>{m.current=S.id,W.dataTransfer.effectAllowed="move"}:void 0,onDragEnd:a?()=>{m.current=null,h(null)}:void 0,onClick:n?W=>{W.stopPropagation(),n(S)}:void 0,...rl(n?()=>n(S):void 0),"aria-label":[S.time?vs(S.time,o):null,S.customer,o(S.status==="noVisit"?"calendar.legend.noVisit":S.status==="scheduled"?"calendar.legend.scheduled":"calendar.legend.visited")].filter(Boolean).join(" "),children:[S.time&&t.jsx("span",{className:"calendar-visit-badge__time body-3",children:vs(S.time,o)}),t.jsx("span",{className:"calendar-visit-badge__name body-3",children:S.customer}),S.status==="noVisit"&&t.jsx("span",{className:"calendar-visit-badge__no-visit caption-1",children:o("calendar.legend.noVisit","\uBBF8\uBC29\uBB38")})]},S.id??q))})]},w)})]})]})}const F4={page:"h3",pagePopup:"h4",popup:"h5"};function On({type:e="page",title:n,headingLevel:a,icon:r,action:o,disc:i,children:l,className:c,style:u}){const d=F4[e],p=n||i,h=a?`h${a}`:"div";return t.jsxs("div",{className:ye("section",`section--${e}`,c),style:u,children:[p&&t.jsxs("div",{className:"section__header",children:[t.jsxs("div",{className:"section__title-row",children:[r&&t.jsx(Oe,{icon:r,label:typeof n=="string"?n:void 0,className:"section__icon"}),t.jsxs("div",{className:"section__title-group",children:[n&&t.jsx(h,{className:`section__title ${d}`,children:n}),i&&t.jsx("div",{className:"section__disc body-3",children:i})]})]}),o&&t.jsx("div",{className:"section__action",children:o})]}),l]})}function ol({icon:e,label:n,tooltip:a,wrapperStyle:r,color:o,bgColor:i,useHover:l=!0,iconSize:c="medium"}){const u=c==="small",d=ye("category-icon",u?"category-icon--small":""),p=u?16:20,h=s.useRef(null),[m,g]=s.useState(!1),y=s.useMemo(()=>{const w=r&&typeof r=="object"?{...r}:{};return!o&&!i?w:{...w,...o?{color:o,"--t-item-fg":o}:{},...i?{"--t-item-bg":i}:{}}},[r,o,i]),C=a||n,[f,v]=s.useState(null);s.useLayoutEffect(()=>{m&&v(h.current?.getBoundingClientRect()??null)},[m]),s.useEffect(()=>{if(!l&&m)try{g(!1)}catch{}},[l,m]),s.useEffect(()=>{if(!m)return;const w=k=>{const j=h.current;if(!j)return;const A=k.target;A&&!j.contains(A)&&g(!1)};return document.addEventListener("pointerdown",w,!0),()=>document.removeEventListener("pointerdown",w,!0)},[m]);const x=s.useCallback(()=>{l&&g(!0)},[l]),_=s.useCallback(()=>{l&&g(!1)},[l]),b=s.useCallback(()=>g(!1),[]),N=s.useCallback(w=>{if(w.key==="Escape"){g(!1);return}(w.key==="Enter"||w.key===" ")&&(w.preventDefault(),g(k=>!k))},[]);return t.jsxs("span",{ref:h,className:"category-icon__wrap",onPointerEnter:x,onPointerLeave:_,onFocus:x,onBlur:_,onKeyDown:N,role:"button",tabIndex:0,"aria-label":typeof C=="string"?C:void 0,"aria-haspopup":!!C,"aria-expanded":m,"data-tooltip-ignore":!0,children:[t.jsx(Oe,{icon:e,label:n,className:d,imgClassName:"category-icon__image",maskClassName:"category-icon__mask",svgClassName:"category-icon__svg",wrapperStyle:y,size:p}),m&&C&&t.jsx(gn,{anchorRect:f,text:typeof C=="string"?C:void 0,offset:8,onClose:b,className:"category-icon__tooltip",ariaLabel:typeof C=="string"?C:void 0})]})}function O4(e,n){if(!e)return{previewCodes:[],previewBucket:null};const a=e,r=l=>l.map(c=>c?.contextCode||c?.context_code).filter(Boolean).map(String);if(n==="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(n==="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(n==="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(n==="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 o=a.sentences||a.items||[],i=r(Array.isArray(o)?o:[]);return i.length===0&&(a.contextCode||a.context_code)&&i.push(String(a.contextCode||a.context_code)),{previewCodes:i,previewBucket:null}}function V4(e,n){const[a,r]=s.useState(!1),[o,i]=s.useState(-1),[l,c]=s.useState({key:"",urls:[]}),u=s.useRef(null),d=s.useRef(!1),p=s.useRef(null),[h,m]=s.useState(!1),g=s.useRef([]),{previewCodes:y,previewBucket:C}=O4(e,n),f=`${y.join(",")}|${C??""}`,v=s.useMemo(()=>l.key===f?l.urls:[],[l,f]);s.useEffect(()=>{if(!y.length)return;let _=!1;return(async()=>{const b=[],N=[];for(const w of y)try{const k=ts(w,C);if(!k){b.push("");continue}let j=null;try{j=await ns(k)}catch{}if(!j)try{const A=await as(k);A&&(j=URL.createObjectURL(A),N.push(j))}catch{}b.push(j??"")}catch{b.push("")}_?N.forEach(w=>{try{URL.revokeObjectURL(w)}catch{}}):(g.current.forEach(w=>{try{URL.revokeObjectURL(w)}catch{}}),g.current=N,c({key:f,urls:b}))})(),()=>{_=!0}},[y.join(","),C]),s.useEffect(()=>()=>{g.current.forEach(_=>{try{URL.revokeObjectURL(_)}catch{}}),g.current=[]},[]);const x=s.useCallback(async _=>{if(_.stopPropagation(),_.preventDefault(),d.current){d.current=!1;try{u.current?.pause()}catch{}r(!1),i(-1);return}if(v.filter(Boolean).length){d.current=!0,r(!0);for(let b=0;b<v.length&&d.current;b++){const N=v[b];if(N){i(b);try{await new Promise((w,k)=>{const j=new Audio(N);u.current=j,j.onended=()=>w(),j.onerror=()=>k(),j.play().catch(k)})}catch{break}}}d.current=!1,r(!1),i(-1)}},[v]);return s.useEffect(()=>()=>{d.current=!1;try{u.current?.pause()}catch{}u.current=null},[]),{playing:a,playingIndex:o,previewUrls:v,previewHover:h,setPreviewHover:m,previewBtnRef:p,handlePreview:x}}const H4=e=>{if(!e)return[];const n=typeof e.context=="string"&&e.context.trim()||typeof e.sentence=="string"&&e.sentence.trim()||typeof e.text=="string"&&e.text.trim()||"";if(n)return[String(n)];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 o=r;return o.sentence||o.text||o.context||o.question||o.title||""}return""}).filter(r=>typeof r=="string"&&r.trim().length>0).map(r=>r.trim()):[]};function Nr(e){const{index:n,type:a,trainingData:r,ariaLabel:o,depth:i,renderPopup:l,completed:c,completedIds:u,selectedIds:d,tooltipText:p,useDescriptionTooltip:h=!1,onRemove:m,hideCheckBadge:g=!1,showTypeLabel:y=!1,onComplete:C,onSelect:f,onMore:v,countLabelOverride:x,size:_="square"}=e||{},{t:b}=he.useTranslation(),[N,w]=s.useState(!1),k=s.useRef(null),[j,A]=s.useState(!1);s.useEffect(()=>{k.current?.matches(":hover")&&A(!0)},[]);const{playing:S,playingIndex:q,previewUrls:W,previewHover:B,setPreviewHover:O,previewBtnRef:E,handlePreview:ee}=V4(r,a?.key),M=s.useCallback(()=>{f?f():w(!0)},[f]),H=s.useCallback(()=>w(!1),[]),Q=s.useCallback(()=>A(!0),[]),te=s.useCallback(()=>A(!1),[]),Y=s.useCallback(()=>O(!0),[O]),V=s.useCallback(()=>O(!1),[O]),[T,P]=s.useState(null);s.useLayoutEffect(()=>{B&&P(E.current?.getBoundingClientRect()??null)},[B,E]);const[F,L]=s.useState(null);s.useLayoutEffect(()=>{j&&!N&&h&&L(k.current?.getBoundingClientRect()??null)},[j,N,h]);const R=s.useCallback(ge=>{ge.target===ge.currentTarget&&(ge.key==="Enter"||ge.key===" ")&&(ge.preventDefault(),M())},[M]),z=r||null,ae=s.useMemo(()=>{if(!h)return null;const ge=p?(Array.isArray(p)?p:[p]).filter(Boolean):null,He=ge&&ge.length>0?ge:H4(z);return He&&He.length>0?He:null},[h,p,z]),ne=s.useCallback(ge=>{ge.stopPropagation(),m?.()},[m]),re=s.useCallback(ge=>ge.stopPropagation(),[]),pe=s.useCallback(ge=>{typeof C=="function"&&C(ge)},[C]),_e=c||(u&&r?.id!=null?u.has(String(r.id)):!1),Z=!_e&&(d!=null&&r?.id!=null?d.has(String(r.id)):!1);ri("speechear.popup.close",H);const ie=xs(),J=`${a?.label||""} ${n+1}`,be=z?.title||z?.name||J;let xe=a?.icon,Ce,fe="",ve="";try{const ge=z?.category_0||z?.category_main_code||z?.category_main,He=z?.category_1||z?.category_sub_code||z?.category_sub,Be=ie.find(Ee=>Ee.key===ge);Be?.icon&&(xe=Be.icon),!Ce&&Be?.color&&(Ce={"--t-item-fg":Be.color}),!Ce&&z?.iconColor&&(Ce={"--t-item-fg":z.iconColor}),fe=Be?b(`topic.${Be.key}`,{defaultValue:Be.label||""}):"";try{const Ee=Be?.subs?.find(Ne=>Ne.key===He);ve=Ee?b(`topic.sub.${Ee.key}`,{defaultValue:Ee.label||""}):""}catch{}}catch{}const Se=ve?`${fe} / ${ve}`:fe||a?.label||be,X=ge=>b("training.countQuestions",{n:ge}),ue=ge=>b("training.countSentences",{n:ge});let ke="";try{if(z)if(a?.key==="LISTEN_IN_NOISE"){let ge=0;Array.isArray(z.items)&&z.items.length>0?ge=z.items.length:Array.isArray(z.sentences)&&z.sentences.length>0?ge=z.sentences.length:z.sentences&&(ge=1),ke=ue(ge)}else if(a?.key==="SHORT_STORY"){let ge=1;Array.isArray(r?.items)?ge=r.items.length:Array.isArray(r?.raw&&r.raw?.items)?ge=r.raw.items.length:Array.isArray(z?.questions)?ge=z.questions.length:Array.isArray(z?.sentences)&&(ge=z.sentences.length),ke=X(ge)}else if(a?.key==="LONG_STORY"){let ge=1;if(Array.isArray(z.items)&&z.items.length>0){const He=z.items.reduce((Be,Ee)=>{const Ne=Ee.questionItems;return Array.isArray(Ne)?Be+Ne.length:Array.isArray(Ee.questions)?Be+Ee.questions.length:Be},0);ge=He>0?He:z.items.length}else Array.isArray(z.questions)&&z.questions.length>0?ge=z.questions.length:Array.isArray(z.sentences)&&z.sentences.length>0&&(ge=z.sentences.length);ke=X(ge)}else if(a?.key==="ORDERING_SENTENCE"){let ge=1;Array.isArray(z.items)&&z.items.length>0?ge=z.items.length:Array.isArray(z.sentences)&&z.sentences.length>0&&(ge=z.sentences.length),ke=ue(ge)}else Array.isArray(z.items)&&(ke=z.items.length>0?X(z.items.length):"")}catch{}const Le=_==="row",Fe=_==="list"||Le,De=_==="compact",Pe=_==="small",Me=Pe&&a?.key?_0().find(ge=>ge.key===a.key):void 0,Je=Me?_s[Me.key]:void 0,ze=Me?Je?b(`trainingType.${Je}.title`,{defaultValue:Me.label}):Me.label??"":"",Ve=!!y&&!!a?.label&&a.label!==String(be)||Pe&&!!ze&&ze!==String(be);return t.jsxs(t.Fragment,{children:[t.jsxs("div",{ref:k,className:`training-block-button${Fe?" training-block-button--list":""}${Le?" training-block-button--row":""}${De?" training-block-button--compact":""}${Pe?" training-block-button--small":""}${_e?" training-block-button--completed":""}${Z?" training-block-button--selected":""}${Ve&&!Pe?" training-block-button--withType":""}${Pe&&!Ve?" training-block-button--no-type-label":""}`,onClick:M,onPointerEnter:Q,onPointerLeave:te,role:"button",tabIndex:0,onKeyDown:R,"aria-label":typeof o=="string"?o:typeof be=="string"?be:void 0,children:[t.jsxs("div",{className:"training-block-button__left",children:[y&&a?.label&&a.label!==String(be)&&t.jsx("span",{className:"training-block-button__type-label caption-1",children:a.label}),Pe&&ze&&ze!==String(be)&&t.jsx("span",{className:"training-block-button__type-label caption-2",children:ze}),t.jsx(ol,{icon:xe,label:be,tooltip:Se,wrapperStyle:Ce,iconSize:Pe||De?"small":"medium"}),!g&&(_e||Z)&&!(m&&j)&&t.jsx(it,{type:"dot",icon:"check",position:"top-left",size:"medium","aria-label":_e?b("training.completed","\uD6C8\uB828 \uC644\uB8CC"):b("training.selected","\uC120\uD0DD\uB428")}),m&&j&&t.jsx(it,{type:"dot",icon:"remove",position:"top-left",size:"medium","aria-label":b("common.remove","\uC81C\uAC70"),onClick:ne}),t.jsx("div",{className:`training-block-button__title ${De?"body-3":Pe?"body-3b":"h3"}`,children:String(be)}),t.jsxs("div",{className:"training-block-button__description",children:[(()=>{const ge=x!==void 0?x:ke;return ge?t.jsx("div",{className:`training-block-button__count ${Pe?"caption-2":"caption-1"}`,children:ge}):null})(),t.jsx("div",{className:"training-block-button__chevron",children:t.jsx(Oe,{icon:"chevron-right",label:b("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:Pe?12:20})})]}),(Fe&&!Le||Pe)&&W.length>0&&t.jsx("div",{ref:E,className:"training-block-button__preview","data-tooltip-ignore":!0,onClick:re,onPointerEnter:Y,onPointerLeave:V,children:t.jsx(oe,{htmlType:"button",size:Pe?28:32,type:"dot",icon:S?"pause":"play",variant:Pe?"transparent-lightGray":"default",useBorder:!1,selected:S,ariaLabel:S?b("training.stop","\uC815\uC9C0"):b("training.preview","\uBBF8\uB9AC \uB4E3\uAE30"),onClick:ee})})]}),v&&t.jsx("div",{className:"training-block-button__more","data-tooltip-ignore":!0,onClick:ge=>{ge.stopPropagation(),v(ge)},children:t.jsx(oe,{htmlType:"button",size:40,type:"dot",icon:"more-horizontal",variant:"transparent-lightGray",useBorder:!1,ariaLabel:b("common.more","\uB354\uBCF4\uAE30")})})]}),B&&t.jsx(gn,{anchorRect:T,text:S?b("training.stop","\uC815\uC9C0"):b("training.preview","\uBBF8\uB9AC \uB4E3\uAE30"),offset:8,onClose:V}),j&&!N&&h&&(ae?t.jsx(Sn,{anchorRect:F,items:ae,activeIndex:q,onClose:te}):z?.subTitle?t.jsx(gn,{anchorRect:F,text:z.subTitle,offset:8,onClose:te}):null),N&&l&&l({trainingData:z,typeKey:a?.key??"",onClose:H,onComplete:pe,popupTitle:String(be),popupSubTitle:a?.subTitle,depth:i!=null?String(i):void 0,popupIcon:xe,popupIconTooltip:String(Se),popupWrapperStyle:Ce})]})}const Na=20;function z4(e){const{t:n}=he.useTranslation(),{type:a,trainingDatas:r,depth:o,renderPopup:i,completedIds:l,selectedIds:c,onItemComplete:u,size:d,useDescriptionTooltip:p,onRemove:h,onMore:m,sectionType:g="page"}=e||{},[,y]=s.useState(0),C=typeof r<"u"?Array.isArray(r)?r:[]:[],f=C.length,[v,x]=s.useState(Math.min(f,Na)),_=s.useMemo(()=>Array.isArray(o)?[...o,a?.label].filter(Boolean).join(" \xB7 "):[o||"",a?.label].filter(Boolean).join(" \xB7 "),[o,a?.label]);s.useEffect(()=>{x(Math.min(f,Na))},[f]),ri("speechear.data.updated",()=>y(k=>k+1));const b=s.useRef(null),N=s.useRef(null);function w(){const k=document.activeElement;N.current=k&&k.closest?.(".training-block__more")?v:null,x(j=>Math.min(f,j+Na))}return s.useEffect(()=>{const k=N.current;if(k==null)return;N.current=null;const j=document.activeElement;j&&j!==document.body||b.current?.querySelectorAll(".training-block-button")[k]?.focus()},[v]),t.jsxs(On,{type:g,title:a?.label,icon:a?.icon,disc:a?.desc,className:"training-block",children:[t.jsx("div",{className:"training-list",ref:b,children:(C||[]).slice(0,v).map((k,j)=>{const A=k;return t.jsx(Nr,{index:j,type:a,trainingData:A,depth:_,renderPopup:i,completedIds:l,selectedIds:c,size:d,useDescriptionTooltip:p,onRemove:typeof h=="function"&&c!=null&&A?.id!=null&&c.has(String(A.id))?()=>h(A):void 0,onComplete:typeof u=="function"&&A?.id!=null?()=>u(String(A.id)):void 0,onMore:typeof m=="function"?S=>m(A,S):void 0},A?.id!=null?`${a?.key||"t"}-${String(A.id)}`:`${a?.key||"t"}-${j}`)})}),f>Na&&v<f&&t.jsx("div",{className:"training-block__more",children:t.jsx(oe,{htmlType:"button",size:48,type:"bar",icon:"plus",onClick:w,ariaLabel:n("common.loadMore","\uB354\uBCF4\uAE30"),label:n("common.loadMore","\uB354\uBCF4\uAE30"),variant:"main"})})]})}function Br(e){const n=s.useRef(null),[a,r]=s.useState(!!e),[o,i]=s.useState(!1);s.useEffect(()=>{i(!1);const u=n.current;r(!!e&&!(u?.complete&&u.naturalWidth>0))},[e]);const l=s.useCallback(()=>r(!1),[]),c=s.useCallback(()=>{r(!1),i(!0)},[]);return{imgRef:n,loading:a,failed:o,hasImage:!!e&&!o,onLoad:l,onError:c}}let bn=null;function W4(e){if(bn&&bn!==e)try{bn()}catch{}return bn=e,()=>{bn===e&&(bn=null)}}function q4(e){if(bn===e){bn=null;try{e()}catch{}}}var U4='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 G4=U4,Sr=s.forwardRef(function({item:e,disabled:n=!1,onPlayDone:a,selectable:r=!1,selected:o=!1,onSelect:i,flipDelay:l=0,hideLabel:c=!1,hideAudio:u=!1,orderRank:d=null},p){const{t:h}=he.useTranslation(),m=e.word||e.title||"",g=n||!m,y=e.audio??e.sound??e.audioKey,C=e.subLabel||e.pronunciation||"",f=e.colloquialLabel||"",[v,x]=s.useState({label:m,subLabel:C,colloquialLabel:f,homonum:e.homonum});m&&(v.label!==m||v.subLabel!==C||v.colloquialLabel!==f||v.homonum!==e.homonum)&&x({label:m,subLabel:C,colloquialLabel:f,homonum:e.homonum});const _=s.useRef(null),b=Xt("(max-width: 767px)"),[N,w]=s.useState(!1),k=`${typeof y=="string"?y:y?.src??""}\0${m}`,[j,A]=s.useState({for:"",url:""}),S=j.for===k?j.url:"",q=Rn()?.(v.label,v.homonum)??e.image??"",{imgRef:W,loading:B,hasImage:O,onLoad:E,onError:ee}=Br(q);s.useEffect(()=>{let F=!1;return(async()=>{if(y){if(typeof y=="string"){if(y.startsWith("http")||y.includes("/")){A({for:k,url:y});return}}else if(typeof y=="object"&&!Array.isArray(y)){const R=y.src;if(R){A({for:k,url:R});return}}}const L=Za();if(L&&m)try{const R=await Promise.resolve(L(m));!F&&R&&A({for:k,url:R})}catch{}})(),()=>{F=!0}},[y,m,k]);const M=s.useRef(!0),H=s.useRef(null);s.useEffect(()=>(M.current=!0,()=>{M.current=!1,H.current&&q4(H.current),H.current=null;try{_.current?.pause()}catch{}_.current=null}),[]);const Q=s.useCallback(()=>new Promise(F=>{if(typeof window<"u"&&window.speechSynthesis&&m){w(!0),window.speechSynthesis.cancel();const L=new SpeechSynthesisUtterance(m);L.lang="ko-KR",L.onend=()=>{w(!1);try{a?.()}catch{}F()},L.onerror=()=>{w(!1),F()},window.speechSynthesis.speak(L)}else F()}),[m,a]),te=s.useCallback(F=>new Promise(L=>{let R=!1;const z=()=>{R||(R=!0,w(!1),L(!1))};try{const ae=new Audio(F);_.current=ae,ae.onended=()=>{if(!R){R=!0,w(!1);try{a?.()}catch{}L(!0)}},ae.onerror=z,ae.play().catch(z)}catch{z()}}),[a]),Y=s.useCallback(async()=>{if(n||!M.current)return;const F=()=>{H.current===F&&(H.current=null);try{_.current?.pause()}catch{}try{window.speechSynthesis?.cancel()}catch{}w(!1)},L=W4(F);H.current=F;try{window.speechSynthesis?.cancel()}catch{}try{if(S&&(w(!0),await te(S)))return;const R=Fm();if(R&&m)try{const z=await Promise.resolve(R(m));if(!M.current||H.current!==F||z&&(w(!0),await te(z)))return}catch{}if(!M.current||H.current!==F)return;await Q()}finally{L(),H.current===F&&(H.current=null)}},[n,S,m,te,Q]);s.useImperativeHandle(p,()=>({play:()=>Y()}),[Y]);const V=F=>F.stopPropagation(),T=s.useCallback(F=>{if(F.stopPropagation(),!n){if(N){try{_.current?.pause()}catch{}try{window.speechSynthesis?.cancel()}catch{}w(!1);return}Y()}},[n,N,Y]),P=ye("training-word-card",n?"training-word-card--disabled":"",g?"training-word-card--flipped":"",r?"training-word-card--selectable":"",o?"training-word-card--selected":"");return t.jsx("div",{className:P,onClick:r&&!n?i:void 0,role:r?"button":void 0,"aria-pressed":r?o:void 0,tabIndex:r&&!n?0:void 0,"aria-disabled":r&&n?!0:void 0,onKeyDown:r&&!n?F=>{F.target===F.currentTarget&&(F.key==="Enter"||F.key===" "||F.key==="Spacebar")&&(F.preventDefault(),i?.())}:void 0,children:t.jsxs("div",{className:"training-word-card__flipper",style:{transitionDelay:g?"0ms":`${l}ms`},children:[t.jsxs("div",{className:"training-word-card__front",children:[o&&t.jsx("div",{className:"training-word-card__selected-badge",onClick:V,children:t.jsx(it,{type:"dot",size:40,position:"inline",animate:!0,icon:d!=null?void 0:"check",number:d??void 0,"aria-label":d!=null?h("training.nthSelected",{n:d}):h("training.selected","\uC120\uD0DD\uB428")})}),t.jsx("div",{className:"training-word-card__image-wrap",children:O?t.jsxs(t.Fragment,{children:[B&&t.jsx("div",{className:"training-word-card__spinner"}),t.jsx("img",{ref:W,className:"training-word-card__image",src:q,alt:v.label||h("common.image","\uC774\uBBF8\uC9C0"),style:{opacity:B?0:1},onLoad:E,onError:ee})]}):t.jsx("div",{className:"training-word-card__placeholder"})}),!c&&t.jsxs("div",{className:"training-word-card__body",children:[t.jsx("div",{className:"training-word-card__word",children:v.label}),v.subLabel&&t.jsxs("div",{className:"training-word-card__pronunciation",children:["[",v.subLabel,"]"]}),v.colloquialLabel&&t.jsxs("div",{className:"training-word-card__colloquial caption-1",children:["[",v.colloquialLabel,"]"]})]}),!u&&t.jsx("div",{className:"training-word-card__bottom",onClick:r?V:void 0,children:t.jsx(oe,{htmlType:"button",size:b?40:48,type:b?"dot":"bar",icon:N?"pause":"play",label:b?void 0:h("training.playSound","\uC18C\uB9AC \uB4E3\uAE30"),selected:N,onClick:T,disabled:n,ariaLabel:h("training.playSound","\uC18C\uB9AC \uB4E3\uAE30")})})]}),t.jsx("div",{className:"training-word-card__back","aria-hidden":"true",children:t.jsx("img",{src:G4,className:"training-word-card__disabled-symbol",alt:"",draggable:!1})})]})})}),K4=260;function yn(e){const{t:n}=he.useTranslation(),{title:a,subtitle:r,headerActions:o,children:i,buttons:l,footer:c,footerClassName:u="",onClose:d,closeDisabled:p=!1,beforeClose:h,closeOnBackdrop:m=!0,className:g="",ariaLabel:y,useTitle:C=!0,inline:f=!1,size:v,layer:x="modal",height:_,fillBody:b=!1,resetScrollKey:N}=e||{},[w,k]=s.useState(!1),j=s.useRef(!1),A=s.useRef(null),S=s.useId(),q=s.useRef(null);s.useEffect(()=>{},[f,a,y,g]),s.useEffect(()=>{N!==void 0&&q.current&&(q.current.scrollTop=0)},[N]);const[W,B]=s.useState(!1);s.useEffect(()=>{const F=q.current;if(!F)return;const L=()=>B(F.scrollHeight>F.clientHeight+1);if(L(),typeof ResizeObserver>"u")return;const R=new ResizeObserver(L);R.observe(F);const z=F.firstElementChild;return z&&R.observe(z),()=>R.disconnect()},[i,N]),s.useEffect(()=>{if(!f)return Pi()},[f]),s.useEffect(()=>{if(f)return;const F=document.activeElement,L=A.current;return L&&!L.contains(document.activeElement)&&(L.querySelector(Nn)??L).focus(),()=>{const R=document.activeElement;(!R||R===document.body||L&&L.contains(R))&&F?.focus?.()}},[f]),sr(A,!f);const O=s.useRef(!0);s.useEffect(()=>(O.current=!0,()=>{O.current=!1}),[]);const E=s.useCallback(()=>{!O.current||!j.current||(j.current=!1,k(!1))},[]),ee=s.useCallback(F=>{j.current||(j.current=!0,k(!0),setTimeout(()=>{let L;try{L=F?F():void 0}catch{E();return}const R=()=>{setTimeout(E,120)};L&&typeof L.then=="function"?L.then(R,E):R()},K4))},[E]),M=s.useCallback(()=>{p||h&&h()===!1||ee(d)},[ee,d,p,h]),H=s.useRef(M);s.useEffect(()=>{H.current=M});const Q=!f&&!!d;s.useEffect(()=>{if(Q)return Bn(()=>H.current())},[Q]);const te=Q&&m,Y=s.useRef(!1),V=F=>{Y.current=F.target===F.currentTarget},T=F=>{const L=Y.current;Y.current=!1,L&&F.target===F.currentTarget&&M()},P=t.jsx("div",{className:`popup ${f?"popup--inline":""} ${x==="belowPagePopup"?"popup--below-page-popup":""} ${w?"popup--closing":""} ${g}`,onPointerDown:te?V:void 0,onClick:te?T:void 0,onMouseDown:f?void 0:F=>{F.target===F.currentTarget&&F.preventDefault()},children:t.jsxs("div",{ref:A,className:`popup-panel${v?` popup-panel--${v}`:""}${_!=null?" popup-panel--has-height":""}${b?" popup-panel--fill-body":""}`,style:_!=null?{"--popup-height":typeof _=="number"?`${_}px`:_}:void 0,tabIndex:-1,role:f?void 0:"dialog","aria-modal":f?void 0:!0,"aria-labelledby":!f&&a?S:void 0,"aria-label":!f&&!a&&y?y:void 0,children:[!C&&(o||d)?t.jsxs("div",{className:"popup-close-float",children:[o,d&&t.jsx(oe,{htmlType:"button",size:40,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,onClick:M,disabled:p,ariaLabel:n("common.close","\uB2EB\uAE30")})]}):a||o||d?t.jsxs("div",{className:`popup-header${r?" popup-header--with-subtitle":""}`,children:[t.jsxs("div",{className:"popup-header-main",children:[t.jsx("span",{id:S,className:"popup-title popup-title--left h2",children:a}),r&&t.jsx("span",{className:"popup-subtitle body-3",children:r})]}),t.jsxs("div",{className:"popup-header-actions",children:[o,d&&t.jsx(oe,{htmlType:"button",size:40,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,onClick:M,disabled:p,ariaLabel:n("common.close","\uB2EB\uAE30")})]})]}):null,t.jsx("div",{className:"popup-content",ref:q,tabIndex:W?0:void 0,children:t.jsx("div",{className:"popup-content__inner",children:typeof i=="function"?i({animateThen:ee,closeWithAnimation:M}):i})}),l?.length?t.jsx("div",{className:"popup-footer popup-footer--buttons",children:l.map((F,L)=>t.jsx(oe,{htmlType:"button",size:48,variant:F.variant??"default",label:F.label,disabled:F.disabled,onClick:()=>F.onClick?.({animateThen:ee,closeWithAnimation:M})},L))}):c?t.jsx("div",{className:`popup-footer${u?` ${u}`:""}`,children:typeof c=="function"?c({animateThen:ee,closeWithAnimation:M}):c}):null]})});return f||typeof document>"u"?P:It.createPortal(P,document.body)}function Ba(e){return String(e)}const sl=["o","triangle","x"];function il(e,n){return e===n?null:n}const ll={o:"circle",triangle:"triangle",x:"x"},cl={o:"main",triangle:"warn",x:"danger"};function Y4(e){let n=0,a=0,r=0;for(const i of Object.values(e))i==="o"?n++:i==="triangle"?a++:i==="x"&&r++;const o=n+a+r;return{marked:o,o:n,triangle:a,x:r,rate:o===0?null:(n+a*.5)/o}}function Dr(e){const n={};for(const[a,r]of Object.entries(e))(r==="o"||r==="triangle"||r==="x")&&(n[a]=r);return n}function ul(e){const n=[];let a=0;for(const r of e)n.push(a),a+=r;return n}function Z4(e,n){return!n&&e>0}const Vn={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 X4(e="landscape"){const{printSize:n,printW:a,printH:r}=Vn[e],o=document.createElement("style");o.textContent=`@page { size: ${n}; margin: 0; } .word-table { width: ${a} !important; height: ${r} !important; }`,document.head.appendChild(o);const i=()=>{document.head.removeChild(o),window.removeEventListener("afterprint",i)};window.addEventListener("afterprint",i),window.print()}function dl(e,n){if(e.length===0)return[[]];const a=Math.max(1,Math.floor(n)),r=[];for(let o=0;o<e.length;o+=a)r.push(e.slice(o,o+a));return r}const J4={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 Q4(e,n){const a=J4[e][n];if(a)return a;const r=Math.max(1,Math.ceil(n)),o=Math.max(1,Math.ceil(Math.sqrt(r*.707)));let i,l;return e==="landscape"?(l=o,i=Math.ceil(r/l)):(i=o,l=Math.ceil(r/i)),(e==="landscape"?i<l:l<i)&&([i,l]=[l,i]),{cols:i,rows:l}}const eb={\uD45C\uC2DC:"word-table-block__content--cut-show",\uC810\uC120:"",\uCF54\uB108:"word-table-block__content--cut-corner",\uBBF8\uD45C\uC2DC:""},pl={\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"},hl={\uACE0\uC720:"\uACE0\uC720\uC5B4",\uD55C\uC790:"\uD55C\uC790\uC5B4",\uC678\uB798:"\uC678\uB798\uC5B4",\uD63C\uC885:"\uD63C\uC885\uC5B4"};function jr(e,n){return e?e.split("/").map(a=>n[a]??a).join("/"):""}function ml(e,n,a,r){if(r!=="\uC810\uC120")return{};const o=e%n,i=Math.floor(e/n),l=o<n-1,c=i<a-1;if(!l&&!c)return{};const u="#ddd",d=g=>`repeating-linear-gradient(to ${g}, ${u} 0, ${u} 5px, transparent 5px, transparent 10px)`,p=[],h=[],m=[];return l&&(p.push(d("bottom")),h.push("1px 100%"),m.push("right center")),c&&(p.push(d("right")),h.push("100% 1px"),m.push("center bottom")),{backgroundImage:p.join(", "),backgroundSize:h.join(", "),backgroundPosition:m.join(", "),backgroundRepeat:"no-repeat",printColorAdjust:"exact",WebkitPrintColorAdjust:"exact"}}const tb=280,nb=240,ab=280,rb=400,ob=120,sb=280;function fl(e,n){const a=s.useRef(null),[r,o]=s.useState(1),[i,l]=s.useState(0),c=s.useCallback((u,d)=>{const p=u/e,h=n?d/n:1/0,m=Math.min(1,p,h);o(m),l(Math.max(0,(u-e*m)/2))},[e,n]);return s.useEffect(()=>{const u=a.current;if(!u)return;const d=n?u.parentElement??u:u;if(c(d.clientWidth,d.clientHeight),typeof ResizeObserver>"u")return;const p=new ResizeObserver(([h])=>c(h.contentRect.width,h.contentRect.height));return p.observe(d),()=>p.disconnect()},[c,n]),{scalerRef:a,scale:r,offset:i}}let cn=null;function Cl({label:e,subLabel:n,colloquialLabel:a,homonum:r,showWord:o=!0,showImage:i=!0,showPronunciation:l=!0,showColloquial:c=!0,buttonSize:u=40,wordInfo:d}){const{t:p}=he.useTranslation(),h=s.useRef(null),m=s.useRef(null),g=s.useRef(null),[y,C]=s.useState(1),[f,v]=s.useState(!1),[x,_]=s.useState({for:"",url:""}),[b,N]=s.useState(null),w=n&&n.length>0?n:Vm()?.(e,r)??"",k=Rn()?.(e,r)??"",{imgRef:j,loading:A,failed:S,onLoad:q,onError:W}=Br(k),B=s.useCallback(()=>N(m.current?.getBoundingClientRect()??null),[]),O=s.useCallback(()=>N(null),[]),E=s.useMemo(()=>{if(!d)return null;const V=[];return d.grade&&V.push(p("wordTable.info.grade",{n:d.grade,defaultValue:"\uB09C\uC774\uB3C4: {{n}}\uB4F1\uAE09"})),d.syllables&&V.push(p("wordTable.info.syllables",{n:d.syllables,defaultValue:"\uC74C\uC808 \uC218: {{n}}\uC74C\uC808"})),d.pos&&V.push(p("wordTable.info.pos",{v:jr(d.pos,ib(p)),defaultValue:"\uD488\uC0AC: {{v}}"})),d.wordType&&V.push(p("wordTable.info.wordType",{v:jr(d.wordType,lb(p)),defaultValue:"\uC720\uD615: {{v}}"})),V.length?V:null},[d,p]),ee=w||e,M=x.for===ee?x.url:"";s.useEffect(()=>{const V=Za(),T=w||e;if(!V||!T)return;let P=!1;return Promise.resolve(V(T)).then(F=>{!P&&F&&_({for:T,url:F})}),()=>{P=!0}},[w,e]),s.useEffect(()=>()=>{g.current?.pause(),cn?.audio===g.current&&(cn=null)},[]);const H=s.useCallback(async V=>{if(V.stopPropagation(),f){g.current?.pause(),v(!1),cn=null;return}if(M){cn?.stop(),v(!0);try{const T=new Audio(M);g.current=T;const P=()=>{v(!1),cn?.audio===T&&(cn=null)};cn={audio:T,stop:()=>{T.pause(),P()}},T.onended=P,T.onerror=P,await T.play()}catch{v(!1),cn?.audio===g.current&&(cn=null)}}},[f,M]),Q=i&&!!k&&!S,te=Q&&o?tb:Q?ab:nb,Y=Q&&o?rb:Q?sb:ob;return s.useEffect(()=>{const V=h.current;if(!V||typeof ResizeObserver>"u")return;const T=new ResizeObserver(([P])=>{const{width:F,height:L}=P.contentRect;C(Math.min(F/te,L/Y))});return T.observe(V),()=>T.disconnect()},[te,Y]),t.jsxs("div",{ref:h,className:"word-table-cell",children:[t.jsxs("div",{className:"word-table-cell__inner",style:{transform:`scale(${y})`},children:[Q&&t.jsxs("div",{className:"word-table-cell__image-wrap",children:[A&&t.jsx("div",{className:"word-table-cell__spinner"}),t.jsx("img",{ref:j,className:"word-table-cell__image",src:k,alt:e,draggable:!1,style:{opacity:A?0:1},onLoad:q,onError:W})]}),o&&t.jsx("span",{className:"word-table-cell__word h0",children:e}),l&&w&&t.jsxs("span",{className:"word-table-cell__sub h3",children:["[",w,"]"]}),c&&a&&t.jsxs("span",{className:"word-table-cell__colloquial h5",children:["[",a,"]"]})]}),t.jsxs("div",{className:"word-table-cell__play-button","data-audio-src":M,children:[t.jsx("span",{"data-play-state":"play",style:{display:f?"none":void 0},children:t.jsx(oe,{htmlType:"button",size:u,type:"dot",icon:"play",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:p("common.play","\uC7AC\uC0DD"),onClick:H})}),t.jsx("span",{"data-play-state":"pause",style:{display:f?void 0:"none"},children:t.jsx(oe,{htmlType:"button",size:u,type:"dot",icon:"pause",useBorder:!1,selected:!0,showTooltipInfo:p("common.pause","\uBA48\uCDA4"),onClick:H})})]}),d&&t.jsxs("div",{ref:m,className:"word-table-cell__info-button",onPointerEnter:B,onPointerLeave:O,onFocus:B,onBlur:O,children:[t.jsx(oe,{htmlType:"button",size:u,type:"dot",icon:"info",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:!1,ariaLabel:p("wordTable.wordInfo","{{word}} \uB0B1\uB9D0 \uC815\uBCF4",{word:e}),onClick:V=>V.stopPropagation()}),b&&E&&t.jsx(Sn,{anchorRect:b,items:E,showIndex:!1})]})]})}const gl={\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"},bl={\uACE0\uC720:"native",\uD55C\uC790:"sino",\uC678\uB798:"foreign",\uD63C\uC885:"mixed"};function ib(e){return Object.fromEntries(Object.entries(pl).map(([n,a])=>[n,gl[n]?e(`wordTable.pos.${gl[n]}`,{defaultValue:a}):a]))}function lb(e){return Object.fromEntries(Object.entries(hl).map(([n,a])=>[n,bl[n]?e(`wordSearch.filter.type.${bl[n]}`,{defaultValue:a}):a]))}function Hn({title:e,titleIcon:n,disc:a,className:r,orientation:o="landscape",contentTypes:i=["\uC774\uBBF8\uC9C0","\uB2E8\uC5B4","\uD45C\uC900 \uBC1C\uC74C"],cutLine:l="\uD45C\uC2DC",showOutline:c=!0,showDivLine:u=!0,items:d,editCells:p,count:h,activeCell:m=null,onActivateCell:g,onRemoveCell:y,onRemoveItem:C,onReorder:f,showFillerAdd:v=!1,contentRef:x,buttonSize:_=40,pageNumber:b,pageNumberPosition:N="right",fitHeight:w=!1,scoring:k=!1,marks:j,onMarkClick:A,scoreIndexOffset:S=0}){const q=s.useCallback((pe,_e)=>{A?.(S+pe,_e)},[A,S]),W=(pe,_e)=>{const Z=j?.[Ba(S+pe)]??null;return t.jsx("div",{className:ye("word-table-cell__score",Z?"word-table-cell__score--marked":""),children:sl.map(ie=>t.jsx("span",{className:ye("word-table-cell__score-slot",Z===ie?"word-table-cell__score-slot--on":""),children:t.jsx(oe,{htmlType:"button",size:_,type:"dot",icon:ll[ie],variant:Z===ie?cl[ie]:"default",selected:Z===ie,useBorder:!1,showTooltipInfo:!1,ariaLabel:B(`wordTable.scoring.${ie}`,{word:_e,defaultValue:`${_e} ${ie}`}),onClick:J=>{J.stopPropagation(),q(pe,ie)}})},ie))})},{t:B}=he.useTranslation(),O=p!==void 0,E=s.useRef(null),[ee,M]=s.useState(null),{width:H,height:Q}=Vn[o],{scalerRef:te,scale:Y,offset:V}=fl(H,w?Q:void 0),T=O?p?.length??0:d?.length??0,P=Math.max(h??T,1),{cols:F,rows:L}=Q4(o,P),R={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")},z=O?(p??[]).some(pe=>pe!==null&&pe.length>1):(d??[]).some(pe=>pe.words.length>1),ae=ye("word-table-block__content",eb[l],c&&"word-table-block__content--outline",u&&z&&"word-table-block__content--div-line"),ne={transform:`scale(${1/Y})`,transformOrigin:"center center"},re=t.jsx("div",{ref:te,className:"word-table__scaler",style:{height:Q*Y},children:t.jsx("div",{className:ye("word-table",r),style:{width:H,height:Q,transform:`scale(${Y})`,transformOrigin:"top left",marginLeft:V},children:t.jsxs("div",{ref:x,className:ae,style:{gridTemplateColumns:`repeat(${F}, 1fr)`,gridTemplateRows:`repeat(${L}, 1fr)`},children:[O?t.jsx(t.Fragment,{children:(p??[]).map((pe,_e)=>t.jsx("div",{className:ye("word-table-block__edit-cell",pe?"word-table-block__edit-cell--filled":"word-table-block__edit-cell--empty",m===_e?"word-table-block__edit-cell--active":""),style:ml(_e,F,L,l),children:pe?t.jsxs(t.Fragment,{children:[pe.map((Z,ie)=>t.jsxs(s.Fragment,{children:[ie>0&&t.jsx("div",{className:"word-table-block__pair-divider"}),t.jsx(Cl,{label:Z.word,subLabel:Z.pronunciation,colloquialLabel:Z.colloquialPronunciation,homonum:Z.homonum,showWord:R.word,showImage:R.image,showPronunciation:R.pron,showColloquial:R.colloq,buttonSize:_})]},ie)),k&&W(_e,pe.map(Z=>Z.word).join(" / ")),y&&t.jsx("div",{className:"word-table-block__card-close",children:t.jsx(oe,{htmlType:"button",size:_,type:"dot",icon:"x",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:pe.length>1?B("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):B("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),ariaLabel:pe.length>1?B("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):B("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),onClick:()=>y(_e)})})]}):g&&t.jsx("div",{style:ne,children:t.jsx(oe,{htmlType:"button",size:"48",type:"bar",icon:"plus",label:B("wordTable.addWord","\uCD94\uAC00\uD558\uAE30"),onClick:()=>g(_e)})})},_e))}):t.jsxs(t.Fragment,{children:[(d??[]).map((pe,_e)=>t.jsxs("div",{className:`word-table-block__card${f?" word-table-block__card--draggable":""}${ee===_e?" word-table-block__card--drag-over":""}`,style:ml(_e,F,L,l),draggable:!!f,onDragStart:f?()=>{E.current=_e}:void 0,onDragOver:f?Z=>{Z.preventDefault(),M(_e)}:void 0,onDragLeave:f?()=>M(null):void 0,onDrop:f?Z=>{Z.preventDefault(),E.current!==null&&E.current!==_e&&f(E.current,_e),E.current=null,M(null)}:void 0,onDragEnd:f?()=>{E.current=null,M(null)}:void 0,children:[pe.words.map((Z,ie)=>t.jsxs(s.Fragment,{children:[ie>0&&t.jsx("div",{className:"word-table-block__pair-divider"}),t.jsx(Cl,{label:Z.label,subLabel:Z.subLabel,colloquialLabel:Z.colloquialLabel,homonum:Z.homonum,showWord:R.word,showImage:R.image,showPronunciation:R.pron,showColloquial:R.colloq,buttonSize:_,wordInfo:Z.grade||Z.syllables!=null||Z.pos||Z.wordType?{grade:Z.grade,syllables:Z.syllables,pos:Z.pos,wordType:Z.wordType}:void 0})]},ie)),k&&W(_e,pe.words.map(Z=>Z.label).join(" / ")),C&&t.jsx("div",{className:"word-table-block__card-close",children:t.jsx(oe,{htmlType:"button",size:_,type:"dot",icon:"x",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:pe.words.length>1?B("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):B("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),ariaLabel:pe.words.length>1?B("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):B("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),onClick:()=>C(pe.id)})})]},pe.id)),Array.from({length:Math.max(0,F*L-(d?.length??0))}).map((pe,_e)=>{const Z=(d?.length??0)+_e<P;return t.jsx("div",{className:"word-table-block__card word-table-block__card--filler",children:v&&g&&Z&&t.jsx("div",{style:ne,children:t.jsx(oe,{htmlType:"button",size:_,type:"bar",icon:"plus",label:B("wordTable.addWord","\uCD94\uAC00\uD558\uAE30"),onClick:()=>g((d?.length??0)+_e)})})},`filler-${_e}`)})]}),b&&N!=="none"&&t.jsx("span",{className:`word-table__page-number body-3 word-table__page-number--${N}`,children:B("wordTable.filter.pageIndicator",{current:b.current,total:b.total})})]})})});return e!=null||n||a?t.jsx(On,{type:"page",icon:n,title:e,disc:a,className:ye("word-table-block",r),children:re}):re}function un({title:e,headerAction:n,collapsible:a=!1,defaultCollapsed:r=!1,collapsed:o,onCollapsedChange:i,footer:l,sections:c,selected:u={},onSelect:d,align:p,sectionAlign:h,className:m}){const g=(p??(h==="vertical"?"newline":"inline"))==="inline",{t:y}=he.useTranslation(),[C,f]=s.useState(r),v=o??C,x=()=>{const b=!v;f(b),i?.(b)},_=e||n||a;return t.jsxs("div",{className:ye("filter-panel",a?"filter-panel--collapsible":"",v?"filter-panel--collapsed":"",m),children:[_&&t.jsxs("div",{className:"filter-panel__header",children:[t.jsxs("div",{className:"filter-panel__title-row",children:[a&&t.jsx(oe,{htmlType:"button",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:v?"chevron-down":"chevron-up",ariaLabel:v?y("common.expand","\uD3BC\uCE58\uAE30"):y("common.collapse","\uC811\uAE30"),"aria-expanded":!v,onClick:x}),e&&t.jsx("span",{className:"filter-panel__title h4",children:e})]}),t.jsx("div",{className:"filter-panel__header-actions",children:!v&&n})]}),!v&&t.jsxs(t.Fragment,{children:[t.jsx("div",{className:ye("filter-panel__sections",g?"filter-panel__sections--row":""),children:c.map(b=>{const N=u[b.label],w=N===void 0||(Array.isArray(N)?N.length===0:!1),k=(b.items??[]).filter(A=>A!=null);b.allOption&&k.some(A=>(typeof A=="string"?A:A.value)===Jt)&&qn(`filter-panel-all-value:${b.label}`,`[FilterPanel] '${b.label}' \uC808\uC5D0 allOption \uACFC \uAC12 '${Jt}' \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 j=A=>{const S=typeof A=="string"?A:A.value,q=typeof A!="string"&&!!A.disabled,W=typeof A!="string"?A.labels:void 0,B=typeof A!="string"?A.displayLabel:void 0,O=typeof A!="string"?A.tooltip:void 0,E=typeof A!="string"?A.descriptionTooltip:void 0,ee=typeof A!="string"?A.shape:void 0,M=Array.isArray(N)?N.includes(S):N===S;return t.jsx(oe,{htmlType:"button",size:"keyboard",label:W??B??S,type:b.itemType??(W?"bar":S.length===1?"dot":void 0),selected:M,disabled:q,shape:ee,showTooltipInfo:!!O,tooltipInfoText:O,tooltipDescription:E,onClick:()=>d?.(S,b.label)},S)};return t.jsxs(s.Fragment,{children:[b.groupLabel&&t.jsxs("div",{className:"filter-panel__group-label-row",children:[t.jsx("div",{className:"filter-panel__group-label body-2",children:b.groupLabel}),b.groupAction]}),t.jsxs("div",{className:ye("filter-panel__section",b.layout==="row"?"filter-panel__section--row":"",b.block?"filter-panel__section--block":""),children:[t.jsxs("div",{className:"filter-panel__section-label-row",children:[t.jsx("span",{className:"filter-panel__section-label body-3",children:b.displayLabel??b.label}),b.labelAction??(b.labelInfo?t.jsx(oa,{...b.labelInfo}):null)]}),b.type==="note"?t.jsx("div",{className:"filter-panel__note body-3",children:b.content}):b.type==="input"?t.jsx(Tn,{className:"filter-panel__textfield",placeholder:b.placeholder,ariaLabel:b.displayLabel??b.label,value:u[b.label]??"",onChange:A=>d?.(A,b.label),error:b.error}):!b.multiple&&b.display==="segmented"?t.jsx(En,{ariaLabel:b.displayLabel??b.label,options:[...b.allOption?[{key:Jt,label:b.allLabel??y("common.all","\uC804\uCCB4")}]:[],...k.map(A=>{const S=typeof A=="string"?A:A.value,q=typeof A!="string"?A.displayLabel:void 0,W=typeof A!="string"?A.disabled:void 0;return{key:S,label:q??S,disabled:W}})],value:w&&b.allOption?Jt:u[b.label]??"",onChange:A=>d?.(A,b.label),size:32}):!b.multiple&&b.display==="dropdown"?t.jsx(Gt,{className:"filter-panel__dropdown",size:40,options:[...b.allOption?[{value:Jt,label:b.allLabel??y("common.all","\uC804\uCCB4")}]:[],...k.map(A=>{const S=typeof A=="string"?A:A.value,q=typeof A!="string"?A.displayLabel:void 0,W=typeof A!="string"?A.disabled:void 0;return{value:S,label:q??S,disabled:W}})],value:w&&b.allOption?Jt:u[b.label],onChange:A=>d?.(A,b.label)}):t.jsxs("div",{className:b.groups?"filter-panel__item-groups":"filter-panel__items",children:[b.allOption&&!b.groups&&t.jsx(oe,{htmlType:"button",size:"keyboard",label:b.allLabel??y("common.all","\uC804\uCCB4"),selected:w,disabled:b.allOptionDisabled,onClick:()=>d?.(Jt,b.label)}),b.groups?b.groups.map((A,S)=>t.jsxs("div",{className:"filter-panel__item-group",children:[S===0&&b.allOption&&t.jsx(oe,{htmlType:"button",size:"keyboard",label:b.allLabel??y("common.all","\uC804\uCCB4"),selected:w,disabled:b.allOptionDisabled,onClick:()=>d?.(Jt,b.label)}),A.filter(q=>q!=null).map(j)]},S)):k.map(j)]})]})]},b.label)})}),l!=null&&l!==!1&&t.jsx("div",{className:"filter-panel__footer body-3",children:l})]})]})}const cb=[1,2,3,4,5,6,7,8,9,10,11,12],Tr=[8,4,2,1];function yl(e,n){return{label:e("wordTable.filter.composition","\uAD6C\uC131"),items:[{value:"\uC774\uBBF8\uC9C0",disabled:!n.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:!n.hasColloquial,displayLabel:e("wordTable.filter.colloquialPron","\uAD6C\uC5B4\uCCB4 \uBC1C\uC74C")}],multiple:!0,allOption:!0}}function vl(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 xl(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 _l(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 wl(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 kl(e,n){return{label:e(n.hasPairs?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord"),items:[n.itemCount,...Tr.filter(a=>a<n.itemCount)].map(a=>({value:`${a}\uAC1C`,displayLabel:e("wordTable.filter.itemsPerPageOption",{count:a})})),display:"segmented"}}function Al(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 Nl={left:"\uC67C\uCABD",center:"\uC911\uC559",right:"\uC624\uB978\uCABD",none:"\uBBF8\uD45C\uC2DC"};function Bl(e){return e==="\uC67C\uCABD"?"left":e==="\uC911\uC559"?"center":e==="\uC624\uB978\uCABD"?"right":"none"}function Sl(e,n){return{[e("wordTable.filter.composition","\uAD6C\uC131")]:n.contentTypes,[e("wordTable.filter.paperOrientation","\uC6A9\uC9C0 \uBC29\uD5A5")]:n.orientation==="landscape"?"\uAC00\uB85C":"\uC138\uB85C",[e("wordTable.filter.border","\uC678\uACFD\uC120")]:n.showOutline?"\uD45C\uC2DC":"\uBBF8\uD45C\uC2DC",[e("wordTable.filter.cutLine","\uC808\uCDE8\uC120")]:n.cutLine,[e("wordPrint.divLine","\uB300\uB9BD\uC120")]:n.showDivLine?"\uD45C\uC2DC":"\uBBF8\uD45C\uC2DC"}}function Dl(e,n,a,r){return a===e("wordTable.filter.composition","\uAD6C\uC131")?n===Jt?(r.setContentTypes(()=>[]),!0):(r.setContentTypes(o=>o.includes(n)?o.filter(i=>i!==n):[...o,n]),!0):a===e("wordTable.filter.paperOrientation","\uC6A9\uC9C0 \uBC29\uD5A5")?(r.setOrientation(n==="\uAC00\uB85C"?"landscape":"portrait"),!0):a===e("wordTable.filter.border","\uC678\uACFD\uC120")?(r.setShowOutline(n==="\uD45C\uC2DC"),!0):a===e("wordTable.filter.cutLine","\uC808\uCDE8\uC120")?(r.setCutLine(n),!0):a===e("wordPrint.divLine","\uB300\uB9BD\uC120")?(r.setShowDivLine(n==="\uD45C\uC2DC"),!0):!1}function ub(e){return"sections"in e}function Er(e){const{t:n}=he.useTranslation(),{title:a,className:r}=e;if(ub(e))return t.jsx(un,{className:r,title:a??n("wordTable.filterTitle","\uD45C \uC124\uC815"),sections:e.sections,selected:e.selected,onSelect:e.onSelect,align:"inline"});const{hasImage:o,hasColloquial:i,contentTypes:l,orientation:c,showOutline:u,cutLine:d,showDivLine:p,setters:h,showCutLine:m=!1,showDivLine2:g=!1,middleSections:y=[],extraSelected:C={},onExtraSelect:f}=e,v=[yl(n,{hasImage:o,hasColloquial:i}),vl(n),...y,xl(n),...m?[_l(n)]:[],...g?[wl(n)]:[]],x={...Sl(n,{contentTypes:l,orientation:c,showOutline:u,cutLine:d,showDivLine:p}),...C},_=(b,N)=>{Dl(n,b,N,h)||f?.(b,N)};return t.jsx(un,{className:r,title:a??n("wordTable.filterTitle","\uD45C \uC124\uC815"),sections:v,selected:x,onSelect:_,sectionAlign:"horizontal"})}function jl(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function Mr(e){return e.replace(/[\\/:*?"<>|]/g,"_").trim()}let Sa=null;function db(e,n,a,r="",o=""){if(e.length===0)return;const i=r?Mr(r):"";Sa?.();let l=null;if(i){const d=document.title;document.title=i,l=()=>{document.title=d,window.removeEventListener("afterprint",l),Sa===l&&(Sa=null)},Sa=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 u=c.contentDocument;if(!u){c.remove();return}u.open(),u.write(Lr(e,n,a,!0,i,o)),u.close(),c.contentWindow?.addEventListener("afterprint",()=>{l?.(),setTimeout(()=>c.remove(),0)})}function Lr(e,n,a,r=!1,o="",i=""){o=o?Mr(o):"";const l=Array.from(document.styleSheets).flatMap(p=>{try{return Array.from(p.cssRules).map(h=>h.cssText)}catch{return[]}}).join(`
839
839
  `),c=document.documentElement.getAttribute("data-theme")||"light",u=i?`<div class="paper-head">${jl(i)}</div>`:"",d=e.map(p=>{const h=p.cloneNode(!0);return h.querySelectorAll('[data-play-state="play"]').forEach(m=>m.style.display=""),h.querySelectorAll('[data-play-state="pause"]').forEach(m=>m.style.display="none"),h.querySelectorAll(".word-table-cell__score-slot:not(.word-table-cell__score-slot--on)").forEach(m=>m.remove()),`<div class="paper-wrap">${u}${h.outerHTML}</div>`}).join(`
840
840
  `);return`<!DOCTYPE html>
841
841
  <html data-theme="${c}">
@@ -962,10 +962,10 @@ ${b.badge}`:b.badge:void 0;if(w&&u(b.code))return null;if(!b.badge&&!p)return h(
962
962
  `:""}
963
963
  <\/script>
964
964
  </body>
965
- </html>`}function $r({getElements:e,paperW:n,paperH:a,fileName:r="",onPopupBlocked:o,header:i=""}){const l=s.useCallback(()=>{db(e(),n,a,r,i)},[e,n,a,r,i]),c=s.useCallback(()=>{const d=e();if(d.length===0)return;const p=window.open("","_blank");if(!p){o?.();return}p.document.write(Lr(d,n,a,!1,r,i)),p.document.close()},[e,n,a,r,o,i]),u=s.useCallback(()=>{const d=e();if(d.length===0)return;const p=Lr(d,n,a,!1,r,i),h=new Blob([p],{type:"text/html;charset=utf-8"}),m=URL.createObjectURL(h),g=r&&Mr(r),y=Object.assign(document.createElement("a"),{href:m,download:`${g}.html`});document.body.appendChild(y),y.click(),document.body.removeChild(y),URL.revokeObjectURL(m)},[e,n,a,r,i]);return{print:l,openNewWindow:c,downloadHtml:u}}function Tl(e){const{t:n}=he.useTranslation(),[a,r]=s.useState("landscape"),[o,i]=s.useState(["\uC774\uBBF8\uC9C0","\uB2E8\uC5B4","\uD45C\uC900 \uBC1C\uC74C"]),[l,c]=s.useState("\uD45C\uC2DC"),[u,d]=s.useState(!0),[p,h]=s.useState(!0),[m,g]=s.useState(8),[y,C]=s.useState("right"),f=e.length,v=e.some(W=>W.words.length>1),x=e.some(W=>W.words.some(B=>!!B.colloquialLabel)),_=Math.min(m,Math.max(f,1)),b=s.useMemo(()=>dl(e,_),[e,_]),N=b.length>1,w=_,[k,j]=s.useState(!1);s.useEffect(()=>{let W=!1;if(!Rn()){j(!1);return}return Promise.all(e.flatMap(B=>B.words.map(F=>us(F.label,F.homonum)))).then(B=>{W||j(B.some(Boolean))}),()=>{W=!0}},[e]);const A=s.useMemo(()=>[yl(n,{hasImage:k,hasColloquial:x}),vl(n),...f>0?[kl(n,{hasPairs:v,itemCount:f})]:[],...N?[Al(n)]:[],xl(n),...w>1?[_l(n)]:[],...v?[wl(n)]:[]],[n,k,x,f,v,N,w]),S={...Sl(n,{contentTypes:o,orientation:a,showOutline:u,cutLine:l,showDivLine:p}),...f>0?{[n(v?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord")]:`${_}\uAC1C`}:{},...N?{[n("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")]:Nl[y]}:{}},q=s.useCallback((W,B)=>{if(!Dl(n,W,B,{setContentTypes:i,setOrientation:r,setShowOutline:d,setCutLine:c,setShowDivLine:h}))if(B===n("wordTable.filter.itemsPerPagePair","\uD398\uC774\uC9C0\uB2F9 \uB300\uB9BD\uC30D \uC218")||B===n("wordTable.filter.itemsPerPageWord","\uD398\uC774\uC9C0\uB2F9 \uB2E8\uC5B4 \uC218")){const F=parseInt(W);g(Tr.includes(F)?F:Number.POSITIVE_INFINITY)}else B===n("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")&&C(Bl(W))},[n]);return{settings:{orientation:a,contentTypes:o,cutLine:l,showOutline:u,showDivLine:p,count:w},filterSections:A,filterSelected:S,handleSelect:q,pages:b,isPaginated:N,pageNumberPosition:y}}function pb({items:e,words:n,title:a,subtitle:r,emptyText:o,buttons:i,renderButtons:l,renderFooter:c,footerClassName:u,printFileName:d,showSettings:p,autoPrint:h,className:m,onClose:g,scoring:y=!1,onScoreChange:C,printHeader:f,beforeClose:v}){const{t:x}=he.useTranslation(),_=s.useMemo(()=>Array.isArray(e)?e:(Array.isArray(n)?n:[]).filter(ne=>typeof ne=="string"&&ne.length>0).map((ne,re)=>({id:`${ne}-${re}`,words:[{label:ne}]})),[e,n]),{settings:b,filterSections:N,filterSelected:w,handleSelect:k,pages:j,isPaginated:A,pageNumberPosition:S}=Tl(_),q=s.useMemo(()=>ul(j.map(ne=>ne.length)),[j]),[W,B]=s.useState({}),F=s.useCallback((ne,re)=>{B(pe=>({...pe,[Ba(ne)]:il(pe[Ba(ne)]??null,re)}))},[]),E=s.useRef(C);s.useEffect(()=>{E.current=C}),s.useEffect(()=>{E.current?.(Dr(W))},[W]);const te=s.useMemo(()=>Dr(W),[W]),$=s.useRef(null),{toastMessage:H,toastKey:Q,showWarning:ee,clearToast:Y}=ui("warning"),O=s.useRef([]),T=s.useCallback(()=>A?O.current.filter(ne=>ne!==null):$.current?[$.current]:[],[A]),{print:M,openNewWindow:V}=$r({getElements:T,paperW:Hn[b.orientation].width,paperH:Hn[b.orientation].height,fileName:d??"",header:f??"",onPopupBlocked:()=>ee(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."))}),I=s.useMemo(()=>c?void 0:l?l({print:M,openNewWindow:V}):d?[{label:x("wordTable.openNewWindow","\uC0C8 \uCC3D\uC73C\uB85C \uBCF4\uAE30"),variant:"default",onClick:()=>V()},{label:x("wordTable.print","\uC778\uC1C4\uD558\uAE30"),variant:"default",onClick:()=>M()},...i??[]]:i,[c,l,d,i,x,M,V]),P=s.useMemo(()=>c?c({print:M,openNewWindow:V}):void 0,[c,M,V]),z=s.useRef(!1),ae=s.useRef(M);return s.useEffect(()=>{ae.current=M},[M]),s.useEffect(()=>{if(!h||z.current)return;const ne=window.setTimeout(()=>{z.current=!0,ae.current()},100);return()=>window.clearTimeout(ne)},[h]),t.jsxs(yn,{title:a??x("keyWords.title","\uC8FC\uC694 \uB2E8\uC5B4"),subtitle:r,size:"large",className:ye("word-table-popup",m),buttons:I,footer:P,footerClassName:u,beforeClose:v,onClose:g,children:[_.length>0?t.jsxs("div",{className:"word-table-popup__body",children:[p&&t.jsx(Er,{sections:N,selected:w,onSelect:k}),A?t.jsx("div",{className:"word-table-popup__pages",children:j.map((ne,re)=>t.jsx(Vn,{items:ne,orientation:b.orientation,contentTypes:b.contentTypes,cutLine:b.cutLine,showOutline:b.showOutline,showDivLine:b.showDivLine,count:b.count,contentRef:pe=>{O.current[re]=pe},pageNumber:{current:re+1,total:j.length},pageNumberPosition:S,scoring:y,scoreIndexOffset:q[re],marks:te,onMarkClick:F},re))}):t.jsx("div",{className:"word-table-popup__table",children:t.jsx(Vn,{items:_,orientation:b.orientation,contentTypes:b.contentTypes,cutLine:b.cutLine,showOutline:b.showOutline,showDivLine:b.showDivLine,count:b.count,contentRef:$,fitHeight:!0,scoring:y,marks:te,onMarkClick:F})})]}):t.jsx("p",{className:"word-table-popup__empty body-3",children:o??x("keyWords.empty","\uCD94\uCD9C\uB41C \uC8FC\uC694 \uB2E8\uC5B4\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")}),t.jsx(Fn,{message:H,position:"top",onClose:Y},Q)]})}const hb=new Set(["x","triangle"]);function mb(e,n){const a=[];for(let r=0;r<e.length;r++){const o=n[String(r)];o&&hb.has(o)&&a.push(e[r])}return a}function fb(e,n){const[,a,r]=rr(n).split("-"),o=`${a}.${r}`,i=/\s*(?:(\d+)차\s*)?복습\s*\d{2}\.\d{2}$/;let l=e.trim(),c=1;for(;;){const d=i.exec(l);if(!d)break;c=Math.max(c,(d[1]?Number(d[1]):1)+1),l=l.slice(0,d.index).trim()}const u=c>=2?`${c}\uCC28 `:"";return`${l||"\uB2E8\uC5B4\uD45C"} ${u}\uBCF5\uC2B5 ${o}`}function Cb(e,n){const a={};for(const[r,o]of Object.entries(n)){if(o!=="o"&&o!=="triangle"&&o!=="x")continue;const i=Number(r),l=e[i];l&&(a[r]=l)}return a}function gb(e){return e.map(n=>n.label).join(" / ")}function bb(e,n,a){const r=ys(a);return[e.trim(),r,n.trim()].filter(Boolean).join(" \xB7 ")}const yb=(()=>{let e=null;return()=>(e||(e=new Intl.Collator("ko")),e)})();function Rr(e,n){return yb().compare(e,n)}const vb=/^-?\d+(\.\d+)?$/,xb=(()=>{let e=null;return()=>(e||(e=new Intl.Collator("ko",{numeric:!0})),e)})();function _b(e,n){const a=i=>typeof i=="number"&&!Number.isNaN(i)?i:typeof i=="string"&&vb.test(i.trim())?Number(i):null,r=a(e),o=a(n);return r!==null&&o!==null?r-o:xb().compare(e==null?"":String(e),n==null?"":String(n))}function El(e,n,a){return a===0?0:(e+n*.5)/a}function wb(e){const n=new Map,a=[...e].sort((o,i)=>o.scoredAt.localeCompare(i.scoredAt));for(const o of a)for(const[i,l]of Object.entries(o.marks)){const c=o.labels?.[i];if(!c)continue;const u=n.get(c)??{o:0,triangle:0,x:0,latest:l,latestAt:o.scoredAt};if(l==="o")u.o++;else if(l==="triangle")u.triangle++;else if(l==="x")u.x++;else continue;u.latest=l,u.latestAt=o.scoredAt,n.set(c,u)}const r=[];for(const[o,i]of n){const l=i.o+i.triangle+i.x;r.push({label:o,tried:l,o:i.o,triangle:i.triangle,x:i.x,rate:El(i.o,i.triangle,l),latest:i.latest,latestAt:i.latestAt})}return r.sort((o,i)=>o.rate-i.rate||i.tried-o.tried||Rr(o.label,i.label)),r}function kb(e){const n=new Map;for(const r of e){const o=r.tableId??`name:${r.tableName}`,i=n.get(o)??{tableName:r.tableName,tableId:r.tableId,rows:[]};i.rows.push(r),n.set(o,i)}const a=[];for(const r of n.values()){const o=c=>Object.values(c.marks).filter(u=>u==="o"||u==="triangle"||u==="x").length,i=r.rows.filter(c=>o(c)>0).sort((c,u)=>c.scoredAt.localeCompare(u.scoredAt));if(i.length===0)continue;const l=i.map(c=>{const u=Object.values(c.marks),d=u.filter(h=>h==="o").length,p=u.filter(h=>h==="triangle").length;return El(d,p,o(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,o)=>(o.times[o.times.length-1]??"").localeCompare(r.times[r.times.length-1]??"")),a}function Ab(e,n=8){return e.filter(a=>a.latest!=="o").slice(0,n)}function Nb(e){const n=new Map;let a=0,r=0;const o=[...e].sort((l,c)=>l.answeredAt.localeCompare(c.answeredAt));for(const l of o){if(l.isCorrect==null)continue;const c=l.itemTitle?.trim();if(!c){r++;continue}a++;const u=l.itemId?.trim()||c,d=`${l.trainingType}|${u}`,p=n.get(d)??{trainingType:l.trainingType,itemId:u,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 h=p.setIds.indexOf(l.setId);h>0&&p.setIds.splice(h,1),h!==0&&p.setIds.unshift(l.setId)}n.set(d,p)}const i=[...n.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||Rr(l.title,c.title)),{items:i,counted:a,skippedNoTitle:r}}function Bb(e,n=8){return e.filter(a=>!a.latestCorrect).slice(0,n)}function Sb(e){const n=new Map;for(const r of e){const o=n.get(r.trainingType)??[];o.push(r),n.set(r.trainingType,o)}const a=[...n.entries()].map(([r,o])=>({trainingType:r,items:o,pending:o.filter(i=>!i.latestCorrect).length}));return a.sort((r,o)=>o.pending-r.pending||r.trainingType.localeCompare(o.trainingType)),a}const Pr=["LISTEN_IN_NOISE","SHORT_STORY","LONG_STORY","ORDERING_SENTENCE"];function Db(e){const n=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}`,u=n.get(c)??{setId:l,trainingType:i.trainingType,pending:0};u.pending++,n.set(c,u)}const r=(i,l)=>l.pending-i.pending||i.trainingType.localeCompare(l.trainingType)||i.setId.localeCompare(l.setId),o=[...n.values()];return{sentence:o.filter(i=>Pr.includes(i.trainingType)).sort(r),word:o.filter(i=>!Pr.includes(i.trainingType)).sort(r),noSet:a}}function jb(e,n,a=5){const r=new Set(n);if(r.size===0)return[];const o=[];for(const i of e){const l=new Set,c=[];for(const u of i.cellLabels)r.has(u)&&!l.has(u)&&(l.add(u),c.push(u));c.length!==0&&o.push({id:i.id,name:i.name,kind:i.kind,covered:c,totalCells:i.cellLabels.length})}return o.sort((i,l)=>l.covered.length-i.covered.length||i.totalCells-l.totalCells||Rr(i.name,l.name)),o.slice(0,Math.max(0,a))}function Tb(e,n){const a=new Set(e.flatMap(r=>r.covered));return n.filter(r=>!a.has(r))}function Eb(e,n){const a=new Map;for(const o of e)for(const i of o.cells){const l=o.labelOf(i);a.has(l)||a.set(l,i)}const r=[];for(const o of n){const i=a.get(o);i!==void 0&&r.push(i)}return r}function Ir(e,n,a){return typeof e=="string"&&e?e:n.replace(/\{\{(\w+)\}\}/g,(r,o)=>String(a[o]))}function Mb(e,n){const a=Number.isFinite(e)?Math.round(e):0;if(!a||a<=0)return"-";const r=Math.floor(a/60),o=a%60;return n?n(r,o):r>0&&o>0?Ir(Dt.t("customers.duration.minSec",{m:r,s:o,defaultValue:"{{m}}\uBD84 {{s}}\uCD08"}),"{{m}}\uBD84 {{s}}\uCD08",{m:r,s:o}):r>0?Ir(Dt.t("customers.duration.min",{m:r,defaultValue:"{{m}}\uBD84"}),"{{m}}\uBD84",{m:r}):Ir(Dt.t("customers.duration.sec",{s:o,defaultValue:"{{s}}\uCD08"}),"{{s}}\uCD08",{s:o})}function Lb(e,n){const a=[],r=new Set;for(const o of e){const i=n(o);r.has(i)||(r.add(i),a.push({key:i,value:o,pinned:!1}))}return a}function $b(e,n){return e.map(a=>a.key===n?{...a,pinned:!a.pinned}:a)}function Rb(e,n){return e.filter(a=>a.key!==n)}function Pb(e,n,a){const r=e.filter(d=>d.pinned),o=new Set(r.map(d=>d.key)),i=e.length-r.length,l=[],c=new Set(o);for(const d of n){if(l.length>=i)break;const p=a(d);c.has(p)||(c.add(p),l.push({key:p,value:d,pinned:!1}))}const u=[...l];return e.map(d=>d.pinned?d:u.shift()).filter(d=>d!==void 0)}function Ib(e){return e.map(n=>n.value)}function Fb(e){const{category:n={},isSelected:a=!1,onClick:r}=e||{},o=n?.key?` icon-grid-menu__button--${n.key}`:"",i=s.useId();return t.jsxs("div",{className:`icon-grid-menu__button-wrapper${o}`,children:[t.jsx("button",{className:`icon-grid-menu__button${a?" icon-grid-menu__button--selected":""}`,"data-key":n?.key,type:"button",onClick:a?void 0:r,"aria-pressed":a,"aria-labelledby":i,children:t.jsx(Oe,{icon:n.icon,label:n.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"})}),t.jsx("span",{id:i,className:"icon-grid-menu__button-label button-1",children:n.label})]})}function Ob(e){const{categories:n=[],selected:a,onSelect:r,size:o="medium"}=e||{},i=a!==void 0,[l,c]=s.useState(()=>i?null:(n&&n[0]?.key)??null),u=i?a:l,d=s.useRef(r);s.useEffect(()=>{d.current=r});const p=s.useRef(!1),h=(n&&n[0]?.key)??null;s.useEffect(()=>{if(i||p.current||!h)return;p.current=!0;const g=l??h;l==null&&c(g),d.current?.(g)},[i,h]);const m=s.useCallback(g=>{const y=u===g?null:g;p.current=!0,i||c(y),r?.(y)},[u,i,r]);return t.jsx("div",{className:`icon-grid-menu icon-grid-menu--${o}`,children:(n||[]).map(g=>t.jsx(Fb,{category:g,isSelected:u===g.key,onClick:()=>m(g.key)},g.key))})}function Hb({subs:e=[],selected:n,onSelect:a,size:r="medium"}){const o=r==="small"?32:40;return t.jsx("div",{className:`choice-chips choice-chips--${r}`,children:t.jsx("div",{className:"choice-chips__list",children:e.map(i=>t.jsx(oe,{htmlType:"button",size:o,type:"bar",label:i.label,selected:n===i.key,className:"choice-chips__button",onClick:()=>a?.(i.key)},i.key))})})}function Vb({onTermsClick:e,onPrivacyClick:n,contact:a}={}){const r=a?.email??"support@ihab.co.kr",o=a?.tel??"031-380-3724",{t:i}=he.useTranslation();return t.jsx("footer",{className:"site-footer",children:t.jsxs("div",{className:"safearea",children:[t.jsxs("div",{className:"site-footer__top",children:[t.jsx("div",{className:"site-footer__brand",children:t.jsx("div",{className:"site-footer__lead h3",children:i("footer.lead",`\uC544\uC774\uD574\uBE0C\uB294 \uC18C\uB9AC\uB97C \uD1B5\uD574
965
+ </html>`}function $r({getElements:e,paperW:n,paperH:a,fileName:r="",onPopupBlocked:o,header:i=""}){const l=s.useCallback(()=>{db(e(),n,a,r,i)},[e,n,a,r,i]),c=s.useCallback(()=>{const d=e();if(d.length===0)return;const p=window.open("","_blank");if(!p){o?.();return}p.document.write(Lr(d,n,a,!1,r,i)),p.document.close()},[e,n,a,r,o,i]),u=s.useCallback(()=>{const d=e();if(d.length===0)return;const p=Lr(d,n,a,!1,r,i),h=new Blob([p],{type:"text/html;charset=utf-8"}),m=URL.createObjectURL(h),g=r&&Mr(r),y=Object.assign(document.createElement("a"),{href:m,download:`${g}.html`});document.body.appendChild(y),y.click(),document.body.removeChild(y),URL.revokeObjectURL(m)},[e,n,a,r,i]);return{print:l,openNewWindow:c,downloadHtml:u}}function Tl(e){const{t:n}=he.useTranslation(),[a,r]=s.useState("landscape"),[o,i]=s.useState(["\uC774\uBBF8\uC9C0","\uB2E8\uC5B4","\uD45C\uC900 \uBC1C\uC74C"]),[l,c]=s.useState("\uD45C\uC2DC"),[u,d]=s.useState(!0),[p,h]=s.useState(!0),[m,g]=s.useState(8),[y,C]=s.useState("right"),f=e.length,v=e.some(W=>W.words.length>1),x=e.some(W=>W.words.some(B=>!!B.colloquialLabel)),_=Math.min(m,Math.max(f,1)),b=s.useMemo(()=>dl(e,_),[e,_]),N=b.length>1,w=_,[k,j]=s.useState(!1);s.useEffect(()=>{let W=!1;if(!Rn()){j(!1);return}return Promise.all(e.flatMap(B=>B.words.map(O=>us(O.label,O.homonum)))).then(B=>{W||j(B.some(Boolean))}),()=>{W=!0}},[e]);const A=s.useMemo(()=>[yl(n,{hasImage:k,hasColloquial:x}),vl(n),...f>0?[kl(n,{hasPairs:v,itemCount:f})]:[],...N?[Al(n)]:[],xl(n),...w>1?[_l(n)]:[],...v?[wl(n)]:[]],[n,k,x,f,v,N,w]),S={...Sl(n,{contentTypes:o,orientation:a,showOutline:u,cutLine:l,showDivLine:p}),...f>0?{[n(v?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord")]:`${_}\uAC1C`}:{},...N?{[n("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")]:Nl[y]}:{}},q=s.useCallback((W,B)=>{if(!Dl(n,W,B,{setContentTypes:i,setOrientation:r,setShowOutline:d,setCutLine:c,setShowDivLine:h}))if(B===n("wordTable.filter.itemsPerPagePair","\uD398\uC774\uC9C0\uB2F9 \uB300\uB9BD\uC30D \uC218")||B===n("wordTable.filter.itemsPerPageWord","\uD398\uC774\uC9C0\uB2F9 \uB2E8\uC5B4 \uC218")){const O=parseInt(W);g(Tr.includes(O)?O:Number.POSITIVE_INFINITY)}else B===n("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")&&C(Bl(W))},[n]);return{settings:{orientation:a,contentTypes:o,cutLine:l,showOutline:u,showDivLine:p,count:w},filterSections:A,filterSelected:S,handleSelect:q,pages:b,isPaginated:N,pageNumberPosition:y}}function pb({items:e,words:n,title:a,subtitle:r,emptyText:o,buttons:i,renderButtons:l,renderFooter:c,footerClassName:u,printFileName:d,showSettings:p,autoPrint:h,className:m,onClose:g,scoring:y=!1,onScoreChange:C,printHeader:f,beforeClose:v}){const{t:x}=he.useTranslation(),_=s.useMemo(()=>Array.isArray(e)?e:(Array.isArray(n)?n:[]).filter(ne=>typeof ne=="string"&&ne.length>0).map((ne,re)=>({id:`${ne}-${re}`,words:[{label:ne}]})),[e,n]),{settings:b,filterSections:N,filterSelected:w,handleSelect:k,pages:j,isPaginated:A,pageNumberPosition:S}=Tl(_),q=s.useMemo(()=>ul(j.map(ne=>ne.length)),[j]),[W,B]=s.useState({}),O=s.useCallback((ne,re)=>{B(pe=>({...pe,[Ba(ne)]:il(pe[Ba(ne)]??null,re)}))},[]),E=s.useRef(C);s.useEffect(()=>{E.current=C}),s.useEffect(()=>{E.current?.(Dr(W))},[W]);const ee=s.useMemo(()=>Dr(W),[W]),M=s.useRef(null),{toastMessage:H,toastKey:Q,showWarning:te,clearToast:Y}=ui("warning"),V=s.useRef([]),T=s.useCallback(()=>A?V.current.filter(ne=>ne!==null):M.current?[M.current]:[],[A]),{print:P,openNewWindow:F}=$r({getElements:T,paperW:Vn[b.orientation].width,paperH:Vn[b.orientation].height,fileName:d??"",header:f??"",onPopupBlocked:()=>te(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."))}),L=s.useMemo(()=>c?void 0:l?l({print:P,openNewWindow:F}):d?[{label:x("wordTable.openNewWindow","\uC0C8 \uCC3D\uC73C\uB85C \uBCF4\uAE30"),variant:"default",onClick:()=>F()},{label:x("wordTable.print","\uC778\uC1C4\uD558\uAE30"),variant:"default",onClick:()=>P()},...i??[]]:i,[c,l,d,i,x,P,F]),R=s.useMemo(()=>c?c({print:P,openNewWindow:F}):void 0,[c,P,F]),z=s.useRef(!1),ae=s.useRef(P);return s.useEffect(()=>{ae.current=P},[P]),s.useEffect(()=>{if(!h||z.current)return;const ne=window.setTimeout(()=>{z.current=!0,ae.current()},100);return()=>window.clearTimeout(ne)},[h]),t.jsxs(yn,{title:a??x("keyWords.title","\uC8FC\uC694 \uB2E8\uC5B4"),subtitle:r,size:"large",className:ye("word-table-popup",m),buttons:L,footer:R,footerClassName:u,beforeClose:v,onClose:g,children:[_.length>0?t.jsxs("div",{className:"word-table-popup__body",children:[p&&t.jsx(Er,{sections:N,selected:w,onSelect:k}),A?t.jsx("div",{className:"word-table-popup__pages",children:j.map((ne,re)=>t.jsx(Hn,{items:ne,orientation:b.orientation,contentTypes:b.contentTypes,cutLine:b.cutLine,showOutline:b.showOutline,showDivLine:b.showDivLine,count:b.count,contentRef:pe=>{V.current[re]=pe},pageNumber:{current:re+1,total:j.length},pageNumberPosition:S,scoring:y,scoreIndexOffset:q[re],marks:ee,onMarkClick:O},re))}):t.jsx("div",{className:"word-table-popup__table",children:t.jsx(Hn,{items:_,orientation:b.orientation,contentTypes:b.contentTypes,cutLine:b.cutLine,showOutline:b.showOutline,showDivLine:b.showDivLine,count:b.count,contentRef:M,fitHeight:!0,scoring:y,marks:ee,onMarkClick:O})})]}):t.jsx("p",{className:"word-table-popup__empty body-3",children:o??x("keyWords.empty","\uCD94\uCD9C\uB41C \uC8FC\uC694 \uB2E8\uC5B4\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")}),t.jsx(Fn,{message:H,position:"top",onClose:Y},Q)]})}const hb=new Set(["x","triangle"]);function mb(e,n){const a=[];for(let r=0;r<e.length;r++){const o=n[String(r)];o&&hb.has(o)&&a.push(e[r])}return a}function fb(e,n){const[,a,r]=rr(n).split("-"),o=`${a}.${r}`,i=/\s*(?:(\d+)차\s*)?복습\s*\d{2}\.\d{2}$/;let l=e.trim(),c=1;for(;;){const d=i.exec(l);if(!d)break;c=Math.max(c,(d[1]?Number(d[1]):1)+1),l=l.slice(0,d.index).trim()}const u=c>=2?`${c}\uCC28 `:"";return`${l||"\uB2E8\uC5B4\uD45C"} ${u}\uBCF5\uC2B5 ${o}`}function Cb(e,n){const a={};for(const[r,o]of Object.entries(n)){if(o!=="o"&&o!=="triangle"&&o!=="x")continue;const i=Number(r),l=e[i];l&&(a[r]=l)}return a}function gb(e){return e.map(n=>n.label).join(" / ")}function bb(e,n,a){const r=ys(a);return[e.trim(),r,n.trim()].filter(Boolean).join(" \xB7 ")}const yb=(()=>{let e=null;return()=>(e||(e=new Intl.Collator("ko")),e)})();function Rr(e,n){return yb().compare(e,n)}const vb=/^-?\d+(\.\d+)?$/,xb=(()=>{let e=null;return()=>(e||(e=new Intl.Collator("ko",{numeric:!0})),e)})();function _b(e,n){const a=i=>typeof i=="number"&&!Number.isNaN(i)?i:typeof i=="string"&&vb.test(i.trim())?Number(i):null,r=a(e),o=a(n);return r!==null&&o!==null?r-o:xb().compare(e==null?"":String(e),n==null?"":String(n))}function El(e,n,a){return a===0?0:(e+n*.5)/a}function wb(e){const n=new Map,a=[...e].sort((o,i)=>o.scoredAt.localeCompare(i.scoredAt));for(const o of a)for(const[i,l]of Object.entries(o.marks)){const c=o.labels?.[i];if(!c)continue;const u=n.get(c)??{o:0,triangle:0,x:0,latest:l,latestAt:o.scoredAt};if(l==="o")u.o++;else if(l==="triangle")u.triangle++;else if(l==="x")u.x++;else continue;u.latest=l,u.latestAt=o.scoredAt,n.set(c,u)}const r=[];for(const[o,i]of n){const l=i.o+i.triangle+i.x;r.push({label:o,tried:l,o:i.o,triangle:i.triangle,x:i.x,rate:El(i.o,i.triangle,l),latest:i.latest,latestAt:i.latestAt})}return r.sort((o,i)=>o.rate-i.rate||i.tried-o.tried||Rr(o.label,i.label)),r}function kb(e){const n=new Map;for(const r of e){const o=r.tableId??`name:${r.tableName}`,i=n.get(o)??{tableName:r.tableName,tableId:r.tableId,rows:[]};i.rows.push(r),n.set(o,i)}const a=[];for(const r of n.values()){const o=c=>Object.values(c.marks).filter(u=>u==="o"||u==="triangle"||u==="x").length,i=r.rows.filter(c=>o(c)>0).sort((c,u)=>c.scoredAt.localeCompare(u.scoredAt));if(i.length===0)continue;const l=i.map(c=>{const u=Object.values(c.marks),d=u.filter(h=>h==="o").length,p=u.filter(h=>h==="triangle").length;return El(d,p,o(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,o)=>(o.times[o.times.length-1]??"").localeCompare(r.times[r.times.length-1]??"")),a}function Ab(e,n=8){return e.filter(a=>a.latest!=="o").slice(0,n)}function Nb(e){const n=new Map;let a=0,r=0;const o=[...e].sort((l,c)=>l.answeredAt.localeCompare(c.answeredAt));for(const l of o){if(l.isCorrect==null)continue;const c=l.itemTitle?.trim();if(!c){r++;continue}a++;const u=l.itemId?.trim()||c,d=`${l.trainingType}|${u}`,p=n.get(d)??{trainingType:l.trainingType,itemId:u,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 h=p.setIds.indexOf(l.setId);h>0&&p.setIds.splice(h,1),h!==0&&p.setIds.unshift(l.setId)}n.set(d,p)}const i=[...n.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||Rr(l.title,c.title)),{items:i,counted:a,skippedNoTitle:r}}function Bb(e,n=8){return e.filter(a=>!a.latestCorrect).slice(0,n)}function Sb(e){const n=new Map;for(const r of e){const o=n.get(r.trainingType)??[];o.push(r),n.set(r.trainingType,o)}const a=[...n.entries()].map(([r,o])=>({trainingType:r,items:o,pending:o.filter(i=>!i.latestCorrect).length}));return a.sort((r,o)=>o.pending-r.pending||r.trainingType.localeCompare(o.trainingType)),a}const Pr=["LISTEN_IN_NOISE","SHORT_STORY","LONG_STORY","ORDERING_SENTENCE"];function Db(e){const n=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}`,u=n.get(c)??{setId:l,trainingType:i.trainingType,pending:0};u.pending++,n.set(c,u)}const r=(i,l)=>l.pending-i.pending||i.trainingType.localeCompare(l.trainingType)||i.setId.localeCompare(l.setId),o=[...n.values()];return{sentence:o.filter(i=>Pr.includes(i.trainingType)).sort(r),word:o.filter(i=>!Pr.includes(i.trainingType)).sort(r),noSet:a}}function jb(e,n,a=5){const r=new Set(n);if(r.size===0)return[];const o=[];for(const i of e){const l=new Set,c=[];for(const u of i.cellLabels)r.has(u)&&!l.has(u)&&(l.add(u),c.push(u));c.length!==0&&o.push({id:i.id,name:i.name,kind:i.kind,covered:c,totalCells:i.cellLabels.length})}return o.sort((i,l)=>l.covered.length-i.covered.length||i.totalCells-l.totalCells||Rr(i.name,l.name)),o.slice(0,Math.max(0,a))}function Tb(e,n){const a=new Set(e.flatMap(r=>r.covered));return n.filter(r=>!a.has(r))}function Eb(e,n){const a=new Map;for(const o of e)for(const i of o.cells){const l=o.labelOf(i);a.has(l)||a.set(l,i)}const r=[];for(const o of n){const i=a.get(o);i!==void 0&&r.push(i)}return r}function Ir(e,n,a){return typeof e=="string"&&e?e:n.replace(/\{\{(\w+)\}\}/g,(r,o)=>String(a[o]))}function Mb(e,n){const a=Number.isFinite(e)?Math.round(e):0;if(!a||a<=0)return"-";const r=Math.floor(a/60),o=a%60;return n?n(r,o):r>0&&o>0?Ir(Dt.t("customers.duration.minSec",{m:r,s:o,defaultValue:"{{m}}\uBD84 {{s}}\uCD08"}),"{{m}}\uBD84 {{s}}\uCD08",{m:r,s:o}):r>0?Ir(Dt.t("customers.duration.min",{m:r,defaultValue:"{{m}}\uBD84"}),"{{m}}\uBD84",{m:r}):Ir(Dt.t("customers.duration.sec",{s:o,defaultValue:"{{s}}\uCD08"}),"{{s}}\uCD08",{s:o})}function Lb(e,n){const a=[],r=new Set;for(const o of e){const i=n(o);r.has(i)||(r.add(i),a.push({key:i,value:o,pinned:!1}))}return a}function $b(e,n){return e.map(a=>a.key===n?{...a,pinned:!a.pinned}:a)}function Rb(e,n){return e.filter(a=>a.key!==n)}function Pb(e,n,a){const r=e.filter(d=>d.pinned),o=new Set(r.map(d=>d.key)),i=e.length-r.length,l=[],c=new Set(o);for(const d of n){if(l.length>=i)break;const p=a(d);c.has(p)||(c.add(p),l.push({key:p,value:d,pinned:!1}))}const u=[...l];return e.map(d=>d.pinned?d:u.shift()).filter(d=>d!==void 0)}function Ib(e){return e.map(n=>n.value)}function Fb(e){const{category:n={},isSelected:a=!1,onClick:r}=e||{},o=n?.key?` icon-grid-menu__button--${n.key}`:"",i=s.useId();return t.jsxs("div",{className:`icon-grid-menu__button-wrapper${o}`,children:[t.jsx("button",{className:`icon-grid-menu__button${a?" icon-grid-menu__button--selected":""}`,"data-key":n?.key,type:"button",onClick:a?void 0:r,"aria-pressed":a,"aria-labelledby":i,children:t.jsx(Oe,{icon:n.icon,label:n.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"})}),t.jsx("span",{id:i,className:"icon-grid-menu__button-label button-1",children:n.label})]})}function Ob(e){const{categories:n=[],selected:a,onSelect:r,size:o="medium"}=e||{},i=a!==void 0,[l,c]=s.useState(()=>i?null:(n&&n[0]?.key)??null),u=i?a:l,d=s.useRef(r);s.useEffect(()=>{d.current=r});const p=s.useRef(!1),h=(n&&n[0]?.key)??null;s.useEffect(()=>{if(i||p.current||!h)return;p.current=!0;const g=l??h;l==null&&c(g),d.current?.(g)},[i,h]);const m=s.useCallback(g=>{const y=u===g?null:g;p.current=!0,i||c(y),r?.(y)},[u,i,r]);return t.jsx("div",{className:`icon-grid-menu icon-grid-menu--${o}`,children:(n||[]).map(g=>t.jsx(Fb,{category:g,isSelected:u===g.key,onClick:()=>m(g.key)},g.key))})}function Vb({subs:e=[],selected:n,onSelect:a,size:r="medium"}){const o=r==="small"?32:40;return t.jsx("div",{className:`choice-chips choice-chips--${r}`,children:t.jsx("div",{className:"choice-chips__list",children:e.map(i=>t.jsx(oe,{htmlType:"button",size:o,type:"bar",label:i.label,selected:n===i.key,className:"choice-chips__button",onClick:()=>a?.(i.key)},i.key))})})}function Hb({onTermsClick:e,onPrivacyClick:n,contact:a}={}){const r=a?.email??"support@ihab.co.kr",o=a?.tel??"031-380-3724",{t:i}=he.useTranslation();return t.jsx("footer",{className:"site-footer",children:t.jsxs("div",{className:"safearea",children:[t.jsxs("div",{className:"site-footer__top",children:[t.jsx("div",{className:"site-footer__brand",children:t.jsx("div",{className:"site-footer__lead h3",children:i("footer.lead",`\uC544\uC774\uD574\uBE0C\uB294 \uC18C\uB9AC\uB97C \uD1B5\uD574
966
966
  \uC2E0\uB8B0\uB97C \uC313\uACE0
967
967
  \uD68C\uBCF5\uC744 \uB3D5\uC2B5\uB2C8\uB2E4.`).split(`
968
- `).map((l,c,u)=>t.jsxs(s.Fragment,{children:[l,c<u.length-1&&t.jsx("br",{})]},c))})}),t.jsxs("div",{className:"site-footer__links",children:[t.jsxs("div",{className:"site-footer__column",children:[t.jsx("div",{className:"site-footer__column-title footer-title",children:i("footer.site.title","\uC0AC\uC774\uD2B8")}),t.jsxs("ul",{children:[t.jsx("li",{children:t.jsx("a",{className:"footer-link",href:"https://www.ihab.co.kr/",target:"_blank",rel:"noopener noreferrer",children:"IHAB"})}),t.jsx("li",{children:t.jsx("a",{className:"footer-link",href:"https://speechear.ihab.co.kr/",target:"_blank",rel:"noopener noreferrer",children:i("footer.site.malgwi","\uB9D0\uADC0")})}),t.jsx("li",{children:t.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")})}),t.jsx("li",{children:t.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")})}),t.jsx("li",{children:t.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")})})]})]}),t.jsxs("div",{className:"site-footer__column",children:[t.jsx("div",{className:"site-footer__column-title footer-title",children:i("footer.sns.title","SNS")}),t.jsxs("ul",{children:[t.jsx("li",{children:t.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")})}),t.jsx("li",{children:t.jsx("a",{className:"footer-link",href:"https://www.instagram.com/ihab.official.yt/",target:"_blank",rel:"noopener noreferrer",children:"Instagram"})}),t.jsx("li",{children:t.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"})})]})]}),t.jsxs("div",{className:"site-footer__column",children:[t.jsx("div",{className:"site-footer__column-title footer-title",children:i("footer.policy.title","\uC815\uCC45")}),t.jsxs("ul",{children:[t.jsx("li",{children:t.jsx("a",{className:"footer-link",href:"#",onClick:l=>{e&&(l.preventDefault(),e())},children:i("footer.policy.terms","\uC774\uC6A9\uC57D\uAD00")})}),t.jsx("li",{children:t.jsx("a",{className:"footer-link",href:"#",onClick:l=>{n&&(l.preventDefault(),n())},children:i("footer.policy.privacy","\uAC1C\uC778\uC815\uBCF4 \uCC98\uB9AC\uBC29\uCE68")})})]})]})]})]}),t.jsx("hr",{className:"site-footer__rule"}),t.jsxs("div",{className:"site-footer__bottom",children:[t.jsx("div",{className:"site-footer__brand",children:t.jsx("img",{src:Cr,alt:"IHAB",className:"site-footer__logo"})}),t.jsxs("div",{className:"site-footer__meta",children:[t.jsxs("div",{children:[t.jsx("span",{className:"footer-title",children:i("footer.ceo","\uB300\uD45C")}),t.jsx("span",{className:"footer-meta caption-1",children:i("footer.ceoName","\uD55C\uC9C0\uD61C")})]}),t.jsxs("div",{children:[t.jsx("span",{className:"footer-title",children:i("footer.address","\uC8FC\uC18C")}),t.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")})]}),t.jsxs("div",{children:[t.jsx("span",{className:"footer-title",children:i("footer.support","\uACE0\uAC1D\uC13C\uD130")}),t.jsxs("span",{className:"footer-meta caption-1",children:[r," \xA0 ",o]})]})]})]}),t.jsx("div",{className:"site-footer__copyright footer-copyright caption-1",children:"\xA9 IHAB, Inc. All rights reserved."})]})})}function zb({logo:e,logoAlt:n="",logoHref:a,links:r=[],actions:o,className:i,containerClassName:l,renderLink:c,menuLabel:u}){const{t:d}=he.useTranslation(),p=u??{open:d("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),close:d("header.menuClose","\uBA54\uB274 \uB2EB\uAE30")},[h,m]=s.useState(!1),g=s.useId();s.useEffect(()=>{if(!h)return;const f=Bn(()=>m(!1)),v=typeof window<"u"&&window.matchMedia?window.matchMedia("(min-width: 961px)"):null,x=_=>{_.matches&&m(!1)};return v&&(v.matches&&m(!1),v.addEventListener?.("change",x)),()=>{f(),v?.removeEventListener?.("change",x)}},[h]);const y=l?`${l} landing-header__inner`:"landing-header__inner",C=(f,v)=>c?c(f,{onClick:v}):t.jsx("a",{href:f.href,onClick:v,"aria-current":f.current?"page":void 0,children:f.label});return t.jsxs("header",{className:i?`landing-header ${i}`:"landing-header",children:[t.jsxs("div",{className:y,children:[e!=null&&(()=>{const f=typeof e=="string"?t.jsx("img",{src:e,alt:n,className:"landing-header__logo"}):e;return a?t.jsx("a",{href:a,className:"landing-header__brand",children:f}):t.jsx("div",{className:"landing-header__brand",children:f})})(),r.length>0&&t.jsx("nav",{className:"landing-header__links",children:r.map(f=>t.jsx("span",{children:C(f)},f.href))}),t.jsxs("div",{className:"landing-header__actions",children:[o,r.length>0&&t.jsx("button",{type:"button",onClick:()=>m(f=>!f),"aria-expanded":h,"aria-controls":g,"aria-label":h?p.close:p.open,className:h?"landing-header__toggle landing-header__toggle--open":"landing-header__toggle",children:t.jsxs("span",{className:"landing-header__burger",children:[t.jsx("span",{}),t.jsx("span",{}),t.jsx("span",{})]})})]})]}),r.length>0&&t.jsx("nav",{id:g,hidden:!h,className:"landing-header__drawer",children:t.jsx("div",{className:l??void 0,children:r.map(f=>t.jsx("span",{className:"landing-header__drawer-item",children:C(f,()=>m(!1))},f.href))})})]})}function Wb({children:e,action:n,onClick:a,className:r}){const o=a?"bottom-sticky__inner bottom-sticky__inner--clickable":"bottom-sticky__inner";return t.jsx("div",{className:r?`bottom-sticky ${r}`:"bottom-sticky",children:t.jsxs("div",{className:o,onClick:a,...rl(a),children:[t.jsx("div",{className:"bottom-sticky__content",children:e}),n]})})}const zn=9,qb=e=>Math.round(Math.min(zn,Math.max(0,e))/zn*100),Ub=e=>e/100*zn,Da=2,Ml=.1,Ll=e=>Math.min(Da,Math.max(0,e)),Gb=e=>Math.round(e*10)/10;function ca(e){const{noiseRatio:n}=e;if(typeof n=="number"&&Number.isFinite(n))return Ll(n);const a=Math.min(zn,Math.max(0,Number(e.level)||0))/zn,r=Number(e.mainVolume);return r>0?Gb(Ll(a/r)):1}const $l=e=>Math.min(1,Math.max(0,Number(e.mainVolume)||0));function Rl(e){return $l(e)}function Fr(e){return $l(e)*ca(e)}function Or(e,n=rs()){const a=Number.isFinite(n)&&n>0?n:1;return Math.min(1,Fr(e)/a)}function ua(e,n){const a={...e,...n??{}};return n&&"level"in n&&typeof n.noiseRatio!="number"&&(a.noiseRatio=ca({level:a.level,mainVolume:a.mainVolume})),a}const da={enabled:!0,type:"defaultNoise",level:4.5,noiseRatio:1,speed:1,mainVolume:1,mainSpeed:1},Hr=s.createContext(null);function ja(){return s.useContext(Hr)}const Vr=e=>`${Im()}/${e}`,Pl=e=>Array.from({length:10},(n,a)=>Vr(`${e}-${String(a+1).padStart(2,"0")}.mp3`)),Ta={get defaultNoise(){return Vr("noise1.mp3")},get street(){return Pl("noise2")},get restaurant(){return Pl("noise3")},get buzz(){return Vr("noise4.mp3")}};function Kb(e){const n=Math.floor(Math.random()*10);switch(e){case"defaultNoise":return Ta.defaultNoise;case"street":return Ta.street[n];case"restaurant":return Ta.restaurant[n];case"buzz":return Ta.buzz;default:return null}}function Yb({noisePlayer:e,audioRef:n,playbackStateRef:a}){const r=s.useRef(e?.registerAnalyser);r.current=e?.registerAnalyser;const o=s.useRef(null),[i,l]=s.useState(null),c=s.useRef(null),u=s.useRef(null),d=s.useRef(null),p=s.useRef(null),h=s.useRef(0),m=s.useRef(null),g=s.useCallback(()=>{p.current!==null&&(cancelAnimationFrame(p.current),p.current=null),m.current!==null&&(clearTimeout(m.current),m.current=null)},[]),y=s.useCallback((x,_=250)=>{const b=o.current;if(!b)return;const N=u.current;if(N){u.current=null;try{b.pause()}catch{}b.src=N,b.load()}if(!b.src)return;h.current+=1,g();try{Qa(),fa(b).then(A=>{if(o.current===b)try{r.current?.("noise",A)}catch{}})}catch{}const w=b.paused?0:Ca(b);b.paused&&fn(b,0),b.play().catch(()=>{});const k=performance.now(),j=()=>{const A=Math.min(1,(performance.now()-k)/_);try{fn(b,w+(x-w)*A)}catch{}A<1?p.current=requestAnimationFrame(j):p.current=null};p.current=requestAnimationFrame(j)},[g]),C=s.useCallback((x=250,_)=>{const b=o.current;if(!b||b.paused){_?.();return}const N=++h.current;g();const w=performance.now(),k=Ca(b),j=()=>{const A=Math.min(1,(performance.now()-w)/x);try{fn(b,k*(1-A))}catch{}if(A<1)p.current=requestAnimationFrame(j);else{p.current=null,m.current!==null&&(clearTimeout(m.current),m.current=null);try{b.pause()}catch{}_?.()}};p.current=requestAnimationFrame(j),m.current=setTimeout(()=>{if(m.current=null,h.current===N){p.current!==null&&(cancelAnimationFrame(p.current),p.current=null);try{b.paused||(fn(b,0),b.pause(),_?.())}catch{}}},x+150)},[g]);s.useEffect(()=>{const x=document.createElement("audio");return x.loop=!0,x.crossOrigin="anonymous",o.current=x,()=>{g();try{x.pause(),x.src=""}catch{}o.current=null,c.current=null,u.current=null}},[g]);const f=e?Or(e.settings):0,v=!!e?.settings.enabled&&f>0;return s.useEffect(()=>{if(!v)return;let x=0;const _=setInterval(()=>{const b=o.current;if(!b||b.paused){x=0;return}const N=n.current;if(N&&!N.paused&&!N.ended||a.current==="playing"){x=0;return}x+=1,x>=2&&(x=0,C())},400);return()=>clearInterval(_)},[C,v,n,a]),s.useEffect(()=>{const x=()=>{if(!document.hidden)return;const _=o.current;if(_&&!_.paused){g();try{_.pause()}catch{}}};return document.addEventListener("visibilitychange",x),()=>document.removeEventListener("visibilitychange",x)},[g]),s.useEffect(()=>{d.current=e?{enabled:e.settings.enabled,volume:f,type:e.settings.type}:null},[e,e?.settings.enabled,f,e?.settings.type]),s.useEffect(()=>{const x=e?.settings,_=o.current;if(!_)return;const b=x?Or(x):0;if(!x||!x.enabled||b===0){C();return}if(c.current!==x.type){const N=Kb(x.type);N&&(c.current=x.type,l(N),u.current=N,C(150,()=>{if(u.current!==N)return;u.current=null,_.src=N,_.load();const w=n.current;w&&!w.paused&&_.addEventListener("canplay",function k(){_.removeEventListener("canplay",k);const j=n.current;j&&!j.paused&&!j.ended&&y(b)})}))}else{const N=n.current,w=!!N&&!N.paused&&!N.ended;if(w&&_.paused&&_.src)y(b);else if(!_.paused)if(!w)C();else{g();const k=Ca(_),j=performance.now(),A=()=>{const S=Math.min(1,(performance.now()-j)/150);try{fn(_,k+(b-k)*S)}catch{}S<1?p.current=requestAnimationFrame(A):p.current=null};p.current=requestAnimationFrame(A)}}},[e?.settings,e?.settings.enabled,f,e?.settings.type,g,y,C,n]),s.useEffect(()=>{const x=o.current;if(x)try{x.playbackRate=Math.min(1.25,Math.max(.75,e?.settings.speed??1))}catch{}},[e?.settings.speed]),{noiseAudioRef:o,activeNoiseUrl:i,noiseSettingsRef:d,cancelNoiseFade:g,fadeInNoise:y,fadeOutNoise:C}}function Zb({ttsText:e,playbackRate:n,mainVolume:a,fillRef:r,waveProgressRef:o,setProgress:i,setPlaybackState:l,setStateLocal:c,fadeInNoise:u,fadeOutNoise:d,noiseSettingsRef:p,onDoneRef:h,handleEndRef:m}){const g=s.useRef(null),y=s.useRef(0),C=s.useRef(null),f=s.useRef(0),v=s.useRef(!1);s.useEffect(()=>()=>{f.current++;try{if(C.current&&(cancelAnimationFrame(C.current),C.current=null),v.current&&window.speechSynthesis){try{window.speechSynthesis.cancel()}catch{}v.current=!1}}catch{}},[]);const x=(N,w=1)=>{try{const k=(N||"").trim().split(/\s+/).filter(Boolean).length||Math.max(1,(N||"").length);return Math.max(700,Math.round(k*300/Math.max(.25,w)))}catch{return 1200}},_=s.useCallback(N=>{if(typeof window>"u"||!window.speechSynthesis){try{typeof h.current=="function"&&h.current(!0)}catch{}return}const w=window.speechSynthesis,k=++f.current;try{try{w.cancel()}catch{}const j=N??e,A=(Array.isArray(j)?j[0]??"":j)||"",S=new SpeechSynthesisUtterance(A);try{S.rate=Math.max(.3,Math.min(3,n))}catch{}try{S.volume=Math.max(0,Math.min(1,a))}catch{}y.current=x(A,S.rate||1),g.current=performance.now(),i(0),l("playing"),c("playMode");const q=p.current;q?.enabled&&(q?.volume??0)>0&&u(q.volume);const W=()=>{try{const B=g.current||performance.now(),F=performance.now()-B,E=y.current||1200,te=Math.min(1,F/E);i(te);try{r.current&&(r.current.style.left=`${te*100}%`),o.current&&o.current.style.setProperty("--progress",String(te))}catch{}te<1&&(C.current=requestAnimationFrame(W))}catch{}};S.onend=()=>{if(k===f.current)try{C.current&&(cancelAnimationFrame(C.current),C.current=null),i(1),l("stopped");try{m.current?.()}catch{try{typeof h.current=="function"&&h.current(!0)}catch{}}}catch{}},S.onstart=()=>{try{C.current&&(cancelAnimationFrame(C.current),C.current=null),C.current=requestAnimationFrame(W)}catch{}};try{v.current=!0,w.speak(S)}catch{try{typeof h.current=="function"&&h.current(!0)}catch{}}}catch{try{typeof h.current=="function"&&h.current(!0)}catch{}}},[e,n,a,u,r,o,i,l,c,p,h,m]),b=s.useCallback(()=>{f.current++;try{if(window.speechSynthesis)try{window.speechSynthesis.cancel()}catch{}C.current&&(cancelAnimationFrame(C.current),C.current=null),d(),g.current=null}catch{}l("stopped"),c("active"),i(0)},[d,l,c,i]);return{startTTS:_,stopTTS:b}}async function Xb(e,n,a){let r=null;try{const o=window.AudioContext||window.webkitAudioContext;r=new o;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,u=Math.max(n,c),d=Math.floor(u/n)||1;return new Array(n).fill(0).map((p,h)=>{const m=h*d,g=Math.min(m+d,u);let y=0;for(let C=m;C<g;C++){const f=Math.abs(l[C]);f>y&&(y=f)}return y})}catch{return null}finally{try{r?.close?.()}catch{}}}async function Il(e,n,a){try{const r=await fetch(e);if(r.ok===!1)return null;const o=await r.arrayBuffer();return await Xb(o,n,a)}catch(r){try{const o=ms(r)}catch{}return null}}const Fl=45,Jb=74,Qb=2;function pa(e){const n=Math.min(2,Math.max(0,Number(e)||0));return n<=1?n*45:45+(n-1)*29}function zr(e){return pa(e)/45}const Ol=4;function ey(e){const{src:n,segments:a,progress:r=0,waveProgressRef:o,noiseSrc:i,noiseRatio:l=0,noiseSpeed:c=1,totalDuration:u=0,mainVolume:d=1,onReadyChange:p,showSoundWaveForm:h=!0}=e,m=s.useRef(null),g=s.useRef(null),[y,C]=s.useState(null),[f,v]=s.useState(!1),[x,_]=s.useState(null),[b,N]=s.useState(2),[w,k]=s.useState(0),[j,A]=s.useState(null),[S,q]=s.useState(!1),W=3,B=3,F=1,E=300,te=s.useRef(0),$=s.useCallback(async(ne,re)=>{const pe=++te.current,_e=()=>te.current===pe;try{if(v(!1),!ne){_e()&&C(null);return}let Z=re;if(!Z)try{for(let ue=0;ue<4&&!(m.current||g.current);ue++)await new Promise(ke=>requestAnimationFrame(ke));await new Promise(ue=>requestAnimationFrame(ue));const J=m.current,be=g&&g.current?g.current:J?J.closest(".audio-player__wave"):null,xe=be?be.getBoundingClientRect():J?J.getBoundingClientRect():null,Ce=xe?Math.max(100,xe.width):320,fe=xe?xe.height:0;fe>0&&k(fe),Z=Math.max(F,Math.min(E,Math.floor((Ce+B)/(W+B))));const ve=Z*W,Se=Math.max(0,Z-1),X=Se>0?(Ce-ve)/Se:B;N(Math.max(0,X))}catch{Z=120}const ie=await Il(ne,Z);if(!_e())return;if(!ie){C(null),v(!1);return}C(ie),_(Z),v(!0)}catch{if(!_e())return;C(null),v(!1)}},[v,C,k,N,_]);s.useEffect(()=>{const ne=a&&a[0]&&a[0].src||n||a&&a.length===1&&a[0]&&a[0].src;$(typeof ne=="string"?ne:void 0).catch(()=>{}),q(!1)},[n,a,$]),s.useEffect(()=>{let ne=!1;if(!i||!x){A(null);return}const re=u>0?u*(c||1):void 0;return Il(i,x,re).then(pe=>{ne||A(pe)}).catch(()=>{ne||A(null)}),()=>{ne=!0}},[i,x,u,c]);const H=Math.max(0,Math.min(1,d)),Q=s.useMemo(()=>y&&y.length&&Math.max(...y)||1,[y]),ee=x||40,Y=s.useMemo(()=>Array.from({length:ee}).map((ne,re)=>{const pe=y&&y[re]!=null?y[re]:null,_e=pe==null?null:Math.min(1,pe/Q*H),Z=_e!=null&&w>0&&pa(_e)<=Ol,ie=_e==null?.15:Z?0:zr(_e),J=ee>1?re/(ee-1):0;return t.jsx("div",{className:Z?"audio-player__bar audio-player__bar--hidden":"audio-player__bar",style:{"--val":ie,"--i":re,"--mix":J}},re)}),[ee,y,Q,H,w]),O={"--progress":String(Math.max(0,Math.min(1,r)))},T=i?Math.max(1,l):1,M={"--bar-gap":`${b}px`,"--wave-h":`${pa(T)}px`,"--wave-h1":`${Fl}px`},V=H*Math.max(0,l)/rs(),I=f&&(i?!!j:!0);s.useEffect(()=>{I&&q(!0)},[I]);const P=S?f:I;s.useEffect(()=>{p?.(P)},[P,p]);const z=x||40,ae=s.useMemo(()=>Array.from({length:z}).map((ne,re)=>{const pe=j&&j[re]!=null?j[re]:null,_e=pe==null?0:pe/Q*V,Z=w>0&&pa(_e)<=Ol,ie=Z?0:zr(_e),J=z>1?re/(z-1):0;return t.jsx("div",{className:Z?"audio-player__bar audio-player__bar--hidden":"audio-player__bar",style:{"--val":ie,"--i":re,"--mix":J}},re)}),[z,j,Q,V,w]);return t.jsxs("div",{className:"audio-player__wave",ref:g,style:M,children:[i&&t.jsx("div",{className:`audio-player__wave-noise ${I?"is-ready":""}`,"aria-hidden":"true",children:ae}),h&&t.jsxs(t.Fragment,{children:[t.jsx("div",{className:`audio-player__wave-inner audio-player__wave-unplayed ${P?"is-ready":""}`,ref:m,children:Y}),t.jsx("div",{className:`audio-player__wave-inner audio-player__wave-played ${P?"is-ready":""}`,ref:o,style:O,children:Y})]})]})}const ty={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 Wr(e,n){return new Promise((a,r)=>{const o=document.createElement("audio");let i=!1;const l=()=>{try{o.src=""}catch{}},c=()=>{if(i)return;i=!0;const d=isFinite(o.duration)&&o.duration||0;l(),a(d)},u=d=>{i||(i=!0,l(),n.rejectOnError?r(new Error(d)):a(0))};o.addEventListener("loadedmetadata",c),o.addEventListener("error",()=>u("audio load failed")),setTimeout(()=>u("audio load timeout"),n.timeoutMs),o.src=e})}const ny=2e3;function Hl(e,n=ny){return new Promise(a=>{let r=!1;const o=()=>{r||(r=!0,a())};e.addEventListener("canplay",o,{once:!0}),e.addEventListener("error",o,{once:!0}),setTimeout(o,n)})}function ay({showSoundWaveForm:e,showNoiseWaveForm:n,timeoutMs:a=2500}){const r=s.useRef(!1),o=s.useRef([]),i=s.useCallback(u=>{if(r.current=u,!u||!o.current.length)return;const d=o.current;o.current=[];for(const p of d)p()},[]),l=s.useCallback(()=>{r.current=!1},[]),c=s.useCallback(()=>!e&&!n||r.current?Promise.resolve():new Promise(u=>{const d=setTimeout(u,a);o.current.push(()=>{clearTimeout(d),u()})}),[e,n,a]);return s.useEffect(()=>()=>{const u=o.current;o.current=[];for(const d of u)d()},[]),{onReadyChange:i,waitForReady:c,markNotReady:l}}function ry(){const e=s.useRef([]),n=s.useCallback(o=>(e.current.push(o),o),[]),a=s.useCallback(o=>{const i=new Set([...o].filter(Boolean));e.current=e.current.filter(l=>{if(i.has(l))return!0;try{URL.revokeObjectURL(l)}catch{}return!1})},[]),r=s.useCallback(()=>{a([])},[a]);return s.useEffect(()=>()=>{for(const o of e.current)try{URL.revokeObjectURL(o)}catch{}e.current=[]},[]),{track:n,keepOnly:a,revokeAll:r}}function oy({offsetY:e=8}={}){const n=s.useRef(null),[a,r]=s.useState(null),o=s.useCallback(()=>r(null),[]),i=s.useCallback(()=>{try{const l=n.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 s.useEffect(()=>{if(a)return document.addEventListener("mousedown",o),()=>document.removeEventListener("mousedown",o)},[a,o]),{ref:n,rect:a,show:i,hide:o}}function sy({currentTime:e,sources:n,index:a,audioDuration:r}){const o=a||0,i=Array.isArray(n)&&n.length>0?n[o]: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 iy(e,n){if(!Array.isArray(e))return null;const a=n||0;return a<e.length-1?a+1:null}function ly({ended:e,completedByEnd:n}){return!!e||!!n}function cy(e){return e.map((n,a)=>({src:n.src,label:String(a+1),color:void 0,duration:n.duration||0}))}function uy(e){return e.reduce((n,a)=>n+(a.duration||0),0)}function dy(e,n,a){const r=Array.isArray(e)?e:e?[e]:[],o=[];for(const i of r)if(i){if(typeof i=="object"&&i!==null&&"src"in i&&i.src){const l=i;o.push({code:l.code??null,src:l.src});continue}if(typeof i=="string"&&(i.startsWith("http")||i.includes("/"))){o.push({code:null,src:i});continue}if(typeof i=="string"||typeof i=="number"){const l=String(i),c=a(l,n);c&&o.push({code:l,resolvedPath:c})}}return o}function py({audioRef:e,fillRef:n,waveProgressRef:a,sourcesRef:r,currentIndexRef:o}){const i=s.useRef(null),l=s.useCallback(()=>{i.current!==null&&(cancelAnimationFrame(i.current),i.current=null)},[]),c=s.useCallback(()=>{if(i.current!==null)return;const d=()=>{try{const p=e.current,h=sy({currentTime:p&&typeof p.currentTime=="number"?p.currentTime:0,sources:r.current,index:o.current,audioDuration:p&&p.duration?p.duration:0});try{n.current&&(n.current.style.left=`${h*100}%`)}catch{}try{a.current?.style.setProperty("--progress",String(h))}catch{}}catch{}i.current=requestAnimationFrame(d)};i.current=requestAnimationFrame(d)},[e,n,a,r,o]),u=s.useCallback(d=>{l();try{n.current&&(n.current.style.left=`${d*100}%`)}catch{}try{a.current?.style.setProperty("--progress",String(d))}catch{}},[l,n,a]);return s.useEffect(()=>l,[l]),{start:c,stop:l,settleTo:u}}function qr({btnLabel:e,soundSrc:n,bucketPath:a,onDone:r,disabled:o=!1,ttsText:i=null,className:l,showSoundWaveForm:c=!0,showNoiseWaveForm:u=!0}){const{t:d}=he.useTranslation(),p=e,h=ja(),m=s.useRef(h?.registerAnalyser);s.useEffect(()=>{m.current=h?.registerAnalyser});const g=s.useRef(null),y=s.useRef(null),C=s.useRef(null),f=ry(),v=s.useRef(null),x=s.useRef(!1),_=s.useRef(0),b=s.useRef(null),{ref:N,rect:w,show:k,hide:j}=oy();s.useEffect(()=>()=>{m.current?.("main",null),m.current?.("noise",null)},[]);const[A,S]=s.useState(!1),[q,W]=s.useState("idle"),[B,F]=s.useState("stopped"),E=s.useRef("stopped");s.useEffect(()=>{E.current=B},[B]);const[te,$]=s.useState(0),[H,Q]=s.useState("active"),ee=s.useRef(!1);s.useEffect(()=>{if(H!=="playMode"||!ee.current)return;ee.current=!1;const R=typeof document<"u"?document.activeElement:null;if(R&&R!==document.body)return;const L=C.current?.querySelectorAll("button")[1];try{L?.focus()}catch{}},[H]);const[Y,O]=s.useState(null),[T,M]=s.useState(null),[V,I]=s.useState(0),[P,z]=s.useState(!1),[ae,ne]=s.useState(0),re=h?.playbackRate??1,pe=h?.mainVolume??1,_e=h?Fr(h.settings):0,Z=h?Rl(h.settings):pe,[ie,J]=s.useState("idle"),[be,xe]=s.useState(""),[Ce]=s.useState("top"),fe=s.useRef(null),ve=s.useRef(0),Se=s.useRef(null),{start:X,stop:ue,settleTo:ke}=py({audioRef:g,fillRef:y,waveProgressRef:Se,sourcesRef:fe,currentIndexRef:ve}),{onReadyChange:Me,waitForReady:Fe,markNotReady:De}=ay({showSoundWaveForm:c,showNoiseWaveForm:u}),Pe=s.useRef(null),Le=s.useRef(o),Je=s.useRef(r),ze=s.useRef(null),He=s.useRef(!1),[ge,Ve]=s.useState(!1),Be=s.useCallback(R=>{He.current=R,Ve(R)},[]),Ee=s.useRef(null),{activeNoiseUrl:Ne,noiseSettingsRef:nt,fadeInNoise:ft,fadeOutNoise:tt}=Yb({noisePlayer:h,audioRef:g,playbackStateRef:E}),{startTTS:rt,stopTTS:Ke}=Zb({ttsText:i,playbackRate:re,mainVolume:Z,fillRef:y,waveProgressRef:Se,setProgress:$,setPlaybackState:F,setStateLocal:Q,fadeInNoise:ft,fadeOutNoise:tt,noiseSettingsRef:nt,onDoneRef:Je,handleEndRef:Ee}),je=Array.isArray(n)?n.filter(Boolean):n?[n]:[],Qe=(!je||je.length===0)&&!!i,ut=Array.isArray(Y)&&Y.length>0?Y:Array.isArray(T)&&T.length>0?T:null,qe=Math.max(Array.isArray(ut)?ut.length:0,je.length),Ye=s.useRef(!0);s.useEffect(()=>(Ye.current=!0,()=>{Ye.current=!1}),[]);const Ie=s.useRef(0),Ze=()=>{Ie.current+=1,_.current+=1},ot=s.useCallback(async(R,L=3,G=50)=>{const le=Ie.current;for(let de=0;de<L;de++){if(!Ye.current||le!==Ie.current)return!1;try{return await R.play(),!0}catch(ce){if((ce instanceof Error||typeof ce=="object"&&ce&&"name"in ce?ce.name:void 0)==="AbortError"){if(le!==Ie.current)return!1;await new Promise(Te=>setTimeout(Te,G));continue}try{xe(d("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}return!1}}try{xe(d("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}return!1},[d]),Ft=s.useCallback(()=>{const R=g.current;if(!R)return;const L=()=>{F("playing"),Q("playMode"),z(!0),X();try{Qa(),fa(R).then(ce=>{if(Ye.current)try{m.current?.("main",ce)}catch{}})}catch{}const de=nt.current;de?.enabled&&(de?.volume??0)>0&&ft(de.volume)},G=()=>{ly({ended:!!R?.ended,completedByEnd:He.current})||(F("paused"),ue(),tt())},le=()=>{try{const de=fe.current,ce=iy(de,ve.current);if(ce!==null){ve.current=ce,I(ce),z(!0);const Te=de?.[ce]&&de[ce].src;if(Te&&R){R.src=Te,R.load(),ot(R).catch(()=>{});return}}}catch{}F("stopped"),$(1);try{if(R)try{R.currentTime=0}catch{}}catch{}ue(),z(!1),tt();try{!Le.current&&Ee.current&&Ee.current()}catch{}};return R.addEventListener("play",L),R.addEventListener("pause",G),R.addEventListener("ended",le),()=>{try{R.removeEventListener("play",L),R.removeEventListener("pause",G),R.removeEventListener("ended",le),ue()}catch{}}},[ft,tt,ot,nt,X,ue]);s.useEffect(()=>Ft(),[Ft]),s.useEffect(()=>{Le.current=o},[o]),s.useEffect(()=>{Je.current=r},[r]),s.useEffect(()=>{if(o||H!=="active")return;const R=b.current;if(!R)return;let L=null;const G=requestAnimationFrame(()=>{try{const le=R.getTotalLength();if(!le)return;const de=le*.2;R.style.strokeDasharray=`${le-de} ${de}`;const ce="triFlow_"+Math.random().toString(36).slice(2);L=document.createElement("style"),L.textContent=`@keyframes ${ce}{from{stroke-dashoffset:0}to{stroke-dashoffset:-${le}}}`,document.head.appendChild(L),R.style.animation=`${ce} 2.4s linear infinite`}catch{}});return()=>{cancelAnimationFrame(G),L?.remove()}},[H,o]),s.useEffect(()=>{fe.current=Y},[Y]),s.useEffect(()=>{ve.current=V},[V]),s.useEffect(()=>{const R=C.current,L=v.current;if(!R||!L)return;let G=null;const le=32,de=60,ce=()=>{try{const Re=Array.from(R.querySelectorAll(":scope > .button"));let Ge=0;Re.forEach(Wt=>{if(Wt===L)return;const Ra=Wt.getBoundingClientRect();Ge+=Ra.width});const pt=R.getBoundingClientRect().width,lt=Math.max(0,Math.floor(pt-Ge-8)),Ue=qe;if(!Ue||lt<=0){Array.from(L.children).forEach(Wt=>{try{Wt.style.width=""}catch{}});return}let zt=Math.floor(lt/Ue);zt>de&&(zt=de),zt<le&&(zt=Math.max(le,Math.floor(lt/Ue))),Array.from(L.querySelectorAll(".button")).forEach(Wt=>{try{Wt.style.width=`${zt}px`}catch{}})}catch{}},Te=requestAnimationFrame(ce);try{G=new ResizeObserver(()=>{requestAnimationFrame(ce)}),G.observe(R),G.observe(L),window.addEventListener("resize",ce)}catch{}return()=>{try{cancelAnimationFrame(Te)}catch{}try{G&&(G.disconnect(),G=null)}catch{}try{window.removeEventListener("resize",ce)}catch{}}},[Y,T,qe]),s.useEffect(()=>()=>{try{Pe.current&&(clearTimeout(Pe.current),Pe.current=null),ze.current&&(clearTimeout(ze.current),ze.current=null)}catch{}},[]);const dt=(R,L)=>{O(R),ne(L),De(),M(cy(R)),fe.current=R},At=async(R,L)=>{Be(!1),x.current=!1,R.src=L,R.load(),await Hl(R),await Fe(),S(!1),await ot(R),Q("playMode"),I(0),z(!0)},dn=async(R,L=!1)=>{const G=g.current;S(!0),W("measuring_duration");try{const le=await Wr(R,{timeoutMs:1e4,rejectOnError:!0});dt([{src:R,objectUrl:null,duration:le}],le),W("ready"),L&&G&&await At(G,R)}finally{x.current=!1,S(!1)}},Qt=async(R,L=!1)=>{const G=g.current;S(!0),W("measuring_duration");try{const le=await Promise.all(R.map(ce=>Wr(ce,{timeoutMs:1e4})));if(!Ye.current)return;const de=R.map((ce,Te)=>({src:ce,objectUrl:null,duration:le[Te]||0}));dt(de,uy(de)),W("ready"),L&&G&&de.length>0&&await At(G,de[0].src)}finally{x.current=!1,S(!1)}},bt=async(R=!1,L=!0)=>{const G=g.current,le=n?Array.isArray(n)?n:[n]:[];if(!le||le.length===0||!le.some(Boolean))return!1;if(x.current)return null;x.current=!0,L&&S(!0),W("resolving");try{const de=dy(n,a,ts),ce=[];let Te=0;for(const Re of de){let Ge=Re.src??null,pt=null;if(!Ge&&Re.resolvedPath){try{W("getting_signed_url"),Ge=await ns(Re.resolvedPath)}catch{Ge=null}if(!Ye.current)return!1;if(!Ge)try{W("downloading");const Ue=await as(Re.resolvedPath);if(!Ye.current)return!1;if(Ue){const zt=Ue instanceof Blob?Ue:new Blob([Ue]);pt=f.track(URL.createObjectURL(zt)),Ge=pt}}catch{W("error");try{xe(d("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4.")),Q("active")}catch{}}}if(!Ge)continue;let lt=0;try{W("measuring_duration"),lt=await Wr(Ge,{timeoutMs:3e3})}catch{lt=0}if(!Ye.current){if(pt)try{URL.revokeObjectURL(pt)}catch{}for(const Ue of ce)if(Ue.objectUrl)try{URL.revokeObjectURL(Ue.objectUrl)}catch{}return!1}Te+=lt||0,ce.push({...Re,src:Ge,objectUrl:pt,duration:lt})}if(dt(ce,Te),ce.length>0&&R&&G){const Re=ce[0];Be(!1);try{f.keepOnly(ce.map(Ge=>Ge.objectUrl))}catch{}if(W("ready"),x.current=!1,Re.src&&G)try{G.src=Re.src,G.load(),await Hl(G),await Fe(),L&&S(!1),G&&await ot(G)}catch{L&&S(!1)}else L&&S(!1);Q("playMode"),I(0),z(!0)}return ce.length>0}finally{x.current=!1,L&&S(!1),W(de=>de==="ready"?"ready":"idle")}},yt=async()=>{const R=g.current;if(!(!R&&!Qe)){if(Qe){const L=window.speechSynthesis;if(H==="active"){const G=Za(),le=Array.isArray(i)?i.filter(Boolean):i?[i]:[];if(G&&le.length>0){Q("load"),S(!0),W("resolving"),x.current=!0;try{const de=await Promise.all(le.map(ce=>Promise.resolve(G(ce))));de.length>1?await Qt(de,!0):await dn(de[0],!0)}catch{x.current=!1,S(!1),Q("active"),rt(le[0]||void 0)}return}rt(le[0]||void 0);return}if(H==="playMode"){if(R){if(R.paused){if(He.current){await Tt();return}await ot(R),F("playing")}else Ze(),R.pause(),F("paused");return}try{if(L&&L.paused)try{L.resume(),F("playing")}catch{}else try{L.pause(),F("paused")}catch{}}catch{}}return}if(H==="active"){if(o&&Array.isArray(fe.current)&&fe.current.length>0){const L=fe.current[0];try{if(L.src&&R)try{R.src=L.src,R.load(),R&&await ot(R)}catch{}Q("playMode"),I(0),z(!0);return}catch{}}if(Q("load"),await bt(!0)===!1&&Ye.current){try{xe(d("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}Q("active")}return}if(H!=="load"&&(H==="playMode"||H==="active"))try{if(R&&R.paused){if(He.current){await Tt();return}R&&await ot(R),F("playing")}else R&&(Ze(),R.pause(),F("paused"))}catch(L){(L instanceof Error||typeof L=="object"&&L&&"name"in L)&&L.name}}},Tt=async()=>{const R=g.current;if(R)try{const L=fe.current;if(Array.isArray(L)&&L.length>1){await Ot(0);return}Be(!1);try{R.currentTime=0}catch{}R&&await ot(R),F("playing"),Q("playMode")}catch{}},Rt=()=>{if(Ze(),Qe){Ke();return}const R=g.current;try{if(R){try{R.pause()}catch{}try{R.currentTime=0}catch{}}}catch{}tt(),F("stopped"),Q("active"),$(0),z(!1)},en=async(R,{sameSegment:L=!1}={})=>{const G=++_.current,le=g.current,de=fe.current?.[R]?.src;try{if(Be(!1),I(R),z(!0),ve.current=R,!de||!le||(L||De(),le.src=de,le.load(),L||await Fe(),G!==_.current)||(await ot(le),G!==_.current))return;F("playing"),Q("playMode")}catch{}},_n=async()=>{const R=fe.current,L=ve.current||0;if(!R||L<=0){await Tt();return}await en(L-1)},Xe=async()=>{const R=fe.current,L=ve.current||0;if(!R||L>=R.length-1){Rt();return}await en(L+1)},Et=()=>{if(He.current)return;const R=200,L=340;Be(!0),Ze();try{$(1)}catch{}ke(1);try{J("hold")}catch{}try{const G=g.current,le=Qe&&!!G?.src;if(!Qe||le){if(G){G.pause();try{G.currentTime=0}catch{}}}else Ke();tt()}catch{}try{F("stopped")}catch{}if(z(!1),!Le.current)try{ze.current&&(clearTimeout(ze.current),ze.current=null),ze.current=setTimeout(()=>{try{J("out")}catch{}ze.current=setTimeout(()=>{try{typeof Je.current=="function"&&Je.current(!0)}catch{}try{J("idle")}catch{}ze.current=null},L)},R)}catch{}};s.useEffect(()=>{Ee.current=Et});const vt=s.useCallback(()=>xe(""),[]),Ot=async R=>{(fe.current||[])[R]&&await en(R,{sameSegment:R===ve.current})},Mt=B==="playing",Yt=s.useMemo(()=>{if(!T||T.length<=1)return T;const R=T[V];return R?[R]:T},[T,V]),tn=o===!0;s.useEffect(()=>{try{const R=g.current;R&&typeof R.playbackRate=="number"&&(R.playbackRate=re||1)}catch{}},[re]);const nn=s.useRef({raf:null,timer:null});s.useEffect(()=>{const R=g.current;if(!R)return;const L=Math.max(0,Math.min(1,Z)),G=nn.current,le=()=>{G.raf!==null&&(cancelAnimationFrame(G.raf),G.raf=null),G.timer!==null&&(clearTimeout(G.timer),G.timer=null)};le();const de=Ca(R);if(R.paused||Math.abs(de-L)<.001||typeof requestAnimationFrame!="function"){try{fn(R,L)}catch{}return}const ce=performance.now(),Te=()=>{const Re=Math.min(1,(performance.now()-ce)/150);try{fn(R,de+(L-de)*Re)}catch{}G.raf=Re<1?requestAnimationFrame(Te):null};return G.raf=requestAnimationFrame(Te),G.timer=setTimeout(()=>{le();try{fn(R,L)}catch{}},200),le},[Z]);const Pt=ie==="hold",Ht=ie==="out",pn=H==="playMode"&&!A&&!ge||Pt||Ht,xt=B!=="stopped"||Pt||Ht,Vt=B==="paused",Zt=Math.max(0,Math.min(100,(te||0)*100)),Nt=ye("audio-player__fill",pn?"is-visible":"",xt?"is-expanded":"",Vt?"is-paused":"",Ht?"is-out":"");return t.jsxs("div",{className:`audio-player ${tn?"is-disabled":""}${l?` ${l}`:""}`,role:"group","aria-label":typeof p=="string"?p:void 0,children:[t.jsxs("div",{className:`audio-player__panel ${Mt?"is-playing":""} ${A?"is-loading":""} ${H!=="default"?"is-revealed":""}`,children:[A?t.jsxs("div",{className:"audio-player__loading",role:"status","aria-live":"polite",children:[t.jsx("span",{className:"audio-player__loading-spinner","aria-hidden":"true"}),t.jsx("span",{className:"audio-player__loading-text",children:d(`training.audioStatus.${q}`,{defaultValue:ty[q]})})]}):null,H==="active"?t.jsx("button",{className:"audio-player__button",type:"button",onClick:R=>{ee.current=document.activeElement===R.currentTarget,j(),yt()},"aria-label":typeof p=="string"?p:d("training.listen","\uB4E3\uAE30"),onMouseEnter:k,onMouseLeave:j,onFocus:k,onBlur:j,children:t.jsx("span",{ref:N,className:"audio-player__button-triangle-wrap",children:t.jsx("svg",{className:"audio-player__button-triangle",viewBox:"0 0 24 24","aria-hidden":"true",children:t.jsx("path",{ref:b,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,w&&t.jsx(gn,{anchorRect:w,text:typeof p=="string"&&p?p:d("training.listenLabel","\uBB38\uC7A5 \uB4E3\uAE30"),offset:8}),t.jsxs("div",{className:`audio-player__play ${H==="playMode"||Mt?"is-visible":""}`,children:[t.jsxs("div",{ref:C,className:"audio-player__buttons",children:[t.jsx(oe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"skip-back",onClick:_n,ariaLabel:d("training.prev","\uC774\uC804"),width:"60px",variant:"transparent-white","aria-hidden":"true",tabIndex:-1,disabled:H!=="playMode"}),t.jsx(oe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:Mt?"pause":"play",onClick:yt,ariaLabel:d("common.playPause","\uC7AC\uC0DD / \uBA48\uCDA4"),width:"60px",variant:"transparent-white",disabled:H!=="playMode"}),t.jsx(oe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"square",onClick:Rt,ariaLabel:d("training.stop","\uC815\uC9C0"),width:"60px",variant:"transparent-white","aria-hidden":"true",tabIndex:-1,disabled:H!=="playMode"}),qe>1?t.jsx("div",{ref:v,className:"audio-player__source-buttons",children:Array.from({length:qe}).map((R,L)=>t.jsx(oe,{htmlType:"button",size:32,type:"dot",shape:"pill",useBorder:!1,label:String(L+1),onClick:()=>{try{Ot(L)}catch{}},ariaLabel:d("training.sourcePlay",{n:L+1}),variant:"transparent-white",selected:P&&V===L,disabled:H!=="playMode"||!(Array.isArray(Y)&&Y[L]),showTooltipInfo:!0},L))}):null,!Array.isArray(Y)||Y.length<=1?t.jsx(oe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"repeat",onClick:Tt,ariaLabel:d("common.replay","\uB2E4\uC2DC\uB4E3\uAE30"),width:"60px",variant:"transparent-white",disabled:H!=="playMode"}):null,t.jsx(oe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"skip-forward",onClick:Xe,ariaLabel:d("training.next","\uB2E4\uC74C"),width:"60px",variant:"transparent-white","aria-hidden":!0,tabIndex:-1,disabled:H!=="playMode"}),t.jsx(oe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"check",onClick:Et,ariaLabel:d("common.done","\uC644\uB8CC"),width:"60px",variant:"transparent-white",disabled:H!=="playMode"})]}),t.jsxs("div",{className:"audio-player__slider",children:[t.jsx("div",{className:Nt,ref:y,style:{left:`${Zt}%`},"aria-hidden":"true"}),(c||u)&&t.jsx(ey,{segments:Yt,progress:te,totalDuration:ae,onSegmentClick:Ot,waveProgressRef:Se,showSoundWaveForm:c,noiseSrc:u&&h?.settings.enabled&&_e>0?Ne:null,noiseRatio:h?ca(h.settings):0,noiseSpeed:h?.settings.speed??1,mainVolume:pe,onReadyChange:Me})]})]}),t.jsx("audio",{ref:g,crossOrigin:"anonymous",preload:"auto"})]}),!c&&t.jsxs("p",{className:"audio-player__no-waveform caption-1",children:[t.jsx(Oe,{icon:"triangle-alert",size:14}),d("training.noSoundWaveform","\uC18C\uB9AC \uBE44\uAD50 \uBB38\uC81C\uB294 \uC6E8\uC774\uBE0C\uD3FC\uC744 \uD45C\uD604\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.")]}),t.jsx(Fn,{message:be,position:Ce,onClose:vt})]})}function Ea(e){const{t:n}=he.useTranslation(),{text:a,label:r,anchorRect:o=null,onClose:i,closeOnOutsideClick:l=!0,isMobilePopup:c=!1}=e||{},[u,d]=s.useState(()=>{try{return localStorage.getItem("tooltip-theme")||"light"}catch{return"light"}});s.useEffect(()=>{try{localStorage.setItem("tooltip-theme",u)}catch{}},[u]);const{increase:p,decrease:h,canIncrease:m,canDecrease:g,fontSize:y,lineHeight:C}=ti({storageKey:"tooltip-fontScale"}),f=s.useCallback(()=>d(N=>N==="dark"?"light":"dark"),[]),v=s.useCallback(N=>{try{N.stopPropagation()}catch{}try{typeof i=="function"&&i()}catch{}},[i]),x=Array.isArray(a)?a:typeof a>"u"||a===null?[]:[a],_={fontSize:`${y}px`,lineHeight:`${C}px`,"--tt-line-height":`${C}px`,"--tt-marker-size":"28px"},b=t.jsxs("div",{className:`tooltip-textbox__root ${u==="dark"?"is-dark":""}`,children:[t.jsxs("div",{className:"tooltip-textbox__box",children:[r&&t.jsx("div",{className:"tooltip-textbox__label body-2b",children:r}),t.jsx("div",{className:"tooltip-textbox__text body-1",style:_,children:x.map((N,w)=>t.jsxs("div",{className:"tooltip-textbox__line",children:[x.length>1?t.jsx("div",{className:"tooltip-textbox__marker",children:t.jsx("span",{className:"tooltip-textbox__line-number button-1",children:w+1})}):null,t.jsx("span",{className:"tooltip-textbox__line-text",children:N})]},w))})]}),t.jsxs("div",{className:"tooltip-textbox__buttons",children:[t.jsx(oe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"minus",onClick:h,ariaLabel:n("training.fontSizeDecrease","\uAE00\uC790 \uD06C\uAE30 \uAC10\uC18C"),variant:u==="dark"?"transparent-white":"transparent-gray",disabled:!g}),t.jsx(oe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"plus",onClick:p,ariaLabel:n("training.fontSizeIncrease","\uAE00\uC790 \uD06C\uAE30 \uC99D\uAC00"),variant:u==="dark"?"transparent-white":"transparent-gray",disabled:!m}),t.jsx(oe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:u==="dark"?"moon":"sun-medium",onClick:f,ariaLabel:n("training.toggleBackground","\uBC30\uACBD \uC804\uD658"),variant:u==="dark"?"transparent-white":"transparent-gray"}),t.jsx(oe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"x",onClick:v,ariaLabel:n("common.close","\uB2EB\uAE30"),variant:u==="dark"?"transparent-white":"transparent-gray"})]})]});return o?t.jsx(Cn,{anchorRect:o,className:`tooltip-textbox ${u==="dark"?"is-dark":""}`,onClose:i,closeOnOutsideClick:l,isMobilePopup:c,ariaLabel:r||n("tooltip.textbox","\uBCF8\uBB38"),children:b}):t.jsx("div",{className:`tooltip-textbox ${u==="dark"?"is-dark":""}`,children:b})}function Vl({state:e="disabled"}){const{t:n}=he.useTranslation();return t.jsxs("div",{className:`ts-bullet ts-bullet--${e}`,"aria-hidden":!0,children:[t.jsx("div",{className:"bullet__dot",children:t.jsx(Oe,{icon:"chevron-right",label:n("training.next","\uB2E4\uC74C"),className:"bullet__icon",imgClassName:"bullet__icon-img",maskClassName:"bullet__icon-mask",svgClassName:"bullet__icon-svg",wrapperStyle:{},size:20})}),t.jsx("div",{className:"ts-bullet__line"})]})}function zl({title:e,children:n,className:a="",state:r="disabled",usePreviewTextBtn:o=!1,onPreviewTextBtn:i,previewText:l=null,useFaded:c,usePlayAllBtn:u=!1,onPlayAll:d,playAllActive:p=!1}){const{t:h}=he.useTranslation(),m=Xt("(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(),C=s.useRef(null),[f,v]=s.useState(!1),[x,_]=s.useState(null),[b,N]=s.useState(null),w=s.useRef(i);s.useEffect(()=>{w.current=i});const k=s.useMemo(()=>l==null?"":typeof l=="string"||typeof l=="number"?String(l):Array.isArray(l)&&l.every(S=>typeof S=="string"||typeof S=="number")?l.join(""):"",[l]),j=s.useCallback(()=>{v(!1),_(null),N(null)},[]);s.useEffect(()=>{if(!f)return;let S;try{typeof w.current=="function"&&(S=w.current())}catch{}if(S===!1){j();return}N(typeof S<"u"&&S!==null?S:null)},[k]);const A=s.useCallback(()=>{let S;try{typeof i=="function"&&(S=i())}catch{}if(S!==!1){if(N(typeof S<"u"&&S!==null?S:l),!C.current){v(q=>!q);return}if(f)v(!1),_(null),N(null);else{const q=C.current.getBoundingClientRect();_(q),v(!0)}}},[i,l,f]);return t.jsxs("div",{className:y,children:[t.jsx("p",{className:g,children:t.jsx("span",{className:"training-step__title-text",children:e??n})}),o||u?t.jsxs("div",{className:"title-controls",children:[t.jsxs("div",{className:"title-buttons",children:[u&&t.jsx(oe,{htmlType:"button",size:32,type:m?"dot":"bar",icon:"play-circle",label:m?void 0:h("training.playAll","\uBAA8\uB450 \uB4E3\uAE30"),ariaLabel:h("training.playAll","\uBAA8\uB450 \uB4E3\uAE30"),selected:p,onClick:d,variant:r==="disabled"?"disabled":"default",disabled:r==="disabled"||p,onDisabledClick:p&&r!=="disabled"?()=>{}:void 0}),o&&t.jsx("div",{ref:C,children:t.jsx(oe,{htmlType:"button",size:32,type:m?"dot":"bar",icon:"eye",label:m?void 0:h("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),ariaLabel:h("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),selected:f,onClick:A,variant:r==="disabled"?"disabled":"default",disabled:!l&&typeof i!="function"})})]}),f&&t.jsx(Ea,{text:b??l,label:h("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),anchorRect:x,onClose:j,closeOnOutsideClick:!1,isMobilePopup:!0})]}):null]})}function Ur(e,n){return typeof n!="number"||typeof e!="number"?"disabled":e<n?"done":e===n?"active":"disabled"}function Mn({index:e,stepIndex:n,isLast:a=!1,title:r="",titleProps:o={},children:i,className:l="",onDone:c=void 0,useTitleFaded:u=void 0}){const{t:d}=he.useTranslation(),[p,h]=s.useState(()=>Ur(e,n));s.useEffect(()=>{const N=Ur(e,n);if(N!==p){const w=setTimeout(()=>h(N),0);return()=>clearTimeout(w)}},[e,n,p]);const m=s.useCallback((...N)=>{Ur(e,n)==="done"||p==="done"||typeof c=="function"&&c(...N)},[e,n,p,c]),[g,y]=s.useState(!1),[C,f]=s.useState({text:"",label:"\uBB38\uC7A5 \uB4E3\uAE30",anchorRect:null,backdrop:!1,alignX:null,alignY:null}),v=s.useCallback(N=>{if(!N)return null;try{const w=N;if(typeof N=="object"&&(w.currentTarget||w.target)&&(w.nativeEvent||w.type)){const A=w.currentTarget??w.target;if(A&&typeof A.getBoundingClientRect=="function")return A.getBoundingClientRect()}if(N instanceof DOMRect)return N;const k=N;if(k&&typeof k.getBoundingClientRect=="function")return k.getBoundingClientRect();const j=N?.current;return j&&typeof j.getBoundingClientRect=="function"?j.getBoundingClientRect():null}catch{return null}},[]),x=s.useCallback((N,{text:w="",label:k="\uBB38\uC7A5 \uB4E3\uAE30",backdrop:j=!1,alignX:A="center",alignY:S="top"}={})=>{const q=v(N);f({text:w,label:k,anchorRect:q,backdrop:j,alignX:A,alignY:S}),y(!0)},[v]),_=s.useCallback(()=>{y(!1),f(N=>({...N,anchorRect:null}))},[]),b=s.Children.map(i,N=>{if(s.isValidElement(N)){const w=N;if(typeof w.type=="string")return w;const k=w.props??{},j=typeof k.onDone=="function"?k.onDone:m,A=typeof k.disabled=="boolean";let S=p==="disabled";return A&&(S=!!k.disabled),s.cloneElement(w,{onDone:j,disabled:S,showTooltip:x,hideTooltip:_})}return N});return t.jsxs("div",{className:`training-step training-step--${p} ${a?"training-step--last":""} ${l}`,"aria-current":p==="active",children:[t.jsx(Vl,{state:p}),t.jsxs("div",{className:"training-step__content",children:[t.jsx(zl,{state:p,title:r,...o,useFaded:u}),b]}),g?t.jsx(Cn,{anchorRect:C.anchorRect,backdrop:C.backdrop,onClose:_,ariaLabel:d("tooltip.textbox","\uBCF8\uBB38"),children:t.jsx(Ea,{text:C.text,onClose:_})}):null]})}function Wl({context:e,state:n="disabled",theme:a="light"}){const{t:r}=he.useTranslation(),[o,i]=s.useState("disabled"),[l,c]=s.useState(()=>{try{return localStorage.getItem("tooltip-theme")||a}catch{return a}});s.useEffect(()=>{try{localStorage.setItem("tooltip-theme",l)}catch{}},[l]);const u=()=>c(B=>B==="dark"?"light":"dark"),{increase:d,decrease:p,canIncrease:h,canDecrease:m,fontSize:g,lineHeight:y}=ti({storageKey:"textbox_fontScale"}),[C,f]=s.useState(""),v=s.useRef(null),x=s.useRef(!1),_=s.useCallback(()=>{x.current=!!v.current&&v.current.contains(document.activeElement),i("active")},[]),b=s.useCallback(()=>f(""),[]),N=B=>{try{f(B)}catch{}},w=typeof navigator<"u"&&/Mobi|Android/i.test(navigator.userAgent||"");s.useEffect(()=>{if(n!=="disabled"){const B=setTimeout(()=>i(n),0);return()=>clearTimeout(B)}},[n]);const k=s.useMemo(()=>e&&typeof e=="object"?String(e.sentence??e.text??""):typeof e=="string"?e:"",[e]),[j,A]=s.useState(k);j!==k&&(A(k),i("disabled"));const S=n==="disabled"?o:n,q=S==="disabled"?"training-text-box--disabled":S==="active"?"training-text-box--active":S==="done"?"training-text-box--done":"",W=s.useMemo(()=>({fontSize:`${g}px`,lineHeight:`${y}px`}),[g,y]);return s.useEffect(()=>{if(S==="disabled"||!x.current)return;x.current=!1;const B=document.activeElement;B&&B!==document.body||v.current?.querySelector(".training-text-box__buttons button")?.focus()},[S]),t.jsxs("div",{ref:v,className:`training-text-box ${q} ${S!=="disabled"&&l==="dark"?"is-dark":""}`,children:[S==="disabled"&&t.jsx("div",{className:"training-text-box__preview",children:t.jsx(oe,{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})}),t.jsx("div",{className:"training-text-box__area","aria-hidden":S==="disabled",children:t.jsx("span",{className:"training-text-box__inner h3",style:W,children:k})}),S!=="disabled"&&t.jsxs("div",{className:"training-text-box__buttons","aria-hidden":S==="disabled",children:[t.jsx(oe,{htmlType:"button",size:32,type:"dot",onClick:p,onDisabledClick:()=>N(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:!m,useBorder:!1,showTooltipInfo:!0,...!w&&{width:"60px"}}),t.jsx(oe,{htmlType:"button",size:32,type:"dot",onClick:d,onDisabledClick:()=>N(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:!h,useBorder:!1,showTooltipInfo:!0,...!w&&{width:"60px"}}),t.jsx(oe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:l==="dark"?"moon":"sun-medium",onClick:u,ariaLabel:r("training.toggleBackground","\uBC30\uACBD \uC804\uD658"),variant:l==="dark"?"transparent-white":"transparent-gray"})]}),t.jsx(Fn,{message:C,position:"top",onClose:b})]})}function Gr({index:e,stepIndex:n,isLast:a=!1,title:r,useTitleFaded:o,onDone:i,onChange:l,answer:c,wrongAnswers:u,choices:d,multiSelect:p=!1,correctCount:h=0,useDisabledCovered:m=!1,choiceIcons:g,shuffleChoices:y=!0}){const{t:C}=he.useTranslation(),f=r??C("training.selectConfirm","\uBB38\uC81C\uB97C \uBCF4\uACE0 \uD574\uB2F9\uD558\uB294 \uB0B4\uC6A9\uC744 \uC120\uD0DD\uD558\uC138\uC694."),v=typeof e=="number"?e:-1,x=typeof n!="number"?"disabled":v<n?"done":v===n?"active":"disabled",_=Array.isArray(d)&&d.length?d:typeof c<"u"?[c].concat(Array.isArray(u)?u:[]):void 0,b=u?u.join("||"):"",N=d?d.join("||"):"",[w,k]=s.useState(()=>Array.isArray(_)?y?Qn(_):_.slice():void 0);s.useEffect(()=>{Array.isArray(_)&&_.length?k(y?Qn(_):_.slice()):k(void 0)},[c,b,N,y]);const[j,A]=s.useState(null),[S,q]=s.useState(()=>new Set);s.useEffect(()=>{A(null),q(new Set)},[N,c,b]);const W=s.useRef(void 0);s.useEffect(()=>{const E=W.current;typeof E=="number"&&typeof n=="number"&&typeof e=="number"&&E>=e&&n<e&&(A(null),q(new Set)),W.current=n},[n,e]);const B=s.useCallback(E=>{if(x!=="active")return;const te=w?.[E];if(te==null)return;const $=te,H=x==="active"||x==="done";if(p){const Q=new Set(S),ee=Q.has($);ee?Q.delete($):Q.add($),q(Q),typeof l=="function"&&l({selectedValues:[...Q],__ts:Date.now()}),H&&(typeof h=="number"&&h>0?Q.size>=h:!ee)&&typeof i=="function"&&x==="active"&&i({selectedValues:[...Q],__ts:Date.now()})}else A($),typeof l=="function"&&l({selectedIndex:E,selectedValue:$,__ts:Date.now()}),H&&typeof i=="function"&&x==="active"&&i({selectedIndex:E,selectedValue:$,__ts:Date.now()})},[w,x,p,l,i,h,S]),F=`training-step__buttons${Array.isArray(w)&&w.length>3?" training-step__buttons--wrap-3":""}`;return t.jsx(Mn,{index:e,stepIndex:n,isLast:a,title:f,useTitleFaded:o,children:t.jsx("div",{className:F,children:Array.isArray(w)&&w.length>0?w.map((E,te)=>t.jsx(oe,{htmlType:"button",size:56,type:"bar",onClick:()=>B(te),ariaLabel:String(E),label:E,useLabel:!0,icon:g?g[String(E)]:void 0,variant:"default",disabled:x==="disabled",selected:p?S.has(E):j===E,useDisabledCovered:m,minWidth:0},String(E))):null})})}function Kr({index:e,stepIndex:n,isLast:a=!1,title:r,onDone:o,onChange:i,context:l,demoSelected:c}){const{t:u}=he.useTranslation(),d=r??u("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,h=typeof n!="number"?"disabled":p<n?"done":p===n?"active":"disabled",m=l&&typeof l=="object"?l.sentence||"":typeof l=="string"?l:"",g=l&&typeof l=="object"?l.choices:void 0,[y,C]=s.useState(c??null),f=`${String(m)}\0${JSON.stringify(g??null)}`,[v,x]=s.useState(f);v!==f&&(x(f),c==null&&C(null));const[_,b]=s.useState(c);_!==c&&(b(c),C(c??null));const N=s.useRef(void 0);s.useEffect(()=>{const A=N.current;typeof A=="number"&&typeof n=="number"&&typeof e=="number"&&A>=e&&n<e&&c==null&&C(null),N.current=n},[n,e,c]);const w=s.useCallback(A=>{const S=typeof A=="object"&&A!==null?Object.assign({},A,{__ts:Date.now()}):{value:A,__ts:Date.now()};typeof i=="function"&&i(S),h==="active"&&typeof o=="function"&&o(S)},[i,h,o]),k=s.useCallback(()=>{h==="active"&&(C(!1),w(!1))},[w,h]),j=s.useCallback(()=>{h==="active"&&(C(!0),w(!0))},[w,h]);return t.jsxs(Mn,{index:e,stepIndex:n,isLast:a,title:d,onDone:o,useTitleFaded:!1,children:[t.jsx(Wl,{context:l,state:h}),t.jsx("div",{className:"training-step__buttons",children:Array.isArray(g)&&g.length>0?g.slice(0,6).map((A,S)=>t.jsx(oe,{htmlType:"button",size:56,type:"bar",onClick:()=>{h==="active"&&(C(S),w&&w(S))},disabled:h==="disabled",ariaLabel:String(A),label:A,variant:h,selected:y===S},S)):t.jsxs(t.Fragment,{children:[t.jsx(oe,{htmlType:"button",size:56,type:"bar",onClick:k,disabled:h==="disabled",icon:"x",ariaLabel:u("training.notHeard","\uC548 \uB4E4\uB838\uC5B4\uC694."),label:u("training.notHeard","\uC548 \uB4E4\uB838\uC5B4\uC694."),variant:"default",selected:y===!1}),t.jsx(oe,{htmlType:"button",size:56,type:"bar",onClick:j,disabled:h==="disabled",icon:"circle",ariaLabel:u("training.heardWell","\uC798 \uB4E4\uB838\uC5B4\uC694."),label:u("training.heardWell","\uC798 \uB4E4\uB838\uC5B4\uC694."),variant:"default",selected:y===!0})]})})]})}function Yr({index:e,stepIndex:n,isLast:a=!1,title:r,onDone:o,btnLabel:i,soundSrc:l,bucketPath:c,usePreviewTextBtn:u,previewText:d=null,onPreviewTextBtn:p,disabled:h,_pageIndex:m,showSoundWaveForm:g,showNoiseWaveForm:y}){const{t:C}=he.useTranslation(),f=r??C("training.listenTitle","\uC81C\uC2DC\uD558\uB294 \uBB38\uC7A5\uC744 \uB4E4\uC5B4\uC8FC\uC138\uC694."),v=h??(typeof n=="number"&&typeof e=="number"?e>n:!1);return t.jsx(Mn,{index:e,stepIndex:n,isLast:a,title:f,onDone:o,titleProps:{usePreviewTextBtn:u,previewText:d,onPreviewTextBtn:p},children:t.jsx(qr,{soundSrc:l,ttsText:l?null:d??f,bucketPath:c,btnLabel:i||C("training.listenButton","\uBB38\uC7A5 \uB4E3\uAE30"),disabled:v,className:"training-step__listen-sticky",showSoundWaveForm:g,showNoiseWaveForm:y},`audio-p${m??0}-s${e}`)})}const hy=[];function Zr({index:e,stepIndex:n,isLast:a=!1,title:r,onDone:o,onChange:i,context:l=hy}){const{t:c}=he.useTranslation(),u=r??c("training.orderListDefault","\uBB38\uC7A5\uC744 \uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uBC30\uCE58\uD558\uC138\uC694."),d=T=>typeof T=="string"?T:T&&(T.context||T.sentence||T.question||"")||"",[p,h]=s.useState(Array.isArray(l)?l:[]),[m,g]=s.useState(()=>(p||[]).map((T,M)=>({id:M,text:d(T)}))),y=s.useMemo(()=>typeof n!="number"||typeof e!="number"?"disabled":e<n?"done":e===n?"active":"disabled",[n,e]),C=y!=="disabled",f=s.useRef(void 0);s.useEffect(()=>{if(f.current===l)return;f.current=l;const T=Array.isArray(l)?l:[];h(T);const M=(V=>{const I=(V||[]).map((ne,re)=>({id:re,text:d(ne)}));if(I.length<=1)return I;const P=(ne,re)=>{if(ne.length!==re.length)return!1;for(let pe=0;pe<ne.length;pe++)if(ne[pe].text!==re[pe].text)return!1;return!0};let z=Qn(I),ae=0;for(;P(z,I)&&ae<20;)z=Qn(I),ae+=1;return z})(T);g(M);try{if(typeof i=="function"){const V=M.filter((I,P)=>I.text===d(T[P])).length;i({shuffled:M,score:V,total:(T||[]).length,initial:!0,__ts:Date.now()})}if(typeof o=="function"&&y==="active"){const V=M.filter((I,P)=>I.text===d(T[P])).length;o({shuffled:M,score:V,total:(T||[]).length,initial:!0,__ts:Date.now()})}}catch{}},[l]);const v=(T,M)=>{const V=[...m],I=T+M;if(I<0||I>=V.length)return;const P=V[I];V[I]=V[T],V[T]=P,te(V);try{if(typeof o=="function"&&y==="active"){const z=V.filter((ae,ne)=>ae.text===d(p[ne])).length;o({shuffled:V,score:z,total:(p||[]).length,__ts:Date.now()})}}catch{}},[x,_]=s.useState(null),b=s.useRef(null),N=s.useRef(null),w=s.useRef(null),k=s.useRef(null),j=s.useRef(null),A=s.useRef({x:0,y:0}),S=s.useRef(null),q=s.useRef({dx:0,dy:0}),W=()=>{if(S.current!==null)return;const T=()=>{if(!b.current){S.current=null;return}S.current=requestAnimationFrame(T);const M=A.current,V=q.current||{dx:0,dy:0};b.current&&(b.current.style.transform=`translate3d(${M.x-V.dx}px, ${M.y-V.dy}px, 0)`)};S.current=requestAnimationFrame(T)},B=s.useRef(new Map),F=s.useRef(new Map),E=()=>{const T=new Map;return B.current.forEach((M,V)=>{M&&M.getBoundingClientRect&&T.set(V,M.getBoundingClientRect())}),T},te=T=>{const M=E();g(T);try{if(typeof i=="function"){const V=T.filter((I,P)=>I.text===d(p[P])).length;i({shuffled:T,score:V,total:(p||[]).length,__ts:Date.now()})}}catch{}requestAnimationFrame(()=>{const V=E();T.forEach(I=>{const P=M.get(I.id),z=V.get(I.id),ae=B.current.get(I.id);if(!ae||!P||!z)return;const ne=P.top-z.top;ne&&(ae.style.transition="none",ae.style.transform=`translateY(${ne}px)`,requestAnimationFrame(()=>{ae.style.transition="transform 420ms cubic-bezier(.22,.9,.39,1)",ae.style.transform="";const re=()=>{ae.style.transition="",ae.removeEventListener("transitionend",re)};ae.addEventListener("transitionend",re)}))})})},$=(T,M)=>{try{try{M.dataTransfer?.setData("text/plain",String(T))}catch{}try{M.dataTransfer&&(M.dataTransfer.effectAllowed="move")}catch{}try{const V=document.createElement("div");V.style.cssText="position:absolute;top:-9999px;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none;",document.body.appendChild(V),M.dataTransfer?.setDragImage(V,0,0),requestAnimationFrame(()=>{try{document.body.removeChild(V)}catch{}})}catch{}}catch{}_(T);try{const V=m[T],I=document.createElement("div");I.className="order-list__dragging-object order-list__dragging-object--visible",I.textContent=V&&V.text?V.text:"",document.body.appendChild(I),b.current=I;const P=B.current.get(V.id);let z=M.clientX||0,ae=M.clientY||0;try{if(P&&P.getBoundingClientRect){const ie=P.getBoundingClientRect();z=ie.left+ie.width/2,ae=ie.top+ie.height/2}}catch{}const ne=I.getBoundingClientRect(),re=ne.width/2,pe=ne.height/2;q.current={dx:re,dy:pe},I.style.transition="none",A.current={x:z,y:ae},I.style.transform=`translate3d(${z-re}px, ${ae-pe}px, 0)`,requestAnimationFrame(()=>{try{I.style.transition=""}catch{}W()});const _e=ie=>{const J=ie;A.current={x:J.clientX,y:J.clientY},W()};w.current=_e,document.addEventListener("mousemove",_e);const Z=ie=>{const J=ie;A.current={x:J.clientX,y:J.clientY},W()};N.current=Z,document.addEventListener("dragover",Z);try{M.dataTransfer?.setData("text/plain",String(T));try{M.dataTransfer?.setData("application/json",JSON.stringify({idx:T}))}catch{}}catch{}}catch{}},H=(T,M)=>{M.preventDefault();try{M.dataTransfer&&(M.dataTransfer.dropEffect="move")}catch{}try{j.current!==null&&(clearTimeout(j.current),j.current=null);const V=M.currentTarget&&M.currentTarget.closest?M.currentTarget.closest(".order-list__item"):null;if(V&&k.current!==V){if(k.current)try{k.current.classList.remove("drag-over")}catch{}try{V.classList.add("drag-over")}catch{}k.current=V}}catch{}},Q=(T,M)=>{M.preventDefault();const V=M.dataTransfer?.getData("text/plain")||"",I=V?parseInt(V,10):x,P=T;if(typeof I!="number"||isNaN(I)||I===P){_(null),O(),ee();return}const z=c0(m,I,P);te(z),_(null),ee();try{if(typeof o=="function"&&y==="active"){const ae=z.filter((ne,re)=>ne.text===d(p[re])).length;o({shuffled:z,score:ae,total:(p||[]).length,__ts:Date.now()})}}catch{}try{requestAnimationFrame(()=>{const ae=document.querySelectorAll(".order-list .order-list__item")[P];if(!ae)return;const ne=ae.querySelector(".order-list__slot")||ae;try{ne.classList.add("pulse"),ne.offsetHeight,ne.classList.add("to-dark");const re=()=>{ne.classList.remove("pulse","to-dark"),ne.removeEventListener("transitionend",re)};ne.addEventListener("transitionend",re)}catch{}})}catch{}O()},ee=()=>{if(b.current){try{document.body.removeChild(b.current)}catch{}b.current=null}N.current&&(document.removeEventListener("dragover",N.current),N.current=null),w.current&&(document.removeEventListener("mousemove",w.current),w.current=null),S.current!==null&&(cancelAnimationFrame(S.current),S.current=null)},Y=()=>{_(null),O(),ee()};s.useEffect(()=>()=>ee(),[]);const O=()=>{try{if(j.current!==null&&(clearTimeout(j.current),j.current=null),k.current){try{k.current.classList.remove("drag-over")}catch{}k.current=null}document.querySelectorAll(".order-list .order-list__item").forEach(T=>T.classList.remove("drag-over"))}catch{}};return s.useEffect(()=>{try{const T=Math.max(1,(m||[]).length);m.forEach((M,V)=>{const I=F.current.get(M.id);if(!I)return;let P=50;T>1&&(P=Math.round(V/(T-1)*100));try{I.style.setProperty("--marker-pos",P+"%")}catch{}})}catch{}},[m]),s.useEffect(()=>()=>{ee(),j.current!==null&&(clearTimeout(j.current),j.current=null)},[]),t.jsx(Mn,{index:e,stepIndex:n,isLast:a,title:u,children:t.jsx("div",{className:"order-list",children:m.map((T,M)=>{const V=Math.max(1,(m||[]).length),I=V>1?Math.round(M/(V-1)*100):50;return t.jsx("div",{className:"order-list__item",children:t.jsxs("div",{className:"order-list__slot","data-disabled":y==="disabled","aria-disabled":y==="disabled",children:[y!=="disabled"?t.jsx("div",{className:"order-list__marker caption-1",style:{"--marker-pos":I+"%"},ref:P=>{const z=F.current;P?z.set(T.id,P):z.delete(T.id)},children:t.jsx("span",{className:"order-list__slot-number button-1",children:M+1})}):null,t.jsxs("div",{ref:P=>{const z=B.current;P?z.set(T.id,P):z.delete(T.id)},className:`order-list__draggable ${x===M?"dragging":""}`,"data-disabled":y==="disabled","aria-disabled":y==="disabled",tabIndex:y==="disabled"?-1:0,draggable:C,onDragStart:C?P=>$(M,P):void 0,onDragEnter:C?P=>H(M,P):void 0,onDragOver:C?P=>H(M,P):void 0,onDragLeave:C?()=>{try{j.current!==null&&clearTimeout(j.current),j.current=setTimeout(()=>{try{const P=document.querySelectorAll(".order-list .order-list__item");P&&P[M]&&(P[M].classList.remove("drag-over"),k.current===P[M]&&(k.current=null))}catch{}},80)}catch{}}:void 0,onDrop:C?P=>Q(M,P):void 0,onDragEnd:C?Y:void 0,children:[t.jsx("span",{className:"order-list__item-text body-2",children:T.text}),C?t.jsxs("span",{className:"order-list__item-buttons",children:[t.jsx(oe,{htmlType:"button",size:32,type:"dot",onClick:()=>v(M,-1),ariaLabel:c("training.up"),icon:"chevron-up",variant:"transparent-gray",width:48,useFaded:"true",disabled:M===0,useBorder:!1,useDisabledInvisible:!0}),t.jsx(oe,{htmlType:"button",size:32,type:"dot",onClick:()=>v(M,1),ariaLabel:c("training.down"),icon:"chevron-down",variant:"transparent-gray",width:48,useFaded:"true",disabled:M===m.length-1,useBorder:!1,useDisabledInvisible:!0})]}):null]})]})},T.id)})})})}const my=8e3;function fy(e,n){return new Promise(a=>{let r=!1;const o=()=>{r||(r=!0,a())};e.then(o,o),setTimeout(o,n)})}function ql({index:e,stepIndex:n,isLast:a=!1,title:r,onDone:o,onChange:i,context:l=[],selectable:c=!1,hideLabel:u=!1,hideAudio:d=!1,maxCards:p}){const{t:h}=he.useTranslation(),m=r??h("training.cardInstructions","\uB0B1\uB9D0 \uCE74\uB4DC\uB97C \uBCF4\uACE0 \uC18C\uB9AC\uB97C \uB4E3\uACE0 \uD655\uC778\uD558\uC138\uC694."),g=s.useMemo(()=>Array.isArray(l)?l:l&&l.items||[],[l]),y=p??3,C=(g||[]).slice(0,y);(g||[]).length>y&&console.warn(`TrainingStepCard: ${g.length} items passed but only ${y} shown`);const f=typeof e=="number"?e:-1,v=typeof n!="number"?"disabled":f<n?"done":f===n?"active":"disabled",[x,_]=s.useState(null),b=s.useRef([]),[N,w]=s.useState(!1),k=s.useRef(!0);s.useEffect(()=>(k.current=!0,()=>{k.current=!1}),[]);const j=s.useMemo(()=>g.map(B=>B?.id??B?.word??"").join("|"),[g]);s.useEffect(()=>{_(null)},[j]);const A=s.useRef(void 0);s.useEffect(()=>{const B=A.current;typeof B=="number"&&typeof n=="number"&&typeof e=="number"&&B>=e&&n<e&&_(null),A.current=n},[n,e]);const S=s.useCallback((B,F)=>{if(c)return;const E={item:B,index:F,__ts:Date.now()};try{typeof i=="function"&&i(E)}catch{}if(v==="active"&&typeof o=="function")try{o(E)}catch{}},[c,i,v,o]),q=s.useCallback(async()=>{if(!(N||v==="disabled")){w(!0);try{for(let B=0;B<C.length&&k.current;B++){const F=b.current[B];F&&await fy(F.play(),my)}}finally{w(!1)}}},[N,v,C.length]),W=s.useCallback((B,F)=>{if(v!=="active")return;_(F);const E={selectedValue:B.word||B.title||"",selectedIndex:F,item:B,__ts:Date.now()};try{typeof i=="function"&&i(E)}catch{}if(v==="active"&&typeof o=="function")try{o(E)}catch{}},[i,v,o]);return t.jsx(Mn,{index:e,stepIndex:n,isLast:a,title:m,onDone:o,titleProps:{usePlayAllBtn:!d&&C.length>0,onPlayAll:q,playAllActive:N},children:t.jsx("div",{className:"training-step__cards",children:C.length===0?t.jsx("div",{className:"training-step__empty",children:h("training.noCards","\uCE74\uB4DC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")}):C.map((B,F)=>t.jsx(Sr,{ref:E=>{b.current[F]=E},item:B,disabled:v==="disabled",onPlayDone:()=>S(B,F),selectable:c,selected:c&&x===F,onSelect:c?()=>W(B,F):void 0,flipDelay:F*120,hideLabel:u,hideAudio:d},B&&B.id||F))})})}const Cy=160,gy={\uBCF4\uCCAD\uAE30:"hearingAid",\uC778\uACF5\uC640\uC6B0:"cochlearImplant"};function by(e,n){const a=gy[e];return a?n(`device.type.${a}`,{defaultValue:e}):e}const Ul=()=>{};function vn(e){const n=s.useId();if(!("variant"in e)){const{label:f,sub:v,onClick:x,children:_,align:b="horizontal",icon:N}=e,w=k=>{x&&k.target===k.currentTarget&&(k.key==="Enter"||k.key===" ")&&(k.preventDefault(),x())};return t.jsxs("div",{className:ye("panel-row",b==="vertical"?"panel-row--vertical":"",x?"panel-row--clickable":""),onClick:x,onKeyDown:x?w:void 0,role:x?"button":void 0,tabIndex:x?0:void 0,children:[N!=null&&t.jsx("div",{className:"panel-row__icon",children:N}),f!=null&&t.jsxs("div",{className:"panel-row__left",children:[t.jsx("div",{className:"panel-row__label body-3",children:f}),v&&t.jsx("div",{className:"panel-row__sub caption-1",children:v})]}),t.jsx("div",{className:"panel-row__right",children:_})]})}if(e.variant==="description")return t.jsx("div",{className:"panel-row panel-row--block",children:t.jsx("p",{className:"panel-row__description body-3",children:e.children})});if(e.variant==="empty")return t.jsx("div",{className:"panel-row panel-row--empty body-3",children:e.children});if(e.variant==="loading")return t.jsx("div",{className:"panel-row panel-row--loading",children:t.jsx(la,{size:28})});if(e.variant==="custom"&&!e.label)return t.jsx("div",{className:"panel-row panel-row--block",children:e.children});const{variant:a,label:r,sub:o,onClick:i,required:l,error:c,align:u="horizontal",useFullWidth:d=!1,icon:p}=e,h=a==="button"?void 0:i;let m=null;const g=a==="toggle"?`panel-toggle-${n}`:void 0;if(a==="toggle"){const f=e;m=t.jsx(Hi,{checked:f.checked,onChange:f.onChange,id:g})}else if(a==="segmented"){const f=e;m=t.jsx(En,{options:f.options,value:f.value,onChange:f.onChange,size:f.size??40,ariaLabel:r})}else if(a==="dropdown"){const f=e,v=f.dropdowns?.length?t.jsx("div",{className:`panel-row__dropdown-group${d?" panel-row__dropdown-group--full":""}`,children:f.dropdowns.map((x,_)=>t.jsx("div",{className:d?"panel-row__dropdown-item--full":void 0,children:t.jsx(Gt,{options:x.options,value:x.value,onChange:x.onChange,placeholder:x.placeholder,block:d,error:!!c,ariaLabel:x.ariaLabel??([r,x.placeholder].filter(Boolean).join(" ")||void 0)})},_))}):t.jsx(Gt,{options:f.options??[],value:f.value??"",onChange:f.onChange??Ul,block:d,error:!!c,ariaLabel:r});m=c?t.jsxs("div",{className:`panel-row__dropdown-error-wrap${d?" panel-row__dropdown-error-wrap--full":""}`,children:[v,t.jsx("span",{className:"caption-1 panel-row__error",role:"alert",children:c})]}):v}else if(a==="button"){const f=e;f.buttons?.length?m=t.jsx("div",{className:"panel-row__button-group",children:f.buttons.map((v,x)=>t.jsx(oe,{htmlType:"button",size:v.btnSize??40,variant:v.btnVariant??"default",disabled:v.disabled,onClick:v.onClick,children:v.label},x))}):m=t.jsx(oe,{htmlType:"button",size:f.btnSize??40,variant:f.btnVariant??"default",disabled:f.disabled,onClick:f.onClick,children:f.buttonLabel})}else if(a==="text"){const f=e;m=t.jsx("span",{className:`panel-row__text body-2${d?" panel-row__text--full":""}`,style:f.valueColor?{color:f.valueColor}:void 0,children:f.value})}else if(a==="input"){const f=e;m=t.jsxs("div",{className:`panel-row__input-wrap${d?" panel-row__input-wrap--full":""}`,children:[t.jsx(Tn,{value:f.value,onChange:f.onChange??Ul,onKeyDown:f.onKeyDown,onEnter:f.onEnter,placeholder:f.placeholder,inputMode:f.inputMode,readOnly:f.readOnly,disabled:f.disabled,type:f.type,autoComplete:f.autoComplete,maxLength:f.maxLength,showCount:f.showCount,multiline:f.multiline,rows:f.rows,fullWidth:d,error:c,ariaLabel:r,required:l}),f.helperText&&t.jsx("div",{className:"panel-row__helper caption-1",children:f.helperText})]})}else a==="custom"&&(m=e.children);const y=a==="input"||a==="dropdown"||(a==="text"||a==="custom")&&d,C=f=>{h&&f.target===f.currentTarget&&(f.key==="Enter"||f.key===" ")&&(f.preventDefault(),h())};return t.jsxs("div",{className:ye("panel-row",u==="vertical"?"panel-row--vertical":"",y?"panel-row--label-fixed":"",a==="text"?"panel-row--text":"",h?"panel-row--clickable":""),onClick:h,onKeyDown:h?C:void 0,role:h?"button":void 0,tabIndex:h?0:void 0,children:[p!=null&&t.jsx("div",{className:"panel-row__icon",children:p}),t.jsxs("div",{className:"panel-row__left",children:[g?t.jsxs("label",{htmlFor:g,className:"panel-row__label body-3",children:[r,l&&t.jsx("span",{className:"required-mark",children:"*"})]}):t.jsxs("div",{className:"panel-row__label body-3",children:[r,l&&t.jsx("span",{className:"required-mark",children:"*"})]}),o&&t.jsx("div",{className:"panel-row__sub caption-1",children:o})]}),t.jsx("div",{className:"panel-row__right",children:m})]})}function Gl(e){const n=e.productName||e.brand,a=[e.brand,e.fitType].filter(r=>!!r&&r!==n);return[...new Set(a)].join(" \xB7 ")}function yy({devices:e,onRelease:n,emptyLabel:a}){const{t:r}=he.useTranslation();return t.jsx("div",{className:"panel-row panel-row--device",children:["\uC88C","\uC6B0"].map(o=>{const i=e[o],l=o==="\uC88C"?r("device.direction.left","\uC88C"):r("device.direction.right","\uC6B0");return t.jsxs("div",{className:"panel-row__device-column",children:[t.jsxs("div",{className:"panel-row__device-head",children:[t.jsx("span",{className:"panel-row__device-side body-2b",children:l}),i&&n&&t.jsx(oe,{htmlType:"button",size:32,type:"dot",icon:"x",ariaLabel:r("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C"),showTooltipInfo:r("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C"),onClick:()=>n(o)})]}),i?t.jsxs("div",{className:"panel-row__device-info",children:[t.jsxs("span",{className:"panel-row__device-kind",children:[i.device&&t.jsx(it,{size:"small",variant:nl(i.device),fill:"soft",label:by(i.device,r)}),Gl(i)&&t.jsx("span",{className:"panel-row__device-detail body-3",children:Gl(i)})]}),t.jsx("span",{className:"panel-row__device-name body-2b",children:i.productName||i.brand}),t.jsx("span",{className:"panel-row__device-date caption-1",children:r("customers.device.wornSince",{date:`${i.wornYear}.${i.wornMonth}.${i.wornDay}`})})]}):t.jsx("span",{className:"panel-row__device-empty body-3",children:a??r("customers.device.notRegistered","\uBBF8\uB4F1\uB85D")})]},o)})})}function Ma({title:e,icon:n,disc:a,actions:r,size:o="medium",minHeight:i,maxWidth:l,className:c,scrollable:u,scrollbarGutter:d="auto",compactRows:p=!1,useBorder:h=!0,useBg:m=!0,useRowBorder:g=!0,labelWidth:y,form:C=!1,loading:f,empty:v,children:x}){const _=ye("panel",`panel--${o}`,C?"panel--form":"",i!==void 0?"panel--fill":"",h?"":"panel--no-border",m?"":"panel--no-bg",g?"":"panel--no-row-border",p?"panel--compact-rows":"",c),b={};return i!==void 0&&(b.minHeight=i),l!==void 0&&(b.maxWidth=typeof l=="number"?`${l}px`:l),y!==void 0&&(b["--panel-label-width"]=typeof y=="number"?`${y}px`:y),t.jsxs("div",{className:_,style:Object.keys(b).length?b:void 0,children:[(e!=null||a!=null)&&t.jsxs("div",{className:ye("panel__header",a!=null?"panel__header--with-disc":""),children:[n&&t.jsx(Oe,{icon:n,label:typeof e=="string"?e:void 0,className:"panel__icon"}),t.jsxs("div",{className:"panel__title-group",children:[e!=null&&t.jsx("h2",{className:`panel__title ${a!=null?"body-3b":"h5b"}`,children:e}),a!=null&&t.jsx("p",{className:"panel__disc caption-1",children:a})]}),r&&t.jsx("div",{className:"panel__actions",children:r})]}),f?t.jsx(vn,{variant:"loading"}):v!=null&&s.Children.toArray(x).length===0?t.jsx(vn,{variant:"empty",children:v}):u?t.jsx("div",{className:ye("panel__body--scroll",d==="stable"&&"panel__body--gutter-stable"),children:x}):x]})}function vy({cols:e=2,children:n}){return t.jsx("div",{className:"panel-grid",style:{"--panel-grid-cols":e},children:n})}function xy(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 Kl(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"}]}xy(Dt.t.bind(Dt)),Kl(Dt.t.bind(Dt));const Xr="none",_y=.5,wy=1.5,ky=.25;function Jr({title:e,valueLabel:n,value:a,min:r,max:o,step:i,tickStep:l,size:c,onChange:u}){return t.jsxs(vn,{variant:"custom",label:e,useFullWidth:!0,children:[t.jsx(Ji,{value:a,onChange:u,min:r,max:o,step:i,size:c,showBgTick:!0,tickStep:l,ariaLabel:e,className:"noise-settings__slider-input"}),t.jsx("div",{className:"noise-settings__value button-1",children:n})]})}function Yl({anchorRect:e,onClose:n}){const{t:a}=he.useTranslation(),r=Xt("(max-width: 767px)")?40:24,o=ja(),i=ca(o?.settings??da),l=o?.settings.type??"defaultNoise",c=o?.settings.enabled??!0,u=o?.playbackRate??1,d=o?.mainVolume??1,p=Math.round(d*100),h=s.useCallback(C=>{try{o?.setMainVolume(Math.max(0,Math.min(1,C/100)))}catch{}},[o]),m=s.useCallback(C=>{try{o?.setPlaybackRate(C)}catch{}},[o]),g=s.useCallback(C=>{const f=Math.min(Da,Math.max(0,Math.round(C*10)/10));try{o?.setSettings({noiseRatio:f})}catch{}},[o]),y=s.useCallback(C=>{try{C===Xr?o?.setSettings({enabled:!1}):o?.setSettings({type:C,enabled:!0})}catch{}},[o]);return t.jsx(Cn,{anchorRect:e,offset:12,onClose:n,ariaLabel:a("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),isMobilePopup:!1,closeOnOutsideClick:!1,header:t.jsxs("div",{className:"noise-settings__header",children:[t.jsx("span",{children:a("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815")}),t.jsx(oe,{htmlType:"button",size:40,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,ariaLabel:a("common.close","\uB2EB\uAE30"),onClick:n})]}),children:t.jsxs(Ma,{className:"noise-settings",useBorder:!1,labelWidth:72,children:[t.jsx(Jr,{title:a("training.playVolumeTitle","\uC804\uCCB4 \uC18C\uB9AC"),valueLabel:`${p}%`,value:p,min:0,max:100,step:10,size:r,onChange:h}),t.jsx(Jr,{title:a("training.playSpeedTitle","\uC7AC\uC0DD \uC18D\uB3C4"),valueLabel:`${u.toFixed(2)}x`,value:u,min:_y,max:wy,step:ky,size:r,onChange:m}),t.jsx(vn,{variant:"custom",label:a("training.noiseTypeTitle","\uC18C\uC74C \uC885\uB958"),useFullWidth:!0,children:t.jsx(En,{ariaLabel:a("training.noiseTypeTitle","\uC18C\uC74C \uC885\uB958"),size:40,shape:"rounded",options:[{key:Xr,label:a("training.noise.type.none","\uC5C6\uC74C")},...Kl(a).map(C=>({key:C.value,label:C.label}))],value:c?l:Xr,onChange:y})}),t.jsx(Jr,{title:a("training.noiseRatioTitle","\uC18C\uC74C \uBE44\uC728"),valueLabel:a("training.noiseRatioValue","{{ratio}}\uBC30",{ratio:i.toFixed(1)}),value:i,min:0,max:Da,step:Ml,size:r,onChange:g})]})})}function Zl({useNoiseSettingBtn:e=!1,onSettings:n,onNext:a,onResult:r,stepIndex:o=0,stepCount:i=0,pageIndex:l=0,pageCount:c=1}){const{t:u}=he.useTranslation(),[d,p]=s.useState(!1),[h,m]=s.useState(null),[g,y]=s.useState(!1),C=s.useRef(null),f=s.useRef(null),v=ja(),x=l<c-1,_=l===c-1,b=o===Math.max(0,i);s.useEffect(()=>{e||(p(!1),m(null))},[e]);const N=s.useCallback(()=>{p(!1),m(null)},[]),w=s.useCallback(()=>{if(d){p(!1),m(null);return}const A=C?.current?.getBoundingClientRect();A&&m(A),n?.(),p(!0)},[d,n]),k=s.useCallback(()=>{if(d){p(!1),m(null);return}const A=f?.current?.getBoundingClientRect();A&&m(A),n?.(),p(!0)},[d,n]),j=s.useCallback(()=>y(A=>!A),[]);return t.jsxs("div",{className:"pp-bottom",children:[t.jsxs("div",{className:"pp-bottom__left",children:[e?t.jsxs(t.Fragment,{children:[t.jsx("div",{className:"pp-bottom__settings--desktop",children:t.jsx("div",{ref:C,className:"pp-bottom__tooltip-trigger","data-tooltip-ignore":!0,children:t.jsx(oe,{htmlType:"button",size:56,type:"bar",icon:"settings",onClick:w,selected:d,ariaLabel:u("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),label:u("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),minWidth:140})})}),t.jsx("div",{className:"pp-bottom__settings--mobile",children:t.jsx("div",{ref:f,className:"pp-bottom__tooltip-trigger","data-tooltip-ignore":!0,children:t.jsx(oe,{htmlType:"button",size:56,type:"dot",icon:"settings",onClick:k,selected:d,ariaLabel:u("training.settings","\uC124\uC815"),minWidth:52})})})]}):null,e&&t.jsx(oe,{htmlType:"button",size:40,type:"dot",shape:"pill",icon:"audio-lines",onClick:j,selected:g,ariaLabel:u("training.meter.toggle","\uC624\uB514\uC624 \uBBF8\uD130 \uD45C\uC2DC")}),e&&g&&t.jsxs("div",{className:"pp-bottom__meters",children:[t.jsxs("div",{className:"pp-bottom__meter",children:[t.jsx("span",{className:"pp-bottom__meter-label caption-1",children:u("training.meter.sentence","\uC7AC\uC0DD")}),t.jsx(wr,{analyser:v?.mainAnalyser??null,orientation:"horizontal",length:112,label:"db",labelPos:"left",ariaLabel:u("training.meter.sentence","\uC7AC\uC0DD")})]}),t.jsxs("div",{className:"pp-bottom__meter",children:[t.jsx("span",{className:"pp-bottom__meter-label caption-1",children:u("training.meter.noise","\uC18C\uC74C")}),t.jsx(wr,{analyser:v?.noiseAnalyser??null,orientation:"horizontal",length:112,label:"db",labelPos:"left",ariaLabel:u("training.meter.noise","\uC18C\uC74C")})]})]})]}),t.jsxs("div",{className:"pp-bottom__right",children:[_&&t.jsx(oe,{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:!b}),x&&t.jsx(oe,{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:!b})]}),e&&d&&t.jsx(Yl,{anchorRect:h,onClose:N})]})}function Xl({title:e,subtitle:n,desc:a,depth:r,icon:o,wrapperStyle:i,iconTooltip:l,pageIndex:c,pageCount:u,progressMax:d,progressIndex:p,onBack:h,onClose:m}){const{t:g}=he.useTranslation(),y=Xt("(max-width: 767px)"),C=Number.isInteger(p)?p:c||0,f=Number.isInteger(d)?d:u||0,v=h||m,x=Array.isArray(r)?y?r[r.length-1]:r.join(" / "):r,_=typeof e=="string"?e.trim():e,b=typeof n=="string"?n.trim():n,N=!!(_||b),w=N?_||b:g("common.emptyTrainingName","\uD6C8\uB828 \uC774\uB984\uC774 \uBE44\uC5B4 \uC788\uC2B5\uB2C8\uB2E4."),k=x||(_?n:void 0),j=y&&typeof k=="string"&&(k.includes(" \xB7 ")||k.includes(" / "))?k.split(/\s[·/]\s/).pop():k,A=s.useMemo(()=>{const S=i&&typeof i=="object"?{...i}:{};return!("width"in S)&&!("height"in S)&&(S.width="40px",S.height="40px"),S},[i]);return t.jsxs("header",{className:"pp-title training-popup-title",children:[t.jsxs("div",{className:"pp-title__left",children:[v?t.jsx(oe,{htmlType:"button",size:48,type:"dot",icon:"chevron-left",ariaLabel:g("common.back","\uB4A4\uB85C"),onClick:v,useBorder:!1,iconSize:"large",iconColor:"--color-black",variant:"transparent-gray"}):null,t.jsx("div",{children:o?t.jsx(ol,{icon:o,label:e,tooltip:l,wrapperStyle:A}):null}),t.jsxs("div",{className:"pp-title__text",children:[j?t.jsx("span",{className:"pp-title__depth caption-1",children:j}):null,t.jsx("span",{className:`pp-title__title h2${N?"":" pp-title__title--empty"}`,children:w}),a?t.jsx("span",{className:"pp-title__description caption-1",children:a}):null]})]}),t.jsx(tl,{max:Math.max(0,f??0),index:Math.max(0,C??0)})]})}function Ay(){typeof window<"u"&&window.dispatchEvent(new CustomEvent("speechear.popup.close"))}function Ny(e){return!e&&e!==0?[]:Array.isArray(e)?e.flatMap(n=>typeof n=="string"?n.split("|").map(a=>a.trim()).filter(Boolean):n||n===0?[String(n)]:[]):typeof e=="string"?e.split("|").map(n=>n.trim()).filter(Boolean):[String(e)]}const Jl=(e,n)=>{if(!n)return n;const a=typeof Dt?.t=="function"?Dt.t(e,{defaultValue:n}):void 0;return typeof a=="string"&&a?a:n};function Ql(e,n,a){const r=e,o=r?.title||r?.name||(Array.isArray(n)?n[n.length-1]:void 0)||a||"\uD6C8\uB828",i=xs().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:o,label:r?.title||o,depth:n,icon:i?.icon,wrapperStyle:i?.color?{"--t-item-fg":i.color}:void 0,iconTooltip:[i?Jl(`topic.${i.key}`,i.label):void 0,l?Jl(`topic.sub.${l.key}`,l.label):void 0].filter(Boolean).join(" / ")||void 0}}function Qr(e){return e&&typeof e=="object"&&typeof e.__ts=="number"?e.__ts:0}function By(e){const n=e;return Array.isArray(n?.items)?n.items:Array.isArray(e)?e:e?[e]:[]}function Sy({idPrefix:e,trainingData:n,depth:a,fallbackTitle:r="\uD6C8\uB828",pages:o=[],emptyMessage:i,buildResults:l,metaPatch:c}){const u=Ql(n,a,r),d=typeof c=="function"?c(u)||{}:c||{},p=n?.id||n?.title||o.length;return{id:`${e}:${p}`,meta:{...u,...d},pages:o,emptyMessage:i,buildResults:l}}function Dy(e){if(typeof e=="string")return e;if(e&&typeof e=="object"){const n=e;return n.context||n.sentence||n.question||""||""}return""}function jy(e){if(e&&typeof e=="object"){const n=e;if(Array.isArray(n.selectedValues))return n.selectedValues;if(n.selectedValue!==void 0)return n.selectedValue;if(n.selectedIndex!==void 0)return n.selectedIndex;if(n.value!==void 0)return n.value}return e}function Ty(e,n=[]){if(Array.isArray(e))return e.join(", ");if(typeof e=="number"&&Array.isArray(n))return String(n[e]??"");if(typeof e=="string")return e}function ec(e,n){if(!(!e||typeof e!="object"))return e[`step-${n}`]}function Ey(e,n,a,r){return ec(e,n*a+r)}function My({payload:e,selected:n,choices:a=[],correctAnswers:r=[]}){if(e&&typeof e=="object"){const o=e;if(Array.isArray(o.selectedValues))return r.every(i=>o.selectedValues.includes(i))&&o.selectedValues.every(i=>r.includes(i));if(typeof o.correct=="boolean")return o.correct}if(r.length){if(typeof n=="number"&&Array.isArray(a)&&a.length)return r.some(o=>String(o)===String(a[n]));if(typeof n<"u")return r.some(o=>String(o)===String(n))}}function Ly(e){return e?Array.isArray(e.items)?e.items.map(n=>{const a=n;return typeof n=="string"?{sentence:n}:{sentence:a.context||a.sentence||"",contextCode:a.contextCode||a.context_code}}):Array.isArray(e.sentences)?e.sentences.map(n=>{const a=n;return typeof n=="string"?{sentence:n}:{sentence:a.sentence||a.context||"",contextCode:a.contextCode}}):Array.isArray(e.contexts)?e.contexts:e.contextCode?[{contextCode:e.contextCode}]:[]:[]}const tc=s.createContext(null);function $y(){const e=s.useContext(tc);if(!e)throw new Error("useTrainingPagePopupContext must be used inside TrainingPagePopup");return e}function Ry({index:e,stepIndex:n,isLast:a=!1,title:r,choices:o=[],onDone:i,onChange:l}){const{t:c}=he.useTranslation(),u=typeof e=="number"?e:-1,d=typeof n!="number"?"disabled":u<n?"done":u===n?"active":"disabled",[p,h]=s.useState(()=>o.map(()=>null)),m=JSON.stringify(o),g=o.length;s.useEffect(()=>{h(Array.from({length:g},()=>null))},[m]);const y=s.useMemo(()=>p.filter(v=>v!==null).length+1,[p]),C=s.useCallback(v=>{if(d!=="active")return;const x=p;let _;if(x[v]!=null){const N=x[v];_=x.map(w=>w!==null&&w>=N?null:w)}else _=[...x],_[v]=y;h(_);const b={selectedOrder:_,words:o,__ts:Date.now()};try{typeof l=="function"&&l(b)}catch{}if(x[v]==null&&_.length>0&&_.every(N=>N!==null))try{typeof i=="function"&&i(b)}catch{}},[d,p,y,l,i,o]),f=r??c("training.selectInOrder","\uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uCE74\uB4DC\uB97C \uC120\uD0DD\uD558\uC138\uC694.");return t.jsx(Mn,{index:e,stepIndex:n,isLast:a,title:f,onDone:i,children:t.jsx("div",{className:"training-step__cards",children:o.map((v,x)=>t.jsx(Sr,{item:{word:v},disabled:d==="disabled",selectable:!0,selected:p[x]!==null,orderRank:p[x],onSelect:()=>C(x),flipDelay:x*120,hideLabel:!1,hideAudio:!0},`${v}-${x}`))})})}function La(e){return null}La.__isTrainingPage=!0;function Wn(e,n){const a=$y();return{ctx:a,index:e,stepIndex:a.currentStepIndex,isLast:typeof e=="number"&&typeof n=="number"?e===n-1:!1,onDone:r=>a.handleStepDone(r,e),onChange:r=>a.handleStepChange(r,e)}}function nc({_stepIndex:e,_totalSteps:n,...a}){const{index:r,stepIndex:o,isLast:i,onDone:l}=Wn(e,n);return t.jsx(Yr,{...a,index:r,stepIndex:o,isLast:i,onDone:l})}function ac({_stepIndex:e,_totalSteps:n,...a}){const{index:r,stepIndex:o,isLast:i,onDone:l,onChange:c}=Wn(e,n);return t.jsx(Gr,{...a,index:r,stepIndex:o,isLast:i,onDone:l,onChange:c})}function rc({_stepIndex:e,_totalSteps:n,...a}){const{index:r,stepIndex:o,isLast:i,onDone:l,onChange:c}=Wn(e,n);return t.jsx(Kr,{...a,index:r,stepIndex:o,isLast:i,onDone:l,onChange:c})}function oc({_stepIndex:e,_totalSteps:n,...a}){const{index:r,stepIndex:o,isLast:i,onDone:l,onChange:c}=Wn(e,n);return t.jsx(Zr,{...a,index:r,stepIndex:o,isLast:i,onDone:l,onChange:c})}function sc({_stepIndex:e,_totalSteps:n,...a}){const{index:r,stepIndex:o,isLast:i,onDone:l,onChange:c}=Wn(e,n);return t.jsx(ql,{...a,index:r,stepIndex:o,isLast:i,onDone:l,onChange:c})}function Py({_stepIndex:e,_totalSteps:n,...a}){const{index:r,stepIndex:o,isLast:i,onDone:l,onChange:c}=Wn(e,n);return t.jsx(Ry,{...a,index:r,stepIndex:o,isLast:i,onDone:l,onChange:c})}function eo(...e){for(const n of e)if(typeof n=="string"){const a=n.trim();if(a.length)return a}else{if(typeof n=="number"||typeof n=="boolean")return String(n);if(Array.isArray(n)&&n.length)return n.join(", ");if(n&&typeof n=="object"){const a=n,r=[a.text,a.label,a.value];for(const o of r){if(typeof o=="string"&&o.trim().length)return o.trim();if(typeof o=="number"||typeof o=="boolean")return String(o)}}}return null}function Iy(e){return eo(e?.question,e?.q,e?.sentence,e?.text,e?.prompt,e?.wording)}function ic(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 n=eo(e?.status,e?.result,e?.judge,e?.note);if(n){const a=n.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 lc(e){const{score:n,contextsLength:a,results:r=[],subtitle:o,onReplay:i,onClose:l,inline:c=!1}=e||{},{t:u}=he.useTranslation();s.useEffect(()=>{const C=a??0;if(n!=null&&C>0&&n/C>.5){const f=window.setTimeout(()=>{window.dispatchEvent(new CustomEvent("party:trigger",{detail:{count:140,strength:1.6,duration:2200}}))},0);return()=>window.clearTimeout(f)}},[n,a]);const d=s.useCallback(C=>{const f=ic(C),v=eo(C?.wording,C?.label);return f===!0?{variant:"main",label:v??u("training.result.heardWell","\uC798 \uB4E4\uC5C8\uC5B4\uC694")}:f===!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]),p=a??0,h=n??0,m=s.useMemo(()=>Array.isArray(r)?r:[],[r]),g=s.useMemo(()=>m.map(C=>{const f=C??{},v=Iy(f)||u("training.result.noContent","(\uB0B4\uC6A9\uC5C6\uC74C)"),{variant:x,label:_}=d(f),b=Array.isArray(f.corrects)?f.corrects:[],N=b.length?b.join(", "):f.answer!=null&&f.answer!==""?String(f.answer):null,w=typeof f.selectedText=="string"?f.selectedText:null,k=ic(f)===!0;return{problem:v,variant:x,label:_,answer:N,selectedText:w,isCorrect:k}}),[m,d,u]),y=s.useMemo(()=>g.some(C=>C.answer!==null||C.selectedText!==null),[g]);return t.jsx(yn,{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",footerClassName:"trp-result__foot",footer:({animateThen:C,closeWithAnimation:f})=>t.jsxs("div",{className:"trp-actions",children:[t.jsx(oe,{htmlType:"button",size:56,type:"bar",label:u("training.result.replay","\uB2E4\uC2DC\uD558\uAE30"),onClick:()=>C(i)}),t.jsx(oe,{htmlType:"button",size:56,type:"bar",label:u("training.result.done","\uC644\uB8CC"),variant:"main",onClick:f})]}),children:()=>t.jsxs("div",{className:"trp-result is-on",children:[t.jsxs("header",{className:"trp-result__head",children:[t.jsx("p",{className:"trp-result__eyebrow caption-1",children:u("training.result.eyebrow","\uD6C8\uB828 \uC644\uB8CC")}),t.jsx("h1",{className:"trp-result__title h2",children:u("training.result.title","\uD6C8\uB828\uC744 \uBAA8\uB450 \uB9C8\uCCE4\uC2B5\uB2C8\uB2E4.")}),o&&t.jsx("p",{className:"trp-result__subtitle body-3",children:o}),t.jsx("div",{className:"trp-score",children:t.jsxs("div",{className:"trp-score__figure","aria-label":u("training.result.scoreAria",{correct:h,total:p}),children:[t.jsx("span",{className:"trp-score__big",children:h}),t.jsx("span",{className:"trp-score__sep",children:"/"}),t.jsx("span",{className:"trp-score__total",children:p})]})})]}),g.length>0&&t.jsx("section",{className:"trp-result__body",children:t.jsxs("div",{className:`result-table${y?" result-table--answer":""}`,role:"table","aria-label":u("training.result.tableAriaLabel","\uBB38\uD56D\uBCC4 \uD310\uC815"),children:[t.jsxs("div",{className:"result-table__head caption-1",role:"row",children:[t.jsx("span",{role:"columnheader",children:u("common.col.problem","\uBB38\uC81C")}),y&&t.jsx("span",{role:"columnheader",children:u("training.result.colAnswerSelected","\uC815\uB2F5 \xB7 \uC120\uD0DD")}),t.jsx("span",{className:"col-right",role:"columnheader",children:u("training.result.colJudge","\uD310\uC815")})]}),g.map((C,f)=>t.jsxs("div",{className:"result-table__row",role:"row",children:[t.jsxs("div",{className:"trp-row__problem",children:[t.jsx("span",{className:"trp-row__no caption-1",children:String(f+1).padStart(2,"0")}),t.jsx("div",{className:"trp-row__q body-2",children:C.problem})]}),y&&t.jsxs("div",{className:"trp-row__answers",children:[C.answer!==null&&t.jsxs("div",{className:"trp-row__answer-line",children:[t.jsx("span",{className:"trp-row__answer-label answer-correct caption-1",children:u("training.result.colAnswer","\uC815\uB2F5")}),t.jsx("span",{className:"trp-row__answer-value body-2",children:C.answer})]}),t.jsxs("div",{className:"trp-row__answer-line",children:[t.jsx("span",{className:`trp-row__answer-label answer-selected caption-1 ${C.isCorrect?"is-correct":"is-wrong"}`,children:u("training.result.colSelected","\uC120\uD0DD")}),t.jsx("span",{className:`trp-row__answer-value body-2 ${C.isCorrect?"is-correct":"is-wrong"}`,children:C.selectedText??"\u2014"})]})]}),t.jsx("div",{className:"trp-row__judge",children:t.jsx(it,{variant:C.variant,label:C.label,fill:"soft",minWidth:80})})]},f))]})})]})})}function Fy(e){s.useEffect(()=>{if(!e)return;const n=new Date;return()=>{const a=new Date;a.getTime()-n.getTime()<5e3||h0({trainingType:e,startedAt:n.toISOString(),endedAt:a.toISOString()})}},[e])}function to(e,n){return e&&e.id||`page-${n??0}`}function no(e,n){return e&&e.key||`step-${n??0}`}function $a(){return{pageIndex:0,stepIndex:0,answersByPage:{}}}function Oy(e,n){return typeof e?.props=="function"?e.props(n)||{}:e?.props||{}}const cc=new Set(["LISTEN_IN_NOISE","SHORT_STORY","LONG_STORY","ORDERING_SENTENCE"]),Hy=e=>t.jsx(lc,{score:e.score,contextsLength:e.contextsLength,results:e.results,onReplay:e.onReplay,onClose:e.onClose});function Vy(e){const{scenario:n,title:a,subTitle:r,depth:o,icon:i,wrapperStyle:l,iconTooltip:c,pageIndex:u,pageCount:d,stepIndex:p,stepCount:h,onBack:m,onComplete:g,onNext:y,onSettings:C,useNoiseSetting:f=!0,children:v,ariaLabel:x,label:_,buildResults:b,onResult:N,typeKey:w,entryPoint:k,dailyTotal:j,itemRef:A,renderResultPopup:S,noiseOverride:q}=e;Fy(w&&!cc.has(w)?w:"");const W=s.useRef(0);s.useEffect(()=>{W.current=Date.now()},[]);const{t:B}=he.useTranslation(),F=N,E=!!n,te=n?.id||null,$=n?.meta||{},H=Array.isArray(n?.pages)?n.pages:[],Q=Array.isArray(v)||s.isValidElement(v)&&typeof v!="function"?s.Children.toArray(v).filter(s.isValidElement):[],ee=Q.length>0,Y=R=>R===La||R?.__isTrainingPage===!0,O=ee&&Q.some(R=>Y(R.type)),T=O?Q.filter(R=>Y(R.type)).map((R,L)=>{const G=R.props||{};return{id:`children-page-${L}`,steps:s.Children.toArray(G.children).filter(s.isValidElement),pageTop:G.pageTop||G.top||null,pageBottom:G.pageBottom||G.bottom||null}}):[{id:"children-page-0",steps:Q}],M=ee&&!E&&typeof v!="function",V=M?Math.max(1,T.length):0;s.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")}},[]),s.useEffect(()=>{if(typeof document>"u"||!document.body)return;const R=document.body;return R.dataset.ihabTrainingPopupCount=String(Number(R.dataset.ihabTrainingPopupCount||"0")+1),R.classList.add("ihab-training-popup-open"),()=>{const L=Number(R.dataset.ihabTrainingPopupCount||"1")-1;L>0?R.dataset.ihabTrainingPopupCount=String(L):(delete R.dataset.ihabTrainingPopupCount,R.classList.remove("ihab-training-popup-open"))}},[]),s.useEffect(()=>{if(!(typeof document>"u"||!document.body))return Ug()},[]);const[I,P]=s.useState({...da,enabled:!1}),z=s.useRef(I);s.useEffect(()=>{z.current=I},[I]);const ae=s.useRef(q),ne=s.useRef(!1),re=s.useRef(null);s.useEffect(()=>{let R=!1;const L=G=>{if(R)return;ne.current=!0;const le=G?ua({...da,enabled:!1},G):{...da},de=re.current;re.current=null;const ce=de?ua(le,de):le;z.current=ce,P(ce),de&&!ae.current&&gs(ce),ya(ce);const Te=ae.current;if(Te){const Re=typeof Te=="function"?Te(ce):Te,Ge=ua(ce,Re);z.current=Ge,P(Ge),ya(Ge)}};return g0().then(L),()=>{R=!0}},[]);const[pe,_e]=s.useState(null),[Z,ie]=s.useState(null),J=s.useCallback((R,L)=>{R==="main"?_e(L):ie(L)},[]),be=s.useCallback(R=>{const L=ua(z.current,R);if(z.current=L,P(L),!ne.current){re.current={...re.current??{},...R},ya(L);return}ae.current||gs(L),ya(L)},[]),xe=I.mainSpeed,Ce=I.mainVolume,fe=s.useCallback(R=>be({mainSpeed:R}),[be]),ve=s.useCallback(R=>be({mainVolume:R}),[be]),Se=s.useMemo(()=>({settings:I,setSettings:be,registerAnalyser:J,mainAnalyser:pe,noiseAnalyser:Z,playbackRate:xe,setPlaybackRate:fe,mainVolume:Ce,setMainVolume:ve}),[I,be,J,pe,Z,xe,fe,Ce,ve]),X=s.useRef(null),[ue,ke]=s.useState(0),[Me,Fe]=s.useState("center"),[De,Pe]=s.useState(!1),Le=s.useRef(!1),Je=s.useRef(null),ze=s.useCallback(R=>{Le.current||(Le.current=!0,Pe(!0),Je.current=setTimeout(R,Cy))},[]);s.useEffect(()=>()=>{Je.current&&clearTimeout(Je.current)},[]);const He=s.useRef(m);s.useEffect(()=>{He.current=m}),s.useEffect(()=>{const R=X.current,L=document.activeElement;if(R){const G=Array.from(R.querySelectorAll(Nn)).filter(le=>!le.closest('[aria-hidden="true"]'))[0];if(G)try{G.focus()}catch{}}return()=>{const G=document.activeElement;if(!G||G===document.body||R&&R.contains(G))try{L?.focus?.()}catch{}}},[]),s.useEffect(()=>Bn(()=>ze(()=>{const R=He.current;typeof R=="function"&&R()})),[ze]),sr(X,!0);const[ge,Ve]=s.useState(!1),Be=s.useRef(!1),[Ee,Ne]=s.useState(null),nt=s.useRef(0),ft=()=>{nt.current+=1,Ne(null)},[tt,rt]=s.useState(""),[Ke,je]=s.useState(()=>$a()),Qe=s.useRef(typeof u=="number"?u:null);s.useEffect(()=>{!E&&!M||(je($a()),ft())},[E,te,M]),s.useEffect(()=>{M&&je(R=>{const L=Math.max(0,Math.min(R.pageIndex,Math.max(0,V-1)));return L!==R.pageIndex?{...R,pageIndex:L,stepIndex:0}:R})},[M,V]);const ut=M?Math.max(0,Math.min(Ke.pageIndex,V-1)):0,qe=M?T[ut]:null,Ye=M&&qe&&Array.isArray(qe.steps)?qe.steps:[],Ie=E?Ke.pageIndex:M?ut:typeof u=="number"?u:0,Ze=E?H[Math.max(0,Math.min(Ke.pageIndex,Math.max(0,H.length-1)))]:null,ot=E&&Ze&&Array.isArray(Ze.steps)?Ze.steps:[],Ft=E?ot.length:M?Ye.length:typeof h=="number"?h:0,dt=E||M?Math.max(0,Math.min(Ke.stepIndex,Math.max(0,Ft))):typeof p=="number"?p:0,At=E?H.length:M?V:typeof d=="number"?d:0;s.useLayoutEffect(()=>{const R=Qe.current;if(typeof Ie=="number"&&R!==null&&Ie!==R&&Ie>R)try{rt(B("training.problemNotice",{n:Ie+1}))}catch{}Qe.current=typeof Ie=="number"?Ie:Qe.current},[Ie,u,B]),s.useLayoutEffect(()=>{const R=X.current;if(!R)return;const L=()=>R.querySelector(".page-popup__scroll");let G=null,le=null,de=null;const ce=lt=>{const Ue=L();if(!Ue)return;const zt=Ue.scrollHeight<=Ue.clientHeight;if(Fe(zt?"center":"top"),lt&&!Be.current){Be.current=!0;try{Ve(!0)}catch{}try{Ge.disconnect()}catch{}}},Te=()=>{G!==null&&cancelAnimationFrame(G),G=requestAnimationFrame(()=>{le!==null&&clearTimeout(le),le=setTimeout(()=>ce(!0),60)})},Re=()=>{de!==null&&cancelAnimationFrame(de),de=requestAnimationFrame(()=>ce(!1))};Te(),window.addEventListener("resize",Re);const Ge=new MutationObserver(Te);Ge.observe(R,{childList:!0,subtree:!0,attributes:!0});const pt=setTimeout(()=>{Be.current||ce(!0)},400);return()=>{window.removeEventListener("resize",Re),G!==null&&cancelAnimationFrame(G),le!==null&&clearTimeout(le),de!==null&&cancelAnimationFrame(de),clearTimeout(pt);try{Ge.disconnect()}catch{}}},[X]);const dn=s.useCallback(R=>{X.current&&(X.current._childOnNext=R)},[]),Qt=s.useCallback(R=>{X.current&&(X.current._childOnResult=R)},[]),bt=s.useCallback((R,L,G)=>{je(le=>{const de=le.answersByPage[R]||{},ce=de[L],Te=Qr(G),Re=Qr(ce);return ce&&Re>Te?le:{...le,answersByPage:{...le.answersByPage,[R]:{...de,[L]:G}}}})},[je]),yt=s.useCallback((R,L,G)=>{const le=to(Ze,Ie),de=no(R,L);bt(le,de,G)},[Ze,Ie,bt]),Tt=s.useCallback((R,L,G)=>{const le=to(Ze,Ie),de=no(R,L);bt(le,de,G),!G?.allowChange&&R?.autoAdvance!==!1&&je(ce=>({...ce,stepIndex:Math.max(ce.stepIndex,L+1)}))},[Ze,Ie,bt,je]),Rt=s.useCallback((R,L)=>{const G=qe?.id||`children-page-${Ie??0}`,le=typeof L=="number"?L:dt??0,de=`step-${le}`;bt(G,de,R),R?.allowChange||je(ce=>({...ce,stepIndex:Math.max(ce.stepIndex,le+1)}))},[qe,Ie,dt,bt,je]),en=s.useCallback((R,L)=>{const G=qe?.id||`children-page-${Ie??0}`,le=`step-${typeof L=="number"?L:dt??0}`;bt(G,le,R)},[qe,Ie,dt,bt]),_n=M?{currentPageIndex:Ie??0,currentStepIndex:dt??0,totalStepsInPage:Ye.length,handleStepDone:Rt,handleStepChange:en}:null,Xe=async()=>{const R=typeof n?.buildResults=="function"?await Promise.resolve(n.buildResults({scenario:n,pages:H,flowState:Ke,answersByPage:Ke.answersByPage})):null;return typeof F=="function"&&await Promise.resolve(F(R))||R},Et=async()=>{const R=qe?.id||`children-page-${Ke.pageIndex}`,L=Ke.answersByPage[R]||{},G=O?(()=>{const ce={};let Te=0;return T.forEach(Re=>{const Ge=Ke.answersByPage[Re.id]||{},pt=Array.isArray(Re.steps)?Re.steps.length:0;for(let lt=0;lt<pt;lt+=1){const Ue=Ge[`step-${lt}`];typeof Ue<"u"&&(ce[`step-${Te+lt}`]=Ue)}Te+=pt}),ce})():L;if(typeof b=="function"){const ce=await Promise.resolve(b(G,{pageAnswers:L,answersByPage:Ke.answersByPage,pages:T,currentPageId:R}));return typeof F=="function"&&await Promise.resolve(F(ce))||ce}const le=Object.entries(L).map(([ce,Te],Re)=>({index:Re,key:ce,payload:Te})),de={results:le,answers:le,score:0};return typeof F=="function"&&await Promise.resolve(F(de))||de},vt=()=>{const R=++nt.current,L=()=>R!==nt.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(E){const de=Xe();Ne({});const ce=de;Promise.resolve(ce).then(Te=>{L()||Ne(Te||{isEmpty:!0})}).catch(Te=>{!L()&&Ne({isEmpty:!0})});return}if(M){const de=Et();Ne({});const ce=de;Promise.resolve(ce).then(Te=>{L()||Ne(Te||{isEmpty:!0})}).catch(Te=>{!L()&&Ne({isEmpty:!0})});return}const G=X.current&&X.current._childOnResult,le=de=>{try{return de?de():void 0}catch{return}};if(typeof G=="function"){const de=le(G);try{typeof document>"u"?require("url").pathToFileURL(__filename).href:an&&an.tagName.toUpperCase()==="SCRIPT"&&an.src||new URL("components.cjs.js",document.baseURI).href}catch{}de&&typeof de.then!="function"?Ne(de):Ne(de&&typeof de.then=="function"?{}:{}),Promise.resolve(de).then(ce=>{ce&&!L()&&Ne(ce)}).catch(ce=>{});return}if(typeof F=="function"){const de=le(F);try{typeof document>"u"?require("url").pathToFileURL(__filename).href:an&&an.tagName.toUpperCase()==="SCRIPT"&&an.src||new URL("components.cjs.js",document.baseURI).href}catch{}de&&typeof de.then!="function"?Ne(de):Ne(de&&typeof de.then=="function"?{}:{}),Promise.resolve(de).then(ce=>{try{typeof document>"u"?require("url").pathToFileURL(__filename).href:an&&an.tagName.toUpperCase()==="SCRIPT"&&an.src||new URL("components.cjs.js",document.baseURI).href}catch{}ce&&!L()&&Ne(ce)}).catch(ce=>{console.error("viewResults external handler failed",ce)});return}},Ot=()=>{if(E){if(typeof Ie=="number"&&typeof At=="number"&&Ie<At-1){je(L=>({...L,pageIndex:L.pageIndex+1,stepIndex:0}));return}return vt()}if(M){const L=Ye.length;if(typeof dt=="number"&&dt<L-1){je(G=>({...G,stepIndex:G.stepIndex+1}));return}if(typeof Ie=="number"&&typeof At=="number"&&Ie<At-1){je(G=>({...G,pageIndex:G.pageIndex+1,stepIndex:0}));return}return vt()}if(typeof y=="function"){try{y()}catch{}return}const R=X.current&&X.current._childOnNext;if(typeof R=="function"){try{R()}catch{}return}},Mt=E?$.title||$.label||x||B("common.popup","\uD31D\uC5C5"):a||_||(Array.isArray(o)?o[o.length-1]:void 0)||x||B("common.popup","\uD31D\uC5C5"),Yt=E?$.title??$.label??Mt:a??_??Mt,tn=(R,L)=>{const G=to(Ze,Ie),le=no(R,L),de=Ke.answersByPage[G]?.[le],ce=Oy(R,{page:Ze,pageIndex:Ie,step:R,stepIndex:L,storedPayload:de,answersByPage:Ke.answersByPage,flowState:Ke}),Te={key:le,index:L,stepIndex:dt,isLast:L===ot.length-1};switch(R?.type){case"listen":return t.jsx(Yr,{...Te,...ce,onDone:Re=>Tt(R,L,Re)});case"confirm":return t.jsx(Gr,{...Te,...ce,onDone:Re=>Tt(R,L,Re),onChange:Re=>yt(R,L,Re)});case"confirmWithText":return t.jsx(Kr,{...Te,...ce,onDone:Re=>Tt(R,L,Re),onChange:Re=>yt(R,L,Re)});case"orderList":return t.jsx(Zr,{...Te,...ce,onDone:Re=>Tt(R,L,Re),onChange:Re=>yt(R,L,Re)});default:return null}},nn=s.useRef(void 0);s.useEffect(()=>{const R=nn.current;if(nn.current=Ie,R===void 0||R===Ie)return;const L=X.current;if(!L)return;const G=document.activeElement;if(!(!G||G===document.body||!L.contains(G)||G.disabled===!0))return;const le=L.querySelector(`.training-steps ${Nn.split(", ").join(", .training-steps ")}`)??Array.from(L.querySelectorAll(Nn)).find(de=>!de.closest('[aria-hidden="true"]'));try{le?.focus()}catch{}},[Ie]);const Pt=E?H.length>0?t.jsx("div",{className:"training-steps",children:ot.map((R,L)=>tn(R,L))},`replay-${ue}`):t.jsx("div",{className:"page-popup__content page-popup__content--center",children:t.jsx("div",{className:"pp-empty",children:n?.emptyMessage||B("training.noQuestions","\uBB38\uC81C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")})}):null,Ht=M?t.jsxs(tc.Provider,{value:_n,children:[qe?.pageTop?t.jsx("div",{className:"training-page-top",children:qe.pageTop}):null,t.jsx("div",{className:"training-steps",children:Ye.map((R,L)=>{const G=R;return s.cloneElement(G,{...G.props,_stepIndex:L,_totalSteps:Ye.length,_stepKey:`step-${L}`,_pageIndex:Ie})})},`replay-${ue}`),qe?.pageBottom?t.jsx("div",{className:"training-page-bottom",children:qe.pageBottom}):null]}):null,pn=s.useCallback(()=>{let R;if(w){const L=Ee,G=L?.results||L?.answers||[],le=Array.isArray(G)&&G.length>0?G.length:null,de=Array.isArray(G)?G.filter(Te=>Te?.correct===!0||Te?.isCorrect===!0||Te?.score===1||Te?.heard===!0||Te?.judgement===!0).length:null,ce=le!=null?de:null;m0({items:C0(G),category:cc.has(w)?"sentence":"word",trainingType:w,entryPoint:k??"sentence",itemRef:A??null,correct:ce,total:le,score:typeof L?.score=="number"?L.score:null,durationSeconds:Math.max(0,Math.round((Date.now()-W.current)/1e3)),dailyTotal:j??null}),R={correct:ce,total:le}}ft(),ze(()=>{typeof g=="function"&&g(R),typeof m=="function"&&m()})},[g,m,w,k,j,A,Ee,Ne,ze]),xt=s.useCallback(()=>rt(""),[rt]),Vt=s.useCallback(()=>{ze(()=>{typeof m=="function"&&m()})},[m,ze]),Zt=t.jsxs("div",{className:`page-popup${De?" page-popup--closing":""}`,role:"dialog","aria-modal":"true","aria-label":Mt,children:[t.jsxs("div",{ref:X,className:`page-popup__panel ${ge?"":"page-popup__panel--measuring"} ${Me==="center"?"page-popup__panel--center":Me==="top"?"page-popup__panel--top":""}`,children:[t.jsx(Xl,{title:Yt,subtitle:E?$.subtitle||$.label:Array.isArray(o)?o.join(" / "):void 0,desc:E?void 0:r,depth:E?$.depth:o,icon:E?$.icon:i,wrapperStyle:E?$.wrapperStyle:l,iconTooltip:E?$.iconTooltip:c,progressMax:At,progressIndex:Ie,pageIndex:Ie,pageCount:At,onBack:Vt,onClose:Vt}),t.jsx("div",{className:"page-popup__scroll",children:t.jsx("div",{className:`page-popup__content ${Me==="center"?"page-popup__content--center":"page-popup__content--top"}`,children:M?Ht:E?Pt:typeof v=="function"?v({registerOnNext:dn,registerOnResult:Qt,panelRef:X,setResultOverlay:Ne}):v})}),t.jsx(Zl,{onSettings:C,onNext:Ot,onResult:vt,useNoiseSettingBtn:!!(E?$.useNoiseSetting??!0:f),stepIndex:dt,stepCount:Ft,pageIndex:Ie,pageCount:At})]}),Ee&&!Ee.isEmpty&&(S??Hy)({score:Ee.score,results:Ee.results||Ee.answers||[],contextsLength:Ee.results?Ee.results.length:Ee.answers?Ee.answers.length:0,onReplay:()=>{if(ft(),ke(R=>R+1),E){if(je($a()),typeof n?.onReplay=="function")try{n.onReplay()}catch{}return}if(M){je($a());return}try{const R=X.current&&X.current._childOnResult;typeof R=="function"&&R({replay:!0})}catch{}},onClose:pn}),Ee?.isEmpty&&t.jsx("div",{className:"page-popup page-popup--result-empty",role:"dialog","aria-modal":"true","aria-label":B("training.result.eyebrow","\uD6C8\uB828 \uC644\uB8CC"),children:t.jsxs("div",{className:"page-popup__panel page-popup__panel--center",children:[t.jsx("div",{className:"page-popup__scroll",children:t.jsx("div",{className:"page-popup__content page-popup__content--center",children:t.jsx("div",{className:"page-popup__empty",children:B("training.result.eyebrow","\uD6C8\uB828 \uC644\uB8CC")})})}),t.jsx("div",{className:"page-popup__bottom",children:t.jsx(oe,{htmlType:"button",variant:"main",size:48,onClick:pn,label:B("training.result.done","\uC644\uB8CC")})})]})}),t.jsx(Fn,{message:tt,position:"top",onClose:xt})]}),Nt=t.jsx(Hr.Provider,{value:Se,children:Zt});return typeof document<"u"&&document.body?It.createPortal(Nt,document.body):Nt}const xn=Vy;xn.Page=La,xn.ListenStep=nc,xn.ConfirmStep=ac,xn.ConfirmWithTextStep=rc,xn.OrderListStep=oc,xn.CardStep=sc,xn.CardOrderStep=Py;function zy({label:e,homonum:n}){const a=Rn()?.(e,n)??"",{imgRef:r,loading:o,hasImage:i,onLoad:l,onError:c}=Br(a);return i?t.jsxs("div",{className:"tooltip-word-image__cell",children:[o&&t.jsx("div",{className:"tooltip-word-image__spinner"}),t.jsx("img",{ref:r,src:a,alt:e,draggable:!1,style:{opacity:o?0:1},onLoad:l,onError:c})]}):t.jsx("div",{className:"tooltip-word-image__cell tooltip-word-image__cell--text h3",children:t.jsx("span",{children:e})})}function uc({words:e,anchorRect:n}){const a=s.useRef(null),[r,o]=s.useState(null);return s.useLayoutEffect(()=>{if(!n||!a.current)return;const{offsetWidth:i,offsetHeight:l}=a.current,c=window.innerWidth;let u=n.left+n.width/2-i/2,d=n.top-l-8;d<8&&(d=n.bottom+8),u=Math.max(8,Math.min(u,c-i-8)),o({left:u,top:d})},[n]),!n||e.length===0?null:It.createPortal(t.jsx("div",{ref:a,className:"tooltip-word-image",style:{visibility:r?"visible":"hidden",left:r?.left??0,top:r?.top??-9999},children:t.jsx("div",{className:"tooltip-word-image__cells",children:e.map(i=>t.jsx(zy,{label:i.label,homonum:i.homonum},`${i.label}_${i.homonum??1}`))})}),document.body)}function Wy({titleIcon:e,resultCount:n,resultUnit:a,searchQuery:r,items:o,groups:i,selected:l=[],onSelect:c,maxSelect:u,onClearSelection:d,onPrint:p,onPrintEmpty:h,className:m,emptyHint:g,sectionType:y="page",disc:C,notice:f}){const{t:v,i18n:x}=he.useTranslation(),_=x.language?.startsWith("ko")??!1,{anchorRect:b,openAt:N,close:w}=_a(),[k,j]=s.useState(null),A=s.useCallback(()=>{w(),j(null)},[w]);t2(A,!!k);const S=(r??"").trim(),q=/^[^,[\]\s]+$/.test(S)?S:"",W=q.length>0,[B,F]=s.useState(()=>W?"match":"ganada"),[E,te]=s.useState("50"),[$,H]=s.useState(1),[Q,ee]=s.useState(W);Q!==W&&(ee(W),F(W?"match":"ganada"));const Y=B==="match"&&!W?"ganada":B,O=s.useMemo(()=>[...W?[{value:"match",label:v("wordSearch.sort.match",{defaultValue:"\uC2DC\uC791 \uC6B0\uC120"})}]:[],{value:"ganada",label:v("wordSearch.sort.ganada",{defaultValue:"\uAC00\uB098\uB2E4\uC21C \u2191"})},{value:"ganada_desc",label:v("wordSearch.sort.ganadaDesc",{defaultValue:"\uAC00\uB098\uB2E4\uC21C \u2193"})},{value:"syllable",label:v("wordSearch.sort.syllable",{defaultValue:"\uC74C\uC808 \uC218 \u2191"})},{value:"syllable_desc",label:v("wordSearch.sort.syllableDesc",{defaultValue:"\uC74C\uC808 \uC218 \u2193"})},{value:"grade",label:v("wordSearch.sort.grade",{defaultValue:"\uB4F1\uAE09\uC21C \u2191"})},{value:"grade_desc",label:v("wordSearch.sort.gradeDesc",{defaultValue:"\uB4F1\uAE09\uC21C \u2193"})}],[v,W]),T=s.useMemo(()=>["10","25","50","100"].map(Ce=>({value:Ce,label:v("wordSearch.pageSize",{count:Number(Ce),defaultValue:`${Ce}\uAC1C\uC529 \uBCF4\uAE30`})})),[v]),M=Ce=>Ce.words[0],V=s.useCallback((Ce,fe)=>{const ve=ue=>M(ue)?.label??"",Se=ue=>M(ue)?.syllables??[...ve(ue)].length,X=ue=>{const ke=parseInt(M(ue)?.grade??"",10);return Number.isFinite(ke)?ke:999};switch(Y){case"match":{const ue=[...q].length,ke=Me=>Xm(ve(Me).slice(0,ue),q)?0:1;return ke(Ce)-ke(fe)||ve(Ce).localeCompare(ve(fe),"ko")}case"ganada":return ve(Ce).localeCompare(ve(fe),"ko");case"ganada_desc":return ve(fe).localeCompare(ve(Ce),"ko");case"syllable":return Se(Ce)-Se(fe)||ve(Ce).localeCompare(ve(fe),"ko");case"syllable_desc":return Se(fe)-Se(Ce)||ve(Ce).localeCompare(ve(fe),"ko");case"grade":return X(Ce)-X(fe)||ve(Ce).localeCompare(ve(fe),"ko");case"grade_desc":return X(fe)-X(Ce)||ve(Ce).localeCompare(ve(fe),"ko");default:return 0}},[Y,q]),I=s.useMemo(()=>o.slice().sort(V),[o,V]),P=Number(E)||10,z=s.useMemo(()=>(i??[]).flatMap(Ce=>Ce.items.slice().sort(V).map(fe=>({item:fe,label:Ce.label}))),[i,V]),ae=i?z.length:I.length,ne=Math.max(1,Math.ceil(ae/P)),re=Math.min($,ne),pe=s.useMemo(()=>I.slice((re-1)*P,re*P),[I,re,P]),_e=s.useMemo(()=>{if(!i)return null;const Ce=z.slice((re-1)*P,re*P),fe=new Map;for(const{item:ve,label:Se}of Ce)fe.has(Se)||fe.set(Se,[]),fe.get(Se).push(ve);return[...fe.entries()].map(([ve,Se])=>({label:ve,items:Se}))},[i,z,re,P]);s.useEffect(()=>{H(1)},[B,E,ae,r]);const Z=ae>0?t.jsxs("div",{className:"word-search-result-block__toolbar",children:[t.jsx(Gt,{size:40,options:O,value:Y,onChange:F,ariaLabel:v("wordSearch.sort.aria",{defaultValue:"\uC815\uB82C"})}),t.jsx(Gt,{size:40,options:T,value:E,onChange:te,ariaLabel:v("wordSearch.pageSizeAria",{defaultValue:"\uD398\uC774\uC9C0 \uD06C\uAE30"})}),t.jsx(ka,{page:re,totalPages:ne,onChange:H})]}):void 0,ie=Ce=>{c&&c(Ce)},J=n!==void 0&&a?t.jsxs(t.Fragment,{children:[v("wordSearch.resultTitlePrefix","\uCD1D "),t.jsx("span",{style:{color:"var(--color-main)"},children:n}),v("wordSearch.resultTitleSuffix",{unit:_?s0(a):a})]}):void 0,be=n!==void 0&&n>0&&u!==void 0&&a?v("wordSearch.resultDisc",{unit:_?l0(a):a,max:u,selected:l.length}):void 0,xe=C??(f?t.jsxs(t.Fragment,{children:[t.jsx("span",{className:"word-search-result-block__notice",children:f}),be?t.jsx("span",{className:"word-search-result-block__disc",children:be}):null]}):be);return t.jsxs(On,{type:y,icon:e,title:J,action:Z,disc:xe,className:ye("word-search-result-block",m),children:[t.jsxs("div",{className:"word-search-result-block__inner",children:[(i?i.length===0:o.length===0)&&t.jsxs("div",{className:"word-search-result-block__empty-wrap",children:[t.jsx("p",{className:"word-search-result-block__empty body-3",children:v("wordSearch.emptyResult","\uAC80\uC0C9 \uACB0\uACFC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")}),g&&t.jsx("p",{className:"word-search-result-block__empty-hint body-3",children:g})]}),i?(_e??[]).map(Ce=>t.jsx("div",{className:"word-search-result-block__group",children:t.jsx("div",{className:"word-search-result-block__items",children:Ce.items.map(fe=>{const ve=l.includes(fe.id);return t.jsx("div",{onMouseEnter:Se=>{N(Se.currentTarget),j(fe.words)},onMouseLeave:A,children:t.jsx(oe,{htmlType:"button",size:"word",align:"grid",label:fe.words.map(Se=>Se.label),subLabel:fe.words.map(Se=>Se.subLabel).filter(Boolean).length>0?fe.words.map(Se=>Se.subLabel):void 0,selected:ve,onClick:()=>ie(fe.id),minWidth:200})},fe.id)})})},Ce.label)):t.jsx("div",{className:"word-search-result-block__items",children:pe.map(Ce=>{const fe=l.includes(Ce.id);return t.jsx("div",{onMouseEnter:ve=>{N(ve.currentTarget),j(Ce.words)},onMouseLeave:A,children:t.jsx(oe,{htmlType:"button",size:"word",align:"grid",label:Ce.words.map(ve=>ve.label),subLabel:Ce.words.map(ve=>ve.subLabel).filter(Boolean).length>0?Ce.words.map(ve=>ve.subLabel):void 0,selected:fe,onClick:()=>ie(Ce.id),minWidth:200})},Ce.id)})}),k&&b&&t.jsx(uc,{words:k,anchorRect:b})]}),ne>1&&t.jsx("div",{className:"word-search-result-block__pagination-bottom",children:t.jsx(ka,{page:re,totalPages:ne,onChange:H})}),(d||p)&&t.jsxs("div",{className:"word-search-result-block__actions",children:[d&&t.jsx(oe,{htmlType:"button",size:"56",type:"bar",label:v("common.resetSelection","\uC120\uD0DD \uCD08\uAE30\uD654"),selected:!1,disabled:l.length===0,onClick:l.length===0?void 0:d}),p&&t.jsx("div",{onClick:l.length===0?h:void 0,children:t.jsx(oe,{htmlType:"button",size:"56",type:"bar",variant:"main",label:v("wordTable.title","\uB2E8\uC5B4 \uD45C \uB9CC\uB4E4\uAE30"),disabled:l.length===0,onClick:l.length===0?void 0:p})})]})]})}function qy(e,n){return n.map(a=>{const r=typeof a=="string"?a:a.label,o=typeof a=="string"?void 0:a.displayLabel;return{label:r,value:e[r]??"",displayLabel:o}})}function Uy({sections:e,selectedList:n,count:a,onCountChange:r,maxCount:o=4,minCount:i=1,combinationSections:l,combinationSectionsForSlot:c,onSelect:u,placeholder:d="-",className:p,title:h,titleIcon:m,disc:g,showInfoButton:y=!1,onClearPhoneme:C,onSearch:f,onSearchEmpty:v,searchDisabled:x=!1,searchLabel:_,searchChecking:b=!1,pairMode:N=!1,sectionType:w="page",beforeSearchContent:k,beforeContent:j,afterContent:A,hideCountControl:S=!1,ordinal:q=!1}){const{t:W}=he.useTranslation(),B=s.useMemo(()=>W("wordPairs.infoNotes",{returnObjects:!0}),[W]),F=s.useMemo(()=>Array.from({length:o-i+1},(I,P)=>{const z=i+P;return{key:String(z),label:W("wordPairs.count",{n:z})}}),[W,o,i]),E=s.useMemo(()=>W("wordPairs.ordinals",{returnObjects:!0}),[W]),te=s.useCallback(I=>q?W("wordPairs.phonemeOrdinalLabel",{ordinal:E[I-1]??I}):a===1?W("wordPairs.phonemeSingleLabel","\uC74C\uC808"):W("wordPairs.phonemeN",{n:I}),[q,E,a,W]),$=s.useCallback(I=>q?W("wordPairs.phonemeContrastOrdinalLabel",{ordinal:E[I-1]??I}):a===1?W("wordPairs.phonemeContrastSingleLabel","\uB300\uB9BD \uC74C\uC808"):W("wordPairs.phonemeContrast",{n:I}),[q,E,a,W]),H=s.useCallback((I,P)=>P?t.jsxs(t.Fragment,{children:[I,t.jsx("span",{className:"phoneme-select-block__required",children:"*"})]}):I,[]),{anchorRect:Q,toggleAt:ee,close:Y}=_a(),O=s.useCallback(I=>r(Number(I)),[r]),T=Xt("(max-width: 767px)"),M=s.useCallback(I=>qy(I,e).map(({label:P,value:z,displayLabel:ae})=>{const ne=!!z&&z!=="\uC5C6\uC74C";return t.jsxs("span",{className:ye("phoneme-select-block__cell-jamo-part",z?"":"phoneme-select-block__cell-jamo-part--empty",ne?"":"phoneme-select-block__cell-jamo-part--no-label"),children:[t.jsx("span",{className:`phoneme-select-block__cell-jamo-char h1${z==="\uC5C6\uC74C"?" phoneme-select-block__cell-jamo-char--excluded":""}`,children:z==="\uC5C6\uC74C"?"x":z||d}),ne&&t.jsx("span",{className:"phoneme-select-block__cell-jamo-label caption-2",children:ae??P})]},P)}),[e,d]),V=t.jsxs(t.Fragment,{children:[t.jsx("div",{"data-tooltip-ignore":!0,children:t.jsx(oe,{htmlType:"button",size:40,type:T?"dot":void 0,icon:"info",label:T?void 0:W("wordPairs.caution","\uC720\uC758\uC0AC\uD56D"),ariaLabel:W("wordPairs.caution","\uC720\uC758\uC0AC\uD56D"),selected:!!Q,onClick:I=>ee(I.currentTarget)})}),Q&&t.jsx(Sn,{title:W("wordPairs.caution","\uC720\uC758\uC0AC\uD56D"),items:B,anchorRect:Q,onClose:Y})]});return t.jsxs(On,{type:w,title:h,icon:m,disc:g,action:V,className:ye("phoneme-select-block",p),children:[j,(!S||y&&!(h||g))&&t.jsxs("div",{className:"phoneme-select-block__controls",children:[!S&&t.jsx(En,{options:F,value:String(a),onChange:O,size:40,className:"phoneme-select-block__count-control"}),y&&!(h||g)&&V]}),t.jsx("div",{className:"phoneme-select-block__cells",children:N?t.jsxs(t.Fragment,{children:[t.jsx("div",{className:"phoneme-select-block__cell-group",children:Array.from({length:a}).map((I,P)=>{const z=n[P*2]??{};return t.jsxs("div",{className:"phoneme-select-block__cell",children:[t.jsx("div",{className:"phoneme-select-block__cell-circle",children:t.jsx("div",{className:"phoneme-select-block__cell-jamo",children:M(z)})}),t.jsx("span",{className:"phoneme-select-block__cell-index caption-1",children:te(P+1)})]},P)})}),t.jsx("span",{className:"phoneme-select-block__cell-vs h3",children:W("wordPairs.phonemeSelect.vs","\uB300")}),t.jsx("div",{className:"phoneme-select-block__cell-group",children:Array.from({length:a}).map((I,P)=>{const z=n[P*2+1]??{};return t.jsxs("div",{className:"phoneme-select-block__cell",children:[t.jsx("div",{className:"phoneme-select-block__cell-circle",children:t.jsx("div",{className:"phoneme-select-block__cell-jamo",children:M(z)})}),t.jsx("span",{className:"phoneme-select-block__cell-index caption-1",children:$(P+1)})]},P)})})]}):n.map((I,P)=>t.jsxs("div",{className:"phoneme-select-block__cell",children:[t.jsx("div",{className:"phoneme-select-block__cell-circle",children:t.jsx("div",{className:"phoneme-select-block__cell-jamo",children:M(I)})}),t.jsx("span",{className:"phoneme-select-block__cell-index caption-1",children:te(P+1)})]},P))}),(l||c)&&t.jsx("div",{className:"phoneme-select-block__panels",children:t.jsx("div",{className:"phoneme-select-block__detail",children:N?t.jsxs("div",{className:"phoneme-select-block__pair-panels",children:[t.jsx("div",{className:"phoneme-select-block__panel-group",children:Array.from({length:a}).map((I,P)=>{const z=n[P*2]??{};return t.jsx(un,{title:H(te(P+1),P===0),sections:c?c(z,P*2):l,selected:z,onSelect:u?.(P*2),align:"newline"},P)})}),t.jsx("div",{className:"phoneme-select-block__panel-group",children:Array.from({length:a}).map((I,P)=>{const z=n[P*2+1]??{};return t.jsx(un,{title:$(P+1),sections:c?c(z,P*2+1):l,selected:z,onSelect:u?.(P*2+1),align:"newline"},P)})})]}):n.map((I,P)=>t.jsx(un,{title:H(te(P+1),P===0),sections:c?c(I,P):l,selected:I,onSelect:u?.(P),align:"newline"},P))})}),k&&t.jsx("div",{className:"phoneme-select-block__before-search",children:k}),(C||f||b)&&(()=>{const I=n.every(P=>Object.entries(P).every(([z,ae])=>!ae||z==="\uC885\uC131"&&ae==="\uC5C6\uC74C"));return t.jsxs("div",{className:"phoneme-select-block__search-row",onClick:I?v:void 0,children:[C&&t.jsx(oe,{htmlType:"button",size:"56",type:"bar",label:W("wordPairs.resetOptions","\uAC80\uC0C9 \uC635\uC158 \uCD08\uAE30\uD654"),selected:!1,disabled:I,onClick:I?void 0:C}),b?t.jsxs("div",{className:"phoneme-select-block__checking",children:[t.jsx("div",{className:"phoneme-select-block__spinner"}),t.jsx("span",{className:"button-1 phoneme-select-block__checking-label",children:_??W("wordSearch.searchButton","\uAC80\uC0C9\uD558\uAE30")})]}):f&&t.jsx(oe,{htmlType:"button",size:"56",type:"bar",variant:"main",label:_??W("wordSearch.searchButton","\uAC80\uC0C9\uD558\uAE30"),disabled:I||x,onClick:I||x?void 0:f})]})})(),A]})}function Gy({title:e,sections:n,selected:a,onSelect:r,className:o}){const{t:i}=he.useTranslation();return t.jsx(un,{className:o,title:e??i("wordSearch.filterTitle","\uB2E8\uC5B4 \uAC80\uC0C9 \uC124\uC815"),sections:n,selected:a,onSelect:r,align:"inline"})}function Ky({title:e,headerAction:n,sections:a,selected:r,onSelect:o,className:i}){const{t:l}=he.useTranslation();return a.length===0?null:t.jsx(un,{className:i,title:e??l("training.filter.phonemeGroup",{defaultValue:"\uD6C8\uB828 \uC74C\uC808"}),headerAction:n,sections:a,selected:r,onSelect:o,align:"newline"})}function Yy({title:e,mode:n,onModeChange:a,matchMode:r,onMatchModeChange:o,positionCount:i,onPositionCountChange:l,inputMode:c,onInputModeChange:u,className:d}){const{t:p}=he.useTranslation(),h={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")},m=f=>p("wordPairs.count",{n:f}),g=[{label:h.searchMode,items:[h.include,h.pick,h.explicit],display:"segmented",labelAction:t.jsx(oa,{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:h.phonemeOrder,items:[h.orderAny,h.orderMatch],display:"segmented",labelAction:t.jsx(oa,{items:p("wordPairs.filter.phonemeOrderInfo",{returnObjects:!0})})},{label:h.count,items:[m(1),m(2)],display:"segmented"},{label:h.inputMode,items:[h.charInput,h.pronInput],display:"segmented",labelAction:t.jsx(oa,{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={[h.searchMode]:n==="explicit"?h.explicit:n==="pick"?h.pick:h.include,[h.phonemeOrder]:r==="ordered"?h.orderMatch:h.orderAny,[h.count]:m(i),[h.inputMode]:c==="phoneme"?h.pronInput:h.charInput},C=(f,v)=>{v===h.searchMode?a(f===h.explicit?"explicit":f===h.pick?"pick":"include"):v===h.phonemeOrder?o(f===h.orderMatch?"ordered":"unordered"):v===h.count?l(f===m(2)?2:1):v===h.inputMode&&u(f===h.pronInput?"phoneme":"word")};return t.jsx(un,{className:d,title:e??p("wordPairs.filter.searchOptionsTitle","\uB300\uB9BD \uC124\uC815"),sections:g,selected:y,onSelect:C,align:"inline"})}function Zy(e){const{title:n,items:a,columns:r,gridTemplateColumns:o,searchPlaceholder:i,searchFn:l,defaultSortKey:c,defaultSortAsc:u=!0,selectedId:d,selectedIds:p,onSelect:h,onClose:m,pageSizeOptions:g=[10,25,50,100],initialPageSize:y,emptyText:C,countLabel:f,topContent:v,className:x=""}=e,{t:_}=he.useTranslation(),b=i??_("common.search","\uAC80\uC0C9"),N=C??_("common.emptyList","\uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4."),[w,k]=s.useState(""),[j,A]=s.useState(c??r[0]?.key??""),[S,q]=s.useState(u),[W,B]=s.useState(String(y??g[0]??10)),[F,E]=s.useState(1);s.useEffect(()=>{E(1)},[w,W]);const te=l!==null,$=s.useCallback((P,z)=>{if(!z)return!0;const ae=z.toLowerCase();return r.some(ne=>{const re=P[ne.key];return re==null?!1:String(re).toLowerCase().includes(ae)})},[r]),H=l??$,Q=s.useMemo(()=>{const P=te?a.filter(z=>H(z,w)):a;return j?[...P].sort((z,ae)=>{const ne=z[j]??"",re=ae[j]??"";if(ne===re)return 0;const pe=_b(ne,re);return S?pe:-pe}):P},[a,w,j,S,te,H]),ee=Math.max(1,Math.ceil(Q.length/Number(W)));F>ee&&E(ee);const Y=Math.min(F,ee),O=Q.slice((Y-1)*Number(W),Y*Number(W)),T=s.useCallback(P=>{j===P?q(z=>!z):(A(P),q(!0))},[j]),M=s.useMemo(()=>{if(typeof f=="function"){const P=Q.length,z=f(P);if(typeof z=="string"){const ae=z.lastIndexOf(String(P));if(ae>=0)return{prefix:z.slice(0,ae),suffix:z.slice(ae+String(P).length)}}return{label:z}}if(typeof f=="string"&&f.includes("{n}")){const[P,z]=f.split("{n}");return{prefix:P,suffix:z}}return{prefix:_("common.totalCountPrefix","\uCD1D "),suffix:_("common.totalCountSuffix","\uAC1C")}},[f,Q.length,_]),V=s.useMemo(()=>r.map(P=>({label:P.label,onClick:P.sortable!==!1?()=>T(P.key):void 0,className:P.className,sortDir:P.sortable!==!1&&j===P.key?S?"asc":"desc":null})),[r,j,S,T]),I=s.useMemo(()=>g.map(P=>({value:String(P),label:_("common.pageSizeLabel",{n:P})})),[g,_]);return t.jsxs(yn,{className:`popup-list ${x}`,title:n,onClose:m,children:[v,"label"in M&&t.jsx("p",{className:"toolbar__count body-1",children:M.label}),t.jsx(gr,{count:"label"in M?void 0:{value:Q.length,prefix:M.prefix,suffix:M.suffix},search:te?{value:w,onChange:k,placeholder:b}:void 0,pageSize:{options:I,value:W,onChange:B},pagination:{page:Y,total:ee,onChange:E}}),t.jsx(Ar,{size:"medium",gridTemplateColumns:o,resizable:!0,fields:V,items:O,onRowClick:h,renderRow:P=>{const z=p!=null?P.id!=null&&p.has(P.id):d!=null&&P.id===d;return r.map(ae=>({content:ae.render?ae.render(P):P[ae.key]??"",className:ye(ae.className,z&&"popup-list__row--selected")}))},empty:N})]})}function Xy(e){const{title:n,message:a,topContent:r,details:o,children:i,confirmLabel:l,cancelLabel:c,hideCancel:u=!1,extraAction:d,confirmVariant:p="main",confirmDisabled:h=!1,onConfirm:m,closeOnConfirm:g=!0,onClose:y,inline:C,size:f="small",className:v}=e,{t:x}=he.useTranslation(),_=s.useRef(!1),[b,N]=s.useState(!1),w=async k=>{if(_.current)return;_.current=!0;const j=typeof document<"u"?document.activeElement:null;N(!0);let A=!1;try{A=await k()}finally{A||(_.current=!1,N(!1),requestAnimationFrame(()=>{const S=document.activeElement;(!S||S===document.body)&&j?.isConnected&&j.focus()}))}};return t.jsxs(yn,{title:n,onClose:y,closeDisabled:b,inline:C,size:f,className:ye("confirm-popup",v),buttons:[...d?[{label:d.label,variant:d.variant??"default",disabled:d.disabled||b,onClick:async({closeWithAnimation:k})=>{await w(async()=>{await d.onClick(k);const j=d.closeOnClick??!0;return j&&k(),j})}}]:[],...u?[]:[{label:c??x("common.cancel","\uCDE8\uC18C"),variant:"default",disabled:b,onClick:({closeWithAnimation:k})=>k()}],{label:l??x("common.confirm","\uD655\uC778"),variant:p,disabled:h||b,onClick:async({closeWithAnimation:k})=>{await w(async()=>(await m(k),g&&k(),g))}}],children:[r!=null&&t.jsx("div",{className:"confirm-popup__top",children:r}),o&&o.length>0&&t.jsx(Ma,{children:o.map((k,j)=>t.jsx(vn,{label:k.label,children:t.jsx("span",{className:"panel-row__text body-2",children:k.value})},j))}),t.jsx("p",{className:"body-2 confirm-popup__message",children:a}),i]})}function Jy({onApply:e,onCancel:n}){const{t:a}=he.useTranslation(),[r,o]=s.useState(""),[i,l]=s.useState(!1),[c,u]=s.useState(null),d=s.useRef(null);s.useEffect(()=>{d.current?.focus()},[]);const p=s.useCallback(async g=>{const y=r.trim();if(y){l(!0),u(null);try{await e(y),g()}catch(C){u(ms(C)),l(!1),requestAnimationFrame(()=>d.current?.focus())}}},[r,e]),h=s.useCallback((g,y)=>{g.key==="Enter"&&!g.nativeEvent.isComposing&&p(y)},[p]),m=g=>{o(g.target.value),u(null)};return t.jsx(yn,{className:"coupon-input-popup",title:a("usage.couponButton","\uCFE0\uD3F0 \uC785\uB825"),size:"small",onClose:n,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})=>t.jsxs(t.Fragment,{children:[t.jsx("input",{ref:d,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:m,onKeyDown:y=>h(y,g),disabled:i,autoComplete:"off",spellCheck:!1}),c&&t.jsx("p",{className:"coupon-input-popup__error caption-1",role:"alert",children:c})]})})}const Qy=200;function e5(e){return e.itemId?(B0()[e.trainingType]??[]).find(n=>n?.id!=null&&String(n.id)===String(e.itemId))??null:null}function t5({plan:e,anchorRect:n,offset:a=12,onClose:r}){const{t:o}=he.useTranslation(),i=s.useMemo(()=>D0(o).map(c=>({type:c,items:(e.items??[]).filter(u=>u.trainingType===c.key)})).filter(c=>c.items.length>0),[e.items,o]);if(i.length===0)return null;const l=t.jsx("div",{className:"tooltip-training__box",children:t.jsx("div",{className:"tooltip-training__groups",children:i.flatMap(({type:c,items:u},d)=>[d>0?t.jsx("div",{className:"tooltip-training__divider"},`div-${c.key}`):null,t.jsxs("div",{className:"tooltip-training__section",children:[t.jsx("div",{className:"tooltip-training__section-header",children:t.jsx("span",{className:"tooltip-training__type-label body-3b",children:c.label})}),t.jsx("div",{className:"tooltip-training__items",children:u.map((p,h)=>{const m=e5(p);return m?t.jsx(Nr,{index:h,type:c,trainingData:m,size:"compact",hideCheckBadge:!0},p.itemId??h):null})})]},c.key)])})});return n?t.jsx(Cn,{anchorRect:n,offset:a,onClose:r,closeOnOutsideClick:!1,className:"tooltip-training",ariaLabel:o("tooltip.training","\uD6C8\uB828 \uC548\uB0B4"),children:l}):l}const dc=["var(--color-main)","var(--color-sub)"],n5=2e3;function a5(e,n){if(!n.startsWith("var("))return n;try{const a=n.slice(4,-1).trim();return getComputedStyle(e).getPropertyValue(a).trim()||null}catch{return null}}function pc({active:e=!1,count:n=40,duration:a=2e3,strength:r=1,onComplete:o,trigger:i=0}){const l=s.useMemo(()=>{const C=Math.floor(n/2),f=n-C,v=(x,_)=>Array.from({length:x}).map((b,N)=>{const w=6+Math.random()*12,k=Math.round(Math.min(18,w*Math.min(1.5,1+r*.4))),j=dc[Math.floor(Math.random()*dc.length)],A=Math.random()*300,S=(360+Math.random()*260)*r*1.2,q=(_==="left"?-95+Math.random()*40:-85-Math.random()*40)*Math.PI/180,W=Math.cos(q)*S,B=Math.sin(q)*S*1.35,F=Math.random()*720-360,E=(1200+Math.random()*3e3)*Math.min(1.6,1+r*.3),te=Math.random()>.7?"50%":"3px";return{id:`${_}-${N}`,side:_,size:k,color:j,delay:A,vx:W,vy:B,angularVel:F,life:E,borderRadius:te}});return[...v(C,"left"),...v(f,"right")]},[n,r]),c=s.useRef(null),u=s.useRef({}),d=s.useRef(null),p=s.useRef(o);s.useEffect(()=>{p.current=o},[o]);const h=s.useRef(null),m=s.useRef(null),g=()=>{if(typeof document>"u")return null;let C=document.querySelector("[data-ihab-effect-root]");return C||(C=document.createElement("div"),C.className="app-effect",C.dataset.ihabEffectRoot="",C.style.position="fixed",C.style.inset="0",C.style.pointerEvents="none",C.style.zIndex="99998",document.body.appendChild(C)),C};if(typeof document<"u"&&m.current==null&&(m.current=g()),s.useEffect(()=>{if(!e)return;if(typeof window<"u"&&window.matchMedia?.("(prefers-reduced-motion: reduce)").matches){const Y=setTimeout(()=>p.current?.(),0);return()=>clearTimeout(Y)}const C=1200,f=performance.now(),v=m.current&&m.current!==document.body?m.current.getBoundingClientRect():null,x=Math.max(60,(window.innerHeight||800)*.05),_=Y=>Math.max(40,(Y||window.innerWidth)*.02),b=v?.width||window.innerWidth||375,N=v?.height||window.innerHeight||812,w=Y=>{const O=[...Y].sort((T,M)=>T-M);return O[Math.floor(O.length/2)]||1},k=w(l.map(Y=>Math.abs(Y.vy))),j=w(l.map(Y=>Math.abs(Y.vx))),A=Math.sqrt(2*C*(N*.72+x))/k,S=k*A/C,q=b*.5/(j*S),W=(Y,O,T)=>Math.min(T,Math.max(O,Y)),B=W(A,.8,2.4),F=W(q,.7,2.2),E=a>0?a/n5:1,te=l.map(Y=>({...Y,life:Y.life*E,vx:Y.vx*F,vy:Y.vy*B,startTime:f+Y.delay,ended:!1})),$=v?{x:v.left-_(v.width),y:v.top+v.height+x}:{x:-_(window.innerWidth),y:window.innerHeight+x},H=v?{x:v.left+v.width+_(v.width),y:v.top+v.height+x}:{x:window.innerWidth+_(window.innerWidth),y:window.innerHeight+x},Q=Y=>{let O=!1;for(const T of te){const M=u.current[T.id];if(!M||!M)continue;if(Y<T.startTime){M.style.display="none",O=!0;continue}if(!T._inited){const Z=T.side==="left"?$.x:H.x,ie=T.side==="left"?$.y:H.y;M.style.left=`${Z}px`,M.style.top=`${ie}px`,M.style.transform="translate3d(0px, 0px, 0)",M.style.display="block",M.style.zIndex="100000",typeof T.color=="string"&&T.color.startsWith("var(")&&(M.style.background=a5(M,T.color)??"#FF0060"),T._inited=!0}const V=(Y-T.startTime)/1e3;if(V<0)continue;const I=T.life/1e3;if(V>=I){M.style.opacity="0",M.style.display="none",T.ended=!0;continue}O=!0;const P=T.side==="left"?$.x:H.x,z=T.side==="left"?$.y:H.y,ae=P+T.vx*V,ne=z+T.vy*V+.5*C*V*V,re=(T.angularVel||0)*V,pe=ae-P,_e=ne-z;M.style.transform=`translate3d(${pe}px, ${_e}px, 0) rotate(${re}deg)`,M.style.opacity=`${Math.max(0,1-V/I)}`}O?d.current=requestAnimationFrame(Q):p.current?.()};d.current=requestAnimationFrame(Q);const ee=setTimeout(()=>{try{if((m.current?m.current.querySelectorAll(".confetti"):document.querySelectorAll(".confetti")).length===0&&!document.querySelector(".party-container")){const Y=document.createElement("div");Y.className="party-container",Y.style.position="fixed",Y.style.inset="0",Y.style.pointerEvents="none",Y.style.overflow="visible",Y.style.zIndex="2147483647";for(const O of l){const T=document.createElement("span");T.className=`confetti confetti--${O.side}`,T.setAttribute("aria-hidden","true"),T.style.display="none",T.style.position="fixed",T.style.left="0px",T.style.top="0px",T.style.width=`${O.size}px`,T.style.height=`${Math.max(4,O.size*.6)}px`,T.style.background=O.color,T.style.borderRadius=O.borderRadius,T.style.transform="translate3d(0,0,0)",T.style.opacity="0",Y.appendChild(T),u.current[O.id]=T}(document.body||m.current).appendChild(Y),h.current=Y}}catch{}},300);return()=>{if(d.current&&cancelAnimationFrame(d.current),clearTimeout(ee),h.current){try{h.current.remove()}catch{}h.current=null}}},[e,a,i,l]),!e)return null;const y=t.jsx("div",{className:"party-container",ref:c,children:l.map(C=>t.jsx("span",{"aria-hidden":!0,ref:f=>{u.current[C.id]=f},className:`confetti confetti--${C.side}`,style:{width:`${C.size}px`,height:`${Math.max(4,C.size*.6)}px`,background:C.color,borderRadius:C.borderRadius}},`${C.id}-${i}`))});return typeof document<"u"?It.createPortal(y,m.current||document.body):y}function r5({trigger:e=0,active:n=!1}){const a=s.useRef(0);return s.useEffect(()=>{a.current=e},[e]),t.jsx(pc,{active:n,trigger:e})}function o5({title:e,sub:n,rightAction:a,titleAction:r,badge:o,badgeVariant:i="default",documentTitle:l,onBack:c,backLabel:u,wrap:d=!1}){const{t:p}=he.useTranslation();q0(typeof e=="string"?e:l??null);const h=u??p("common.back","\uB4A4\uB85C");return t.jsxs("div",{className:d?"page-title page-title--wrap":"page-title",children:[t.jsxs("div",{className:"page-title__main",children:[t.jsxs("div",{className:"page-title__title-row",children:[c&&t.jsx(oe,{htmlType:"button",className:"page-title__back",size:48,type:"dot",icon:"chevron-left",iconSize:"large",useBorder:!1,iconColor:"var(--color-text-primary)",ariaLabel:h,showTooltipInfo:h,onClick:c}),t.jsx("h1",{className:"page-title__title h1",children:e}),o&&t.jsx("div",{className:"page-title__badge",children:t.jsx(it,{label:o,size:"small",variant:i,fill:"outline"})}),r?t.jsx("div",{className:"page-title__title-action",children:r}):null]}),n&&t.jsx("p",{className:"page-title__sub body-2",children:n})]}),a?t.jsx("div",{className:"page-title__action",children:a}):null]})}function s5(e){return e??""}const hc=s.createContext({words:[],loading:!1});function i5(){return s.useContext(hc)}function l5({words:e,loading:n,error:a,statusMessage:r,localVersion:o,remoteVersion:i,progress:l,clearAndRefetch:c,checkRemoteVersion:u,children:d}){return t.jsx(hc.Provider,{value:{words:e,loading:n,error:a,statusMessage:r,localVersion:o,remoteVersion:i,progress:l,clearAndRefetch:c,checkRemoteVersion:u},children:d})}function c5({items:e,actions:n,columns:a,flat:r=!1,className:o,style:i}){const l=a??e.length;return t.jsx("section",{className:ye("summary-strip",r&&"summary-strip--flat",o),style:{"--summary-strip-cols":String(l),...i},children:t.jsxs("div",{className:"summary-strip__row",children:[t.jsx("div",{className:"summary-strip__items",children:e.map((c,u)=>t.jsxs("div",{className:"summary-strip__item",children:[t.jsx("p",{className:"summary-strip__label caption-1",children:c.label}),t.jsx("p",{className:"summary-strip__value body-3b",children:c.value})]},u))}),n&&t.jsx("div",{className:"summary-strip__actions",children:n})]})})}const u5=(e,n)=>`${e} / ${n}`;function d5({blocks:e,sectionTitles:n,logo:a,footer:r,pageLabel:o=u5,pageWidth:i,pageHeight:l,margin:c,className:u,style:d}){const{t:p}=he.useTranslation(),h=s.useRef(null),m=s.useRef(null),g=s.useRef(null),y=s.useRef(null),[C,f]=s.useState(null),[v,x]=s.useState(!1);s.useEffect(()=>{const B=h.current;if(!B)return;const F=()=>x(B.scrollWidth>B.clientWidth+1);if(F(),typeof ResizeObserver>"u")return;const E=new ResizeObserver(F);return E.observe(B),()=>E.disconnect()},[C]);const _=e.map(B=>`${B.id}\0${B.section??""}\0${B.group??""}`).join(""),b=C&&C.shape===_?C.pages:null,[N,w]=s.useState(0);s.useEffect(()=>{const B=y.current;if(!B||typeof ResizeObserver>"u")return;const F=new ResizeObserver(()=>w(B.offsetHeight));return F.observe(B),()=>F.disconnect()},[]),s.useLayoutEffect(()=>{const B=m.current,F=y.current;if(!B||!F)return;const E=new Map;g.current?.querySelectorAll("[data-chrome-section]").forEach(T=>{E.set(T.dataset.chromeSection??"",T.offsetHeight)});const te=T=>F.offsetHeight-(E.get(T??"")??0),$=Array.from(B.children).map(T=>T.offsetHeight),H=[];e.forEach((T,M)=>{const V=H[H.length-1],I=V?e[V[0]]:void 0;I&&T.group!=null&&I.group===T.group?V.push(M):H.push([M])});const Q=[];let ee=[],Y=0;const O=()=>{ee.length&&Q.push(ee),ee=[],Y=0};H.forEach(T=>{const M=T.reduce((I,P)=>I+$[P],0),V=te(e[T[0]].section);ee.length&&e[ee[0]].section!==e[T[0]].section&&O(),ee.length&&Y+M>V&&O(),M>V?T.forEach(I=>{ee.length&&Y+$[I]>V&&O(),ee.push(I),Y+=$[I]}):(T.forEach(I=>ee.push(I)),Y+=M)}),O(),f({shape:_,pages:Q})},[_,N]);const k=Cr,j=k,A=r??t.jsxs(t.Fragment,{children:[t.jsx("img",{src:j,alt:"IHAB",className:"report-doc__logo"}),"\xA9 IHAB, Inc. All rights reserved."]}),S=(B,F,E)=>({header:t.jsxs("div",{className:"report-doc__header",children:[t.jsx("h2",{className:"report-doc__title h3b",children:E!=null&&n?.[E]||null}),a]}),footer:t.jsxs("div",{className:"report-doc__footer caption-1",children:[t.jsx("span",{className:"report-doc__footer-left",children:A}),t.jsx("span",{className:"report-doc__page-no",children:o(B,F)})]})}),q=Array.from(new Set(e.map(B=>B.section??""))),W={...i?{"--report-page-w":i}:null,...l?{"--report-page-h":l}:null,...c?{"--report-margin":c}:null,...d};return t.jsxs("div",{ref:h,className:ye("report-doc",u),style:W,tabIndex:v?0:void 0,role:v?"group":void 0,"aria-label":v?p("report.previewRegion","\uBCF4\uACE0\uC11C \uBBF8\uB9AC\uBCF4\uAE30"):void 0,children:[t.jsxs("div",{className:"report-doc__measure","aria-hidden":!0,children:[t.jsx("div",{ref:y,className:"report-doc__ruler"}),t.jsx("div",{ref:g,children:q.map(B=>{const F=S(1,1,B||void 0);return t.jsxs("div",{"data-chrome-section":B,children:[F.header,F.footer]},B)})}),t.jsx("div",{ref:m,className:"report-doc__measure-blocks",children:e.map(B=>t.jsx("div",{children:B.content},B.id))})]}),b&&t.jsx("div",{className:"report-doc__pages",children:b.map((B,F)=>{const{header:E,footer:te}=S(F+1,b.length,e[B[0]].section);return t.jsxs("section",{className:"report-doc__page",children:[E,B.map($=>t.jsx("div",{children:e[$].content},e[$].id)),te]},F)})})]})}function p5({title:e,fields:n,columns:a=4,className:r,style:o}){return t.jsxs("div",{className:ye("report-info",r),style:{"--report-info-cols":String(a),...o},children:[e&&t.jsx("p",{className:"report-info__title h5b",children:e}),t.jsx("div",{className:"report-info__grid",children:n.map((i,l)=>t.jsxs("div",{className:"report-info__field body-2",children:[t.jsx("span",{className:"report-info__label body-3",children:i.label}),t.jsx("span",{className:"report-info__value",children:i.value})]},l))})]})}function h5({title:e,message:n,actionLabel:a,onAction:r,icon:o,onClose:i,className:l=""}){const{t:c}=he.useTranslation(),u=a??c("common.update","\uC5C5\uB370\uC774\uD2B8");return t.jsxs("div",{className:ye("update-alert",l),role:"alert",children:[i&&t.jsx("button",{type:"button",className:"update-alert__close",onClick:i,"aria-label":c("common.close","\uB2EB\uAE30"),children:"\xD7"}),t.jsxs("div",{className:"update-alert__top",children:[t.jsx("div",{className:"update-alert__icon",children:o??t.jsx(xo,{size:20,strokeWidth:2})}),t.jsxs("div",{className:"update-alert__body",children:[t.jsx("div",{className:"update-alert__title h4",children:e}),t.jsx("div",{className:"update-alert__message body-3",children:n})]})]}),r&&t.jsx(oe,{htmlType:"button",size:32,variant:"main",shape:"pill",className:"update-alert__action",onClick:r,children:u})]})}function m5({title:e,description:n,topActions:a,children:r,footerLeft:o,footerRight:i,onClick:l,draggable:c,onDragStart:u,onDragEnd:d,className:p}){const h=o!=null||i!=null,m=r!=null&&r!==!1,g=s.useCallback(y=>{l&&y.target===y.currentTarget&&(y.key==="Enter"||y.key===" ")&&(y.preventDefault(),l())},[l]);return t.jsxs("div",{className:ye("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:u,onDragEnd:d,children:[t.jsxs("div",{className:"training-card__header",children:[t.jsxs("div",{className:"training-card__title-row",children:[typeof e=="string"?t.jsx("h3",{className:"training-card__title h4",children:e}):e,a!=null&&t.jsx("div",{className:"training-card__top-actions",onClick:y=>y.stopPropagation(),children:a})]}),n!=null?typeof n=="string"?t.jsx("p",{className:"training-card__description body-3",children:n}):n:t.jsx("p",{className:"training-card__description body-3","aria-hidden":"true",children:" "})]}),m&&t.jsx("div",{className:"training-card__body",children:r}),h&&t.jsxs("div",{className:"training-card__footer",children:[o!=null&&t.jsx("div",{className:"training-card__footer-left",children:o}),i!=null&&t.jsx("div",{className:"training-card__meta",children:i})]})]})}function f5({title:e,count:n,collapsed:a=!1,onToggle:r,sort:o,actions:i,empty:l=!1,emptyContent:c,dragOver:u=!1,onDragOver:d,onDragLeave:p,onDrop:h,children:m,className:g}){const{t:y}=he.useTranslation(),C=r!=null,f=ye("training-card-group",u&&"training-card-group--dragover",a&&"training-card-group--collapsed",C&&"training-card-group--collapsible",g);return t.jsxs("div",{className:f,onDragOver:d,onDragLeave:p,onDrop:h,children:[t.jsxs("header",{className:"training-card-group__header",children:[C&&t.jsx(oe,{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"?t.jsx("span",{className:"training-card-group__title h5b",children:e}):e,n!==void 0&&t.jsx("span",{className:"training-card-group__count body-3b",children:n}),(o||i!=null)&&t.jsxs("span",{className:"training-card-group__actions",onClick:v=>v.stopPropagation(),children:[o&&t.jsx(Gt,{size:40,options:o.options,value:o.value,placeholder:o.placeholder,onChange:o.onChange}),i]})]}),!a&&(l?t.jsx("div",{className:"training-card-group__empty body-3",children:c}):t.jsx("div",{className:"training-card-group__grid",children:m}))]})}const C5="speechear:saved_word_tables";function g5(e){if(typeof e!="object"||e===null)return!1;const n=e;return typeof n.id=="string"&&typeof n.name=="string"&&Array.isArray(n.items)}function b5(){try{const e=localStorage.getItem(C5);if(!e)return[];const n=JSON.parse(e);return Array.isArray(n)?n.filter(g5):[]}catch{return[]}}function y5({title:e,titleIcon:n,disc:a,items:r,onSaveComplete:o,onLoad:i,onRemoveItem:l,onReset:c,resetLabel:u,saveButtonLabel:d,secondarySaveButtonLabel:p,onReorder:h,showCellCount:m,onAddItem:g,className:y,renderSavePopup:C,renderWordSearch:f,hideControls:v,saveOnly:x,tableName:_,nameValue:b,onNameChange:N,descriptionValue:w,onDescriptionChange:k,namePlaceholder:j,descriptionPlaceholder:A,existingNames:S,editingName:q,onCancel:W}){const{t:B}=he.useTranslation(),F=u??B("wordPrint.clearAllSelection","\uBAA8\uB450 \uC120\uD0DD \uD574\uC81C"),E=r===void 0,te=!!N,[$,H]=s.useState([]),Q=(b??"").trim(),ee=Q||(j??"").trim(),Y=(w??"").trim()||(A??"").trim(),O=(S??[]).map(L=>L.trim().toLowerCase()),T=[q?.trim().toLowerCase(),...$].filter(L=>!!L),M=[...O];for(const L of T){const G=M.indexOf(L);G!==-1&&M.splice(G,1)}const V=Q!==""&&M.includes(Q.toLowerCase()),[I,P]=s.useState(Array(4).fill(null)),[z,ae]=s.useState(4),[ne,re]=s.useState(null),[pe,_e]=s.useState("landscape"),[Z,ie]=s.useState(["\uC774\uBBF8\uC9C0","\uB2E8\uC5B4","\uD45C\uC900 \uBC1C\uC74C"]),[J,be]=s.useState("\uD45C\uC2DC"),[xe,Ce]=s.useState(!0),[fe,ve]=s.useState(!0),Se=s.useRef(null),X=s.useRef([]),[ue,ke]=s.useState(8),[Me,Fe]=s.useState("right"),[De,Pe]=s.useState(!1),[Le,Je]=s.useState(!1),{toastMessage:ze,toastType:He,showWarning:ge,clearToast:Ve}=ui("warning"),Be=s.useCallback(()=>re(null),[re]);g&&!E&&!m&&qn("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[Ee,Ne]=s.useState(()=>Math.max(r?.length??1,1));s.useEffect(()=>{E||Ne(L=>Math.max(L,r?.length??1))},[r?.length,E]);const nt=E?z:m?Math.max(Ee,r?.length??1):Math.max(r?.length??0,1),{width:ft,height:tt}=Hn[pe],rt=!E&&!m,Ke=r?.length??0,je=Math.min(ue,Math.max(Ke,1)),Qe=rt?je:nt,ut=rt?dl(r??[],Qe):null,qe=!!ut&&ut.length>1,Ye=E?I.some(L=>L!==null&&L.length>1):(r??[]).some(L=>L.words.length>1),Ie=_?.trim()||`${ys(y0())} ${Ye?B("wordTable.printFileNamePair","\uB300\uB9BD\uC30D\uD45C"):B("wordTable.printFileNameSingle","\uB2E8\uC5B4\uD45C")}`,Ze=s.useCallback(()=>qe?X.current.filter(L=>L!==null):Se.current?[Se.current]:[],[qe]),{print:ot,openNewWindow:Ft,downloadHtml:dt}=$r({getElements:Ze,paperW:ft,paperH:tt,fileName:Ie,onPopupBlocked:()=>{ge(B("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."))}}),At=L=>{ae(L),P(G=>{const le=Array(L).fill(null);return G.slice(0,L).forEach((de,ce)=>{le[ce]=de}),le}),re(null)},dn=L=>{P(G=>{const le=[...G];return le[L]=null,le}),ne===L&&re(null)},Qt=L=>{if(ne===null)return;const G=ne;P(de=>{const ce=[...de];return ce[G]=L,ce});const le=I.findIndex((de,ce)=>ce>G&&de===null);re(le!==-1?le:null)},bt=E?I.some(L=>L?.some(G=>!!G.colloquialPronunciation)):(r??[]).some(L=>L.words.some(G=>!!G.colloquialLabel)),yt=s.useMemo(()=>Rn()?E?I.flatMap(L=>(L??[]).map(G=>[G.word,G.homonum])):(r??[]).flatMap(L=>L.words.map(G=>[G.label,G.homonum])):[],[E,I,r]),[Tt,Rt]=s.useState(!1);s.useEffect(()=>{if(yt.length===0)return;let L=!1;return Promise.all(yt.map(([G,le])=>us(G,le))).then(G=>{L||Rt(G.some(Boolean))}),()=>{L=!0}},[yt]);const en=yt.length>0&&Tt,_n=s.useMemo(()=>[...E||m?[{label:B("wordTable.filter.columns","\uCE78 \uC218"),items:cb.map(L=>({value:`${L}\uCE78`,displayLabel:B("wordTable.filter.column",{count:L})})),display:"segmented"}]:[],...rt&&(r?.length??0)>0?[kl(B,{hasPairs:Ye,itemCount:Ke})]:[],...qe?[Al(B)]:[]],[B,E,m,rt,r?.length,Ye,Ke,qe]),Xe={...E||m?{[B("wordTable.filter.columns","\uCE78 \uC218")]:`${E?z:Ee}\uCE78`}:{},...rt&&(r?.length??0)>0?{[B(Ye?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord")]:`${je}\uAC1C`}:{},...qe?{[B("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")]:Nl[Me]}:{}},Et=(L,G)=>{if(G===B("wordTable.filter.columns","\uCE78 \uC218"))E?At(parseInt(L)):Ne(parseInt(L));else if(G===B(Ye?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord")){const le=parseInt(L);ke(Tr.includes(le)?le:Number.POSITIVE_INFINITY)}else G===B("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")&&Fe(Bl(L))},vt=E?I.filter(L=>L!==null).map(L=>({id:L[0].word,words:L.map(G=>({label:G.word,subLabel:G.pronunciation,homonum:G.homonum}))})):r??[],Ot=(L=!1)=>{if(Je(L),te&&o){const G=ee.trim().toLowerCase();G&&H(le=>le.includes(G)?le:[...le,G]),o(ee,vt,Y||void 0,L);return}if(x&&o){o("",vt,void 0,L);return}if(o){Pe(!0);return}dt()},[Mt,Yt]=s.useState(!1),[tn,nn]=s.useState(""),Pt=tn.trim(),Ht=Pt!==""&&O.includes(Pt.toLowerCase()),pn=()=>{nn(ee?B("wordTable.save.copyName",{name:ee,defaultValue:"{{name}} (\uBCF5\uC0AC)"}):""),Yt(!0)},xt=()=>{!Pt||Ht||!o||(o(Pt,vt,Y||void 0,!0),Yt(!1))},Vt=vt.length===0,Zt=Vt||te&&(ee===""||V),Nt=()=>{if(Vt){ge(B("wordTable.emptyItems","\uB2E8\uC5B4\uB97C 1\uAC1C \uC774\uC0C1 \uCD94\uAC00\uD574\uC8FC\uC138\uC694."));return}if(te&&ee===""){ge(B("wordTable.save.nameRequired","\uD45C \uC774\uB984\uC744 \uC785\uB825\uD574 \uC8FC\uC138\uC694."));return}te&&V&&ge(B("wordTable.save.duplicateName","\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4."))},R=t.jsx(Vn,{items:vt,orientation:pe,contentTypes:Z,cutLine:J,showOutline:xe,showDivLine:fe,count:nt});return t.jsxs(t.Fragment,{children:[t.jsxs(On,{type:"page",icon:n,title:e,disc:a,className:ye("word-table-block",y),children:[Mt&&t.jsx(yn,{size:"small",title:p??B("wordTable.saveAsNewButton","\uB2E4\uB978 \uC774\uB984\uC73C\uB85C \uC800\uC7A5"),onClose:()=>Yt(!1),footer:({closeWithAnimation:L})=>t.jsxs(t.Fragment,{children:[t.jsx(oe,{htmlType:"button",size:48,type:"bar",label:B("common.cancel","\uCDE8\uC18C"),onClick:L}),t.jsx(oe,{htmlType:"button",size:48,type:"bar",variant:"main",label:B("common.save","\uC800\uC7A5"),disabled:!Pt||Ht,onClick:xt})]}),children:t.jsx(Tn,{label:B("wordTable.save.nameLabel","\uC774\uB984"),value:tn,onChange:nn,placeholder:B("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:xt,error:Ht?B("wordTable.save.duplicateName","\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4."):void 0})}),De&&o&&C?.({defaultName:typeof e=="string"?e:B("wordTable.defaultName","\uB2E8\uC5B4 \uD45C"),preview:R,previewW:ft,previewH:tt,items:vt,existingNames:b5().map(L=>L.name),saveAsNew:Le,onSave:(L,G)=>{o(L,vt,G,Le),Pe(!1)},onCancel:()=>Pe(!1)}),(E||g)&&ne!==null&&f?.({cellIndex:ne,onConfirm:E?Qt:L=>{if(g){const G=L[0];G&&g({id:G.word,words:[{label:G.word,subLabel:G.pronunciation,homonum:G.homonum}]})}re(null)},onClose:Be}),!v&&t.jsx(Er,{hasImage:en,hasColloquial:bt,contentTypes:Z,orientation:pe,showOutline:xe,cutLine:J,showDivLine:fe,setters:{setContentTypes:ie,setOrientation:_e,setShowOutline:Ce,setCutLine:be,setShowDivLine:ve},showCutLine:(rt?Qe:nt)>1,showDivLine2:Ye,middleSections:_n,extraSelected:Xe,onExtraSelect:Et}),qe&&ut?t.jsx("div",{className:"word-table-block__pages",children:ut.map((L,G)=>t.jsx(Vn,{orientation:pe,contentTypes:Z,cutLine:J,showOutline:xe,showDivLine:fe,count:Qe,items:L,onRemoveItem:l,contentRef:le=>{X.current[G]=le},pageNumber:{current:G+1,total:ut.length},pageNumberPosition:Me},G))}):t.jsx(Vn,{orientation:pe,contentTypes:Z,cutLine:J,showOutline:xe,showDivLine:fe,count:nt,items:E?void 0:r??[],editCells:E?I:void 0,activeCell:ne,onActivateCell:E||g?re:void 0,onRemoveCell:E?dn:void 0,onRemoveItem:E?void 0:l,onReorder:E?void 0:h,showFillerAdd:!!g,contentRef:Se}),te&&!v&&t.jsxs(Ma,{size:"medium",labelWidth:64,useBorder:!1,useRowBorder:!1,className:"word-table-block__meta",children:[t.jsx(vn,{variant:"custom",label:B("wordTable.save.nameLabel","\uC774\uB984"),required:!0,align:"vertical",useFullWidth:!0,children:t.jsx(Tn,{required:!0,value:b??"",onChange:N,placeholder:j?j+B("wordTable.save.autoFillHint"," (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)"):B("wordTable.save.placeholder","\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC81C\uBAA9\uC744 \uC785\uB825\uD558\uC138\uC694."),ariaLabel:B("wordTable.save.nameLabel","\uC774\uB984"),maxLength:40,size:48,fullWidth:!0,error:V?B("wordTable.save.duplicateName","\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4."):void 0,onKeyDown:L=>{(L.key==="Tab"&&!L.shiftKey||L.key===" ")&&!(b??"").trim()&&(j??"").trim()&&(L.preventDefault(),N?.(j??""))}})}),t.jsx(vn,{variant:"custom",label:B("wordTable.save.descriptionLabel","\uC124\uBA85"),align:"vertical",useFullWidth:!0,children:t.jsx(Tn,{value:w??"",onChange:k,placeholder:A?A+B("wordTable.save.autoFillHint"," (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)"):B("wordTable.save.descriptionPlaceholder","\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC124\uBA85\uC744 \uC785\uB825\uD558\uC138\uC694."),ariaLabel:B("wordTable.save.descriptionLabel","\uC124\uBA85"),maxLength:200,multiline:!0,rows:2,fullWidth:!0,onKeyDown:L=>{(L.key==="Tab"&&!L.shiftKey||L.key===" ")&&!(w??"").trim()&&(A??"").trim()&&(L.preventDefault(),k?.(A??""))}})})]})]}),!v&&t.jsxs("div",{className:"word-table-block__actions",children:[t.jsxs("div",{className:"word-table-block__actions-left",children:[!x&&c&&t.jsx(oe,{htmlType:"button",size:40,type:"bar",label:F,onClick:c}),!x&&i&&t.jsx(oe,{htmlType:"button",size:40,type:"bar",label:B("wordTable.load","\uBD88\uB7EC\uC624\uAE30"),onClick:i}),!x&&t.jsx(oe,{htmlType:"button",size:40,type:"bar",label:B("wordTable.openNewWindow","\uC0C8 \uCC3D\uC73C\uB85C \uBCF4\uAE30"),onClick:Ft})]}),t.jsxs("div",{className:"word-table-block__actions-right",children:[W&&t.jsx(oe,{htmlType:"button",size:"56",type:"bar",label:B("common.cancel","\uCDE8\uC18C"),onClick:W}),!x&&t.jsx(oe,{htmlType:"button",size:"56",type:"bar",label:B("wordTable.print","\uC778\uC1C4\uD558\uAE30"),onClick:ot}),p&&t.jsx(oe,{htmlType:"button",size:"56",type:"bar",label:p,onClick:()=>te?pn():Ot(!0),disabled:Vt,onDisabledClick:()=>{ge(B("wordTable.emptyItems","\uB2E8\uC5B4\uB97C 1\uAC1C \uC774\uC0C1 \uCD94\uAC00\uD574\uC8FC\uC138\uC694."))}}),t.jsx(oe,{htmlType:"button",size:"56",type:"bar",variant:"main",label:d??B("wordTable.saveButton","\uC800\uC7A5\uD558\uAE30"),onClick:()=>Ot(!1),disabled:Zt,onDisabledClick:Nt})]})]}),t.jsx(Fn,{message:ze,type:He,onClose:Ve})]})}function mc({items:e,className:n}){const a=e.length,r=a<=3?1:2,o=Math.ceil(a/r)||1,i=r*o;return t.jsx("div",{className:ye("word-table-thumb",n),style:{gridTemplateColumns:`repeat(${r}, 1fr)`},children:Array.from({length:i},(l,c)=>{const u=e[c];return u?t.jsx("div",{className:"word-table-thumb__cell",children:(u.words.length?u.words:[{label:u.id}]).map((d,p)=>t.jsxs(s.Fragment,{children:[p>0&&t.jsx("span",{className:"word-table-thumb__divider"}),t.jsx("span",{className:"word-table-thumb__word body-3",children:d.label})]},p))},c):t.jsx("div",{className:"word-table-thumb__cell word-table-thumb__cell--empty"},c)})})}function v5({items:e,name:n,description:a,createdAt:r,published:o,publishedLabel:i,shared:l,sharedLabel:c,isNew:u,publisherName:d,publishedAt:p,likeCount:h,downloadCount:m,onPublisherClick:g,selected:y,onClick:C,onMore:f,titleNode:v,className:x}){const{t:_}=he.useTranslation(),b=v!=null,N=d!=null||p!=null||h!=null||m!=null,w=k=>{k.target===k.currentTarget&&!b&&(k.key==="Enter"||k.key===" ")&&(k.preventDefault(),C?.())};return t.jsxs("div",{className:ye("word-table-button",y?"word-table-button--selected":"",N?"":"word-table-button--no-footer",x),role:"button",tabIndex:0,"aria-label":n,onClick:b?void 0:C,onKeyDown:w,children:[u&&t.jsx("span",{className:"word-table-button__new-dot","aria-label":_("myWordTable.newBadge","\uC0C8\uB85C \uB9CC\uB4E0 \uD45C")}),t.jsx(mc,{items:e,className:"word-table-button__thumb"}),t.jsxs("div",{className:"word-table-button__info",children:[t.jsxs("div",{className:"word-table-button__info-text",children:[v??t.jsx("div",{className:"word-table-button__title h4",children:n}),a&&t.jsx("div",{className:"word-table-button__desc body-3",children:a})]}),f&&!b&&t.jsx(oe,{htmlType:"button",className:"word-table-button__more",size:32,type:"dot",variant:"transparent-gray",useBorder:!1,icon:"ellipsis",ariaLabel:_("common.moreFor",{name:n}),onClick:k=>{k.stopPropagation(),f(k)}})]}),(r||o||l)&&t.jsxs("div",{className:"word-table-button__meta-row",children:[t.jsx("span",{className:"word-table-button__meta caption-1",children:r?bs(r,_):""}),t.jsxs("span",{className:"word-table-button__badges",children:[o&&t.jsx(it,{className:"word-table-button__badge",size:"small",variant:"main",fill:"soft",iconLeft:"book-marked",label:i??_("myWordTable.publishedBadge","\uBC1C\uD589\uB428")}),l&&t.jsx(it,{className:"word-table-button__badge",size:"small",fill:"soft",iconLeft:"link",label:c??_("myWordTable.sharedBadge","\uACF5\uC720 \uC911")})]})]}),N&&t.jsxs("div",{className:"word-table-button__footer",children:[t.jsxs("span",{className:"word-table-button__store-by",children:[d&&t.jsx("button",{className:"training-card__publisher body-4",type:"button",onClick:k=>{k.stopPropagation(),g?.()},children:d}),p&&t.jsx("span",{className:"training-card__date body-4",children:bs(p,_)})]}),t.jsxs("span",{className:"word-table-button__store-stats",children:[h!=null&&t.jsx(it,{size:"small",fill:"soft",variant:"like",iconLeft:"heart",label:String(h)}),m!=null&&t.jsx(it,{size:"small",fill:"soft",variant:"main",iconLeft:"download",label:String(m)})]})]})]})}/**
968
+ `).map((l,c,u)=>t.jsxs(s.Fragment,{children:[l,c<u.length-1&&t.jsx("br",{})]},c))})}),t.jsxs("div",{className:"site-footer__links",children:[t.jsxs("div",{className:"site-footer__column",children:[t.jsx("div",{className:"site-footer__column-title footer-title",children:i("footer.site.title","\uC0AC\uC774\uD2B8")}),t.jsxs("ul",{children:[t.jsx("li",{children:t.jsx("a",{className:"footer-link",href:"https://www.ihab.co.kr/",target:"_blank",rel:"noopener noreferrer",children:"IHAB"})}),t.jsx("li",{children:t.jsx("a",{className:"footer-link",href:"https://speechear.ihab.co.kr/",target:"_blank",rel:"noopener noreferrer",children:i("footer.site.malgwi","\uB9D0\uADC0")})}),t.jsx("li",{children:t.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")})}),t.jsx("li",{children:t.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")})}),t.jsx("li",{children:t.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")})})]})]}),t.jsxs("div",{className:"site-footer__column",children:[t.jsx("div",{className:"site-footer__column-title footer-title",children:i("footer.sns.title","SNS")}),t.jsxs("ul",{children:[t.jsx("li",{children:t.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")})}),t.jsx("li",{children:t.jsx("a",{className:"footer-link",href:"https://www.instagram.com/ihab.official.yt/",target:"_blank",rel:"noopener noreferrer",children:"Instagram"})}),t.jsx("li",{children:t.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"})})]})]}),t.jsxs("div",{className:"site-footer__column",children:[t.jsx("div",{className:"site-footer__column-title footer-title",children:i("footer.policy.title","\uC815\uCC45")}),t.jsxs("ul",{children:[t.jsx("li",{children:t.jsx("a",{className:"footer-link",href:"#",onClick:l=>{e&&(l.preventDefault(),e())},children:i("footer.policy.terms","\uC774\uC6A9\uC57D\uAD00")})}),t.jsx("li",{children:t.jsx("a",{className:"footer-link",href:"#",onClick:l=>{n&&(l.preventDefault(),n())},children:i("footer.policy.privacy","\uAC1C\uC778\uC815\uBCF4 \uCC98\uB9AC\uBC29\uCE68")})})]})]})]})]}),t.jsx("hr",{className:"site-footer__rule"}),t.jsxs("div",{className:"site-footer__bottom",children:[t.jsx("div",{className:"site-footer__brand",children:t.jsx("img",{src:Cr,alt:"IHAB",className:"site-footer__logo"})}),t.jsxs("div",{className:"site-footer__meta",children:[t.jsxs("div",{children:[t.jsx("span",{className:"footer-title",children:i("footer.ceo","\uB300\uD45C")}),t.jsx("span",{className:"footer-meta caption-1",children:i("footer.ceoName","\uD55C\uC9C0\uD61C")})]}),t.jsxs("div",{children:[t.jsx("span",{className:"footer-title",children:i("footer.address","\uC8FC\uC18C")}),t.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")})]}),t.jsxs("div",{children:[t.jsx("span",{className:"footer-title",children:i("footer.support","\uACE0\uAC1D\uC13C\uD130")}),t.jsxs("span",{className:"footer-meta caption-1",children:[r," \xA0 ",o]})]})]})]}),t.jsx("div",{className:"site-footer__copyright footer-copyright caption-1",children:"\xA9 IHAB, Inc. All rights reserved."})]})})}function zb({logo:e,logoAlt:n="",logoHref:a,links:r=[],actions:o,className:i,containerClassName:l,renderLink:c,menuLabel:u}){const{t:d}=he.useTranslation(),p=u??{open:d("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),close:d("header.menuClose","\uBA54\uB274 \uB2EB\uAE30")},[h,m]=s.useState(!1),g=s.useId();s.useEffect(()=>{if(!h)return;const f=Bn(()=>m(!1)),v=typeof window<"u"&&window.matchMedia?window.matchMedia("(min-width: 961px)"):null,x=_=>{_.matches&&m(!1)};return v&&(v.matches&&m(!1),v.addEventListener?.("change",x)),()=>{f(),v?.removeEventListener?.("change",x)}},[h]);const y=l?`${l} landing-header__inner`:"landing-header__inner",C=(f,v)=>c?c(f,{onClick:v}):t.jsx("a",{href:f.href,onClick:v,"aria-current":f.current?"page":void 0,children:f.label});return t.jsxs("header",{className:i?`landing-header ${i}`:"landing-header",children:[t.jsxs("div",{className:y,children:[e!=null&&(()=>{const f=typeof e=="string"?t.jsx("img",{src:e,alt:n,className:"landing-header__logo"}):e;return a?t.jsx("a",{href:a,className:"landing-header__brand",children:f}):t.jsx("div",{className:"landing-header__brand",children:f})})(),r.length>0&&t.jsx("nav",{className:"landing-header__links",children:r.map(f=>t.jsx("span",{children:C(f)},f.href))}),t.jsxs("div",{className:"landing-header__actions",children:[o,r.length>0&&t.jsx("button",{type:"button",onClick:()=>m(f=>!f),"aria-expanded":h,"aria-controls":g,"aria-label":h?p.close:p.open,className:h?"landing-header__toggle landing-header__toggle--open":"landing-header__toggle",children:t.jsxs("span",{className:"landing-header__burger",children:[t.jsx("span",{}),t.jsx("span",{}),t.jsx("span",{})]})})]})]}),r.length>0&&t.jsx("nav",{id:g,hidden:!h,className:"landing-header__drawer",children:t.jsx("div",{className:l??void 0,children:r.map(f=>t.jsx("span",{className:"landing-header__drawer-item",children:C(f,()=>m(!1))},f.href))})})]})}function Wb({children:e,action:n,onClick:a,className:r}){const o=a?"bottom-sticky__inner bottom-sticky__inner--clickable":"bottom-sticky__inner";return t.jsx("div",{className:r?`bottom-sticky ${r}`:"bottom-sticky",children:t.jsxs("div",{className:o,onClick:a,...rl(a),children:[t.jsx("div",{className:"bottom-sticky__content",children:e}),n]})})}const zn=9,qb=e=>Math.round(Math.min(zn,Math.max(0,e))/zn*100),Ub=e=>e/100*zn,Da=2,Ml=.1,Ll=e=>Math.min(Da,Math.max(0,e)),Gb=e=>Math.round(e*10)/10;function ca(e){const{noiseRatio:n}=e;if(typeof n=="number"&&Number.isFinite(n))return Ll(n);const a=Math.min(zn,Math.max(0,Number(e.level)||0))/zn,r=Number(e.mainVolume);return r>0?Gb(Ll(a/r)):1}const $l=e=>Math.min(1,Math.max(0,Number(e.mainVolume)||0));function Rl(e){return $l(e)}function Fr(e){return $l(e)*ca(e)}function Or(e,n=rs()){const a=Number.isFinite(n)&&n>0?n:1;return Math.min(1,Fr(e)/a)}function ua(e,n){const a={...e,...n??{}};return n&&"level"in n&&typeof n.noiseRatio!="number"&&(a.noiseRatio=ca({level:a.level,mainVolume:a.mainVolume})),a}const da={enabled:!0,type:"defaultNoise",level:4.5,noiseRatio:1,speed:1,mainVolume:1,mainSpeed:1},Vr=s.createContext(null);function ja(){return s.useContext(Vr)}const Hr=e=>`${Im()}/${e}`,Pl=e=>Array.from({length:10},(n,a)=>Hr(`${e}-${String(a+1).padStart(2,"0")}.mp3`)),Ta={get defaultNoise(){return Hr("noise1.mp3")},get street(){return Pl("noise2")},get restaurant(){return Pl("noise3")},get buzz(){return Hr("noise4.mp3")}};function Kb(e){const n=Math.floor(Math.random()*10);switch(e){case"defaultNoise":return Ta.defaultNoise;case"street":return Ta.street[n];case"restaurant":return Ta.restaurant[n];case"buzz":return Ta.buzz;default:return null}}function Yb({noisePlayer:e,audioRef:n,playbackStateRef:a}){const r=s.useRef(e?.registerAnalyser);r.current=e?.registerAnalyser;const o=s.useRef(null),[i,l]=s.useState(null),c=s.useRef(null),u=s.useRef(null),d=s.useRef(null),p=s.useRef(null),h=s.useRef(0),m=s.useRef(null),g=s.useCallback(()=>{p.current!==null&&(cancelAnimationFrame(p.current),p.current=null),m.current!==null&&(clearTimeout(m.current),m.current=null)},[]),y=s.useCallback((x,_=250)=>{const b=o.current;if(!b)return;const N=u.current;if(N){u.current=null;try{b.pause()}catch{}b.src=N,b.load()}if(!b.src)return;h.current+=1,g();try{Qa(),fa(b).then(A=>{if(o.current===b)try{r.current?.("noise",A)}catch{}})}catch{}const w=b.paused?0:Ca(b);b.paused&&fn(b,0),b.play().catch(()=>{});const k=performance.now(),j=()=>{const A=Math.min(1,(performance.now()-k)/_);try{fn(b,w+(x-w)*A)}catch{}A<1?p.current=requestAnimationFrame(j):p.current=null};p.current=requestAnimationFrame(j)},[g]),C=s.useCallback((x=250,_)=>{const b=o.current;if(!b||b.paused){_?.();return}const N=++h.current;g();const w=performance.now(),k=Ca(b),j=()=>{const A=Math.min(1,(performance.now()-w)/x);try{fn(b,k*(1-A))}catch{}if(A<1)p.current=requestAnimationFrame(j);else{p.current=null,m.current!==null&&(clearTimeout(m.current),m.current=null);try{b.pause()}catch{}_?.()}};p.current=requestAnimationFrame(j),m.current=setTimeout(()=>{if(m.current=null,h.current===N){p.current!==null&&(cancelAnimationFrame(p.current),p.current=null);try{b.paused||(fn(b,0),b.pause(),_?.())}catch{}}},x+150)},[g]);s.useEffect(()=>{const x=document.createElement("audio");return x.loop=!0,x.crossOrigin="anonymous",o.current=x,()=>{g();try{x.pause(),x.src=""}catch{}o.current=null,c.current=null,u.current=null}},[g]);const f=e?Or(e.settings):0,v=!!e?.settings.enabled&&f>0;return s.useEffect(()=>{if(!v)return;let x=0;const _=setInterval(()=>{const b=o.current;if(!b||b.paused){x=0;return}const N=n.current;if(N&&!N.paused&&!N.ended||a.current==="playing"){x=0;return}x+=1,x>=2&&(x=0,C())},400);return()=>clearInterval(_)},[C,v,n,a]),s.useEffect(()=>{const x=()=>{if(!document.hidden)return;const _=o.current;if(_&&!_.paused){g();try{_.pause()}catch{}}};return document.addEventListener("visibilitychange",x),()=>document.removeEventListener("visibilitychange",x)},[g]),s.useEffect(()=>{d.current=e?{enabled:e.settings.enabled,volume:f,type:e.settings.type}:null},[e,e?.settings.enabled,f,e?.settings.type]),s.useEffect(()=>{const x=e?.settings,_=o.current;if(!_)return;const b=x?Or(x):0;if(!x||!x.enabled||b===0){C();return}if(c.current!==x.type){const N=Kb(x.type);N&&(c.current=x.type,l(N),u.current=N,C(150,()=>{if(u.current!==N)return;u.current=null,_.src=N,_.load();const w=n.current;w&&!w.paused&&_.addEventListener("canplay",function k(){_.removeEventListener("canplay",k);const j=n.current;j&&!j.paused&&!j.ended&&y(b)})}))}else{const N=n.current,w=!!N&&!N.paused&&!N.ended;if(w&&_.paused&&_.src)y(b);else if(!_.paused)if(!w)C();else{g();const k=Ca(_),j=performance.now(),A=()=>{const S=Math.min(1,(performance.now()-j)/150);try{fn(_,k+(b-k)*S)}catch{}S<1?p.current=requestAnimationFrame(A):p.current=null};p.current=requestAnimationFrame(A)}}},[e?.settings,e?.settings.enabled,f,e?.settings.type,g,y,C,n]),s.useEffect(()=>{const x=o.current;if(x)try{x.playbackRate=Math.min(1.25,Math.max(.75,e?.settings.speed??1))}catch{}},[e?.settings.speed]),{noiseAudioRef:o,activeNoiseUrl:i,noiseSettingsRef:d,cancelNoiseFade:g,fadeInNoise:y,fadeOutNoise:C}}function Zb({ttsText:e,playbackRate:n,mainVolume:a,fillRef:r,waveProgressRef:o,setProgress:i,setPlaybackState:l,setStateLocal:c,fadeInNoise:u,fadeOutNoise:d,noiseSettingsRef:p,onDoneRef:h,handleEndRef:m}){const g=s.useRef(null),y=s.useRef(0),C=s.useRef(null),f=s.useRef(0),v=s.useRef(!1);s.useEffect(()=>()=>{f.current++;try{if(C.current&&(cancelAnimationFrame(C.current),C.current=null),v.current&&window.speechSynthesis){try{window.speechSynthesis.cancel()}catch{}v.current=!1}}catch{}},[]);const x=(N,w=1)=>{try{const k=(N||"").trim().split(/\s+/).filter(Boolean).length||Math.max(1,(N||"").length);return Math.max(700,Math.round(k*300/Math.max(.25,w)))}catch{return 1200}},_=s.useCallback(N=>{if(typeof window>"u"||!window.speechSynthesis){try{typeof h.current=="function"&&h.current(!0)}catch{}return}const w=window.speechSynthesis,k=++f.current;try{try{w.cancel()}catch{}const j=N??e,A=(Array.isArray(j)?j[0]??"":j)||"",S=new SpeechSynthesisUtterance(A);try{S.rate=Math.max(.3,Math.min(3,n))}catch{}try{S.volume=Math.max(0,Math.min(1,a))}catch{}y.current=x(A,S.rate||1),g.current=performance.now(),i(0),l("playing"),c("playMode");const q=p.current;q?.enabled&&(q?.volume??0)>0&&u(q.volume);const W=()=>{try{const B=g.current||performance.now(),O=performance.now()-B,E=y.current||1200,ee=Math.min(1,O/E);i(ee);try{r.current&&(r.current.style.left=`${ee*100}%`),o.current&&o.current.style.setProperty("--progress",String(ee))}catch{}ee<1&&(C.current=requestAnimationFrame(W))}catch{}};S.onend=()=>{if(k===f.current)try{C.current&&(cancelAnimationFrame(C.current),C.current=null),i(1),l("stopped");try{m.current?.()}catch{try{typeof h.current=="function"&&h.current(!0)}catch{}}}catch{}},S.onerror=()=>{S.onend?.(new Event("end"))},S.onstart=()=>{try{C.current&&(cancelAnimationFrame(C.current),C.current=null),C.current=requestAnimationFrame(W)}catch{}};try{v.current=!0,w.speak(S)}catch{try{typeof h.current=="function"&&h.current(!0)}catch{}}}catch{try{typeof h.current=="function"&&h.current(!0)}catch{}}},[e,n,a,u,r,o,i,l,c,p,h,m]),b=s.useCallback(()=>{f.current++;try{if(window.speechSynthesis)try{window.speechSynthesis.cancel()}catch{}C.current&&(cancelAnimationFrame(C.current),C.current=null),d(),g.current=null}catch{}l("stopped"),c("active"),i(0)},[d,l,c,i]);return{startTTS:_,stopTTS:b}}async function Xb(e,n,a){let r=null;try{const o=window.AudioContext||window.webkitAudioContext;r=new o;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,u=Math.max(n,c),d=Math.floor(u/n)||1;return new Array(n).fill(0).map((p,h)=>{const m=h*d,g=Math.min(m+d,u);let y=0;for(let C=m;C<g;C++){const f=Math.abs(l[C]);f>y&&(y=f)}return y})}catch{return null}finally{try{r?.close?.()}catch{}}}async function Il(e,n,a){try{const r=await fetch(e);if(r.ok===!1)return null;const o=await r.arrayBuffer();return await Xb(o,n,a)}catch(r){try{const o=ms(r)}catch{}return null}}const Fl=45,Jb=74,Qb=2;function pa(e){const n=Math.min(2,Math.max(0,Number(e)||0));return n<=1?n*45:45+(n-1)*29}function zr(e){return pa(e)/45}const Ol=4;function ey(e){const{src:n,segments:a,progress:r=0,waveProgressRef:o,noiseSrc:i,noiseRatio:l=0,noiseSpeed:c=1,totalDuration:u=0,mainVolume:d=1,onReadyChange:p,showSoundWaveForm:h=!0}=e,m=s.useRef(null),g=s.useRef(null),[y,C]=s.useState(null),[f,v]=s.useState(!1),[x,_]=s.useState(null),[b,N]=s.useState(2),[w,k]=s.useState(0),[j,A]=s.useState(null),[S,q]=s.useState(!1),W=3,B=3,O=1,E=300,ee=s.useRef(0),M=s.useCallback(async(ne,re)=>{const pe=++ee.current,_e=()=>ee.current===pe;try{if(v(!1),!ne){_e()&&C(null);return}let Z=re;if(!Z)try{for(let ue=0;ue<4&&!(m.current||g.current);ue++)await new Promise(ke=>requestAnimationFrame(ke));await new Promise(ue=>requestAnimationFrame(ue));const J=m.current,be=g&&g.current?g.current:J?J.closest(".audio-player__wave"):null,xe=be?be.getBoundingClientRect():J?J.getBoundingClientRect():null,Ce=xe?Math.max(100,xe.width):320,fe=xe?xe.height:0;fe>0&&k(fe),Z=Math.max(O,Math.min(E,Math.floor((Ce+B)/(W+B))));const ve=Z*W,Se=Math.max(0,Z-1),X=Se>0?(Ce-ve)/Se:B;N(Math.max(0,X))}catch{Z=120}const ie=await Il(ne,Z);if(!_e())return;if(!ie){C(null),v(!1);return}C(ie),_(Z),v(!0)}catch{if(!_e())return;C(null),v(!1)}},[v,C,k,N,_]);s.useEffect(()=>{const ne=a&&a[0]&&a[0].src||n||a&&a.length===1&&a[0]&&a[0].src;M(typeof ne=="string"?ne:void 0).catch(()=>{}),q(!1)},[n,a,M]),s.useEffect(()=>{let ne=!1;if(!i||!x){A(null);return}const re=u>0?u*(c||1):void 0;return Il(i,x,re).then(pe=>{ne||A(pe)}).catch(()=>{ne||A(null)}),()=>{ne=!0}},[i,x,u,c]);const H=Math.max(0,Math.min(1,d)),Q=s.useMemo(()=>y&&y.length&&Math.max(...y)||1,[y]),te=x||40,Y=s.useMemo(()=>Array.from({length:te}).map((ne,re)=>{const pe=y&&y[re]!=null?y[re]:null,_e=pe==null?null:Math.min(1,pe/Q*H),Z=_e!=null&&w>0&&pa(_e)<=Ol,ie=_e==null?.15:Z?0:zr(_e),J=te>1?re/(te-1):0;return t.jsx("div",{className:Z?"audio-player__bar audio-player__bar--hidden":"audio-player__bar",style:{"--val":ie,"--i":re,"--mix":J}},re)}),[te,y,Q,H,w]),V={"--progress":String(Math.max(0,Math.min(1,r)))},T=i?Math.max(1,l):1,P={"--bar-gap":`${b}px`,"--wave-h":`${pa(T)}px`,"--wave-h1":`${Fl}px`},F=H*Math.max(0,l)/rs(),L=f&&(i?!!j:!0);s.useEffect(()=>{L&&q(!0)},[L]);const R=S?f:L;s.useEffect(()=>{p?.(R)},[R,p]);const z=x||40,ae=s.useMemo(()=>Array.from({length:z}).map((ne,re)=>{const pe=j&&j[re]!=null?j[re]:null,_e=pe==null?0:pe/Q*F,Z=w>0&&pa(_e)<=Ol,ie=Z?0:zr(_e),J=z>1?re/(z-1):0;return t.jsx("div",{className:Z?"audio-player__bar audio-player__bar--hidden":"audio-player__bar",style:{"--val":ie,"--i":re,"--mix":J}},re)}),[z,j,Q,F,w]);return t.jsxs("div",{className:"audio-player__wave",ref:g,style:P,children:[i&&t.jsx("div",{className:`audio-player__wave-noise ${L?"is-ready":""}`,"aria-hidden":"true",children:ae}),h&&t.jsxs(t.Fragment,{children:[t.jsx("div",{className:`audio-player__wave-inner audio-player__wave-unplayed ${R?"is-ready":""}`,ref:m,children:Y}),t.jsx("div",{className:`audio-player__wave-inner audio-player__wave-played ${R?"is-ready":""}`,ref:o,style:V,children:Y})]})]})}const ty={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 Wr(e,n){return new Promise((a,r)=>{const o=document.createElement("audio");let i=!1;const l=()=>{try{o.src=""}catch{}},c=()=>{if(i)return;i=!0;const d=isFinite(o.duration)&&o.duration||0;l(),a(d)},u=d=>{i||(i=!0,l(),n.rejectOnError?r(new Error(d)):a(0))};o.addEventListener("loadedmetadata",c),o.addEventListener("error",()=>u("audio load failed")),setTimeout(()=>u("audio load timeout"),n.timeoutMs),o.src=e})}const ny=2e3;function Vl(e,n=ny){return new Promise(a=>{let r=!1;const o=()=>{r||(r=!0,a())};e.addEventListener("canplay",o,{once:!0}),e.addEventListener("error",o,{once:!0}),setTimeout(o,n)})}function ay({showSoundWaveForm:e,showNoiseWaveForm:n,timeoutMs:a=2500}){const r=s.useRef(!1),o=s.useRef([]),i=s.useCallback(u=>{if(r.current=u,!u||!o.current.length)return;const d=o.current;o.current=[];for(const p of d)p()},[]),l=s.useCallback(()=>{r.current=!1},[]),c=s.useCallback(()=>!e&&!n||r.current?Promise.resolve():new Promise(u=>{const d=setTimeout(u,a);o.current.push(()=>{clearTimeout(d),u()})}),[e,n,a]);return s.useEffect(()=>()=>{const u=o.current;o.current=[];for(const d of u)d()},[]),{onReadyChange:i,waitForReady:c,markNotReady:l}}function ry(){const e=s.useRef([]),n=s.useCallback(o=>(e.current.push(o),o),[]),a=s.useCallback(o=>{const i=new Set([...o].filter(Boolean));e.current=e.current.filter(l=>{if(i.has(l))return!0;try{URL.revokeObjectURL(l)}catch{}return!1})},[]),r=s.useCallback(()=>{a([])},[a]);return s.useEffect(()=>()=>{for(const o of e.current)try{URL.revokeObjectURL(o)}catch{}e.current=[]},[]),{track:n,keepOnly:a,revokeAll:r}}function oy({offsetY:e=8}={}){const n=s.useRef(null),[a,r]=s.useState(null),o=s.useCallback(()=>r(null),[]),i=s.useCallback(()=>{try{const l=n.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 s.useEffect(()=>{if(a)return document.addEventListener("mousedown",o),()=>document.removeEventListener("mousedown",o)},[a,o]),{ref:n,rect:a,show:i,hide:o}}function sy({currentTime:e,sources:n,index:a,audioDuration:r}){const o=a||0,i=Array.isArray(n)&&n.length>0?n[o]: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 iy(e,n){if(!Array.isArray(e))return null;const a=n||0;return a<e.length-1?a+1:null}function ly({ended:e,completedByEnd:n}){return!!e||!!n}function cy(e){return e.map((n,a)=>({src:n.src,label:String(a+1),color:void 0,duration:n.duration||0}))}function uy(e){return e.reduce((n,a)=>n+(a.duration||0),0)}function dy(e,n,a){const r=Array.isArray(e)?e:e?[e]:[],o=[];for(const i of r)if(i){if(typeof i=="object"&&i!==null&&"src"in i&&i.src){const l=i;o.push({code:l.code??null,src:l.src});continue}if(typeof i=="string"&&(i.startsWith("http")||i.includes("/"))){o.push({code:null,src:i});continue}if(typeof i=="string"||typeof i=="number"){const l=String(i),c=a(l,n);c&&o.push({code:l,resolvedPath:c})}}return o}function py({audioRef:e,fillRef:n,waveProgressRef:a,sourcesRef:r,currentIndexRef:o}){const i=s.useRef(null),l=s.useCallback(()=>{i.current!==null&&(cancelAnimationFrame(i.current),i.current=null)},[]),c=s.useCallback(()=>{if(i.current!==null)return;const d=()=>{try{const p=e.current,h=sy({currentTime:p&&typeof p.currentTime=="number"?p.currentTime:0,sources:r.current,index:o.current,audioDuration:p&&p.duration?p.duration:0});try{n.current&&(n.current.style.left=`${h*100}%`)}catch{}try{a.current?.style.setProperty("--progress",String(h))}catch{}}catch{}i.current=requestAnimationFrame(d)};i.current=requestAnimationFrame(d)},[e,n,a,r,o]),u=s.useCallback(d=>{l();try{n.current&&(n.current.style.left=`${d*100}%`)}catch{}try{a.current?.style.setProperty("--progress",String(d))}catch{}},[l,n,a]);return s.useEffect(()=>l,[l]),{start:c,stop:l,settleTo:u}}function qr({btnLabel:e,soundSrc:n,bucketPath:a,onDone:r,disabled:o=!1,ttsText:i=null,className:l,showSoundWaveForm:c=!0,showNoiseWaveForm:u=!0}){const{t:d}=he.useTranslation(),p=e,h=ja(),m=s.useRef(h?.registerAnalyser);s.useEffect(()=>{m.current=h?.registerAnalyser});const g=s.useRef(null),y=s.useRef(null),C=s.useRef(null),f=ry(),v=s.useRef(null),x=s.useRef(!1),_=s.useRef(0),b=s.useRef(null),{ref:N,rect:w,show:k,hide:j}=oy();s.useEffect(()=>()=>{m.current?.("main",null),m.current?.("noise",null)},[]);const[A,S]=s.useState(!1),[q,W]=s.useState("idle"),[B,O]=s.useState("stopped"),E=s.useRef("stopped");s.useEffect(()=>{E.current=B},[B]);const[ee,M]=s.useState(0),[H,Q]=s.useState("active"),te=s.useRef(!1);s.useEffect(()=>{if(H!=="playMode"||!te.current)return;te.current=!1;const I=typeof document<"u"?document.activeElement:null;if(I&&I!==document.body)return;const $=C.current?.querySelectorAll("button")[1];try{$?.focus()}catch{}},[H]);const[Y,V]=s.useState(null),[T,P]=s.useState(null),[F,L]=s.useState(0),[R,z]=s.useState(!1),[ae,ne]=s.useState(0),re=h?.playbackRate??1,pe=h?.mainVolume??1,_e=h?Fr(h.settings):0,Z=h?Rl(h.settings):pe,[ie,J]=s.useState("idle"),[be,xe]=s.useState(""),[Ce]=s.useState("top"),fe=s.useRef(null),ve=s.useRef(0),Se=s.useRef(null),{start:X,stop:ue,settleTo:ke}=py({audioRef:g,fillRef:y,waveProgressRef:Se,sourcesRef:fe,currentIndexRef:ve}),{onReadyChange:Le,waitForReady:Fe,markNotReady:De}=ay({showSoundWaveForm:c,showNoiseWaveForm:u}),Pe=s.useRef(null),Me=s.useRef(o),Je=s.useRef(r),ze=s.useRef(null),Ve=s.useRef(!1),[ge,He]=s.useState(!1),Be=s.useCallback(I=>{Ve.current=I,He(I)},[]),Ee=s.useRef(null),{activeNoiseUrl:Ne,noiseSettingsRef:nt,fadeInNoise:ft,fadeOutNoise:tt}=Yb({noisePlayer:h,audioRef:g,playbackStateRef:E}),{startTTS:rt,stopTTS:Ke}=Zb({ttsText:i,playbackRate:re,mainVolume:Z,fillRef:y,waveProgressRef:Se,setProgress:M,setPlaybackState:O,setStateLocal:Q,fadeInNoise:ft,fadeOutNoise:tt,noiseSettingsRef:nt,onDoneRef:Je,handleEndRef:Ee}),je=Array.isArray(n)?n.filter(Boolean):n?[n]:[],Qe=(!je||je.length===0)&&!!i,ut=Array.isArray(Y)&&Y.length>0?Y:Array.isArray(T)&&T.length>0?T:null,qe=Math.max(Array.isArray(ut)?ut.length:0,je.length),Ye=s.useRef(!0);s.useEffect(()=>(Ye.current=!0,()=>{Ye.current=!1}),[]);const Ie=s.useRef(0),Ze=()=>{Ie.current+=1,_.current+=1},ot=s.useCallback(async(I,$=3,G=50)=>{const le=Ie.current;for(let de=0;de<$;de++){if(!Ye.current||le!==Ie.current)return!1;try{return await I.play(),!0}catch(ce){if((ce instanceof Error||typeof ce=="object"&&ce&&"name"in ce?ce.name:void 0)==="AbortError"){if(le!==Ie.current)return!1;await new Promise(Te=>setTimeout(Te,G));continue}try{xe(d("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}return!1}}try{xe(d("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}return!1},[d]),Ft=s.useCallback(()=>{const I=g.current;if(!I)return;const $=()=>{O("playing"),Q("playMode"),z(!0),X();try{Qa(),fa(I).then(ce=>{if(Ye.current)try{m.current?.("main",ce)}catch{}})}catch{}const de=nt.current;de?.enabled&&(de?.volume??0)>0&&ft(de.volume)},G=()=>{ly({ended:!!I?.ended,completedByEnd:Ve.current})||(O("paused"),ue(),tt())},le=()=>{try{const de=fe.current,ce=iy(de,ve.current);if(ce!==null){ve.current=ce,L(ce),z(!0);const Te=de?.[ce]&&de[ce].src;if(Te&&I){I.src=Te,I.load(),ot(I).catch(()=>{});return}}}catch{}O("stopped"),M(1);try{if(I)try{I.currentTime=0}catch{}}catch{}ue(),z(!1),tt();try{!Me.current&&Ee.current&&Ee.current()}catch{}};return I.addEventListener("play",$),I.addEventListener("pause",G),I.addEventListener("ended",le),()=>{try{I.removeEventListener("play",$),I.removeEventListener("pause",G),I.removeEventListener("ended",le),ue()}catch{}}},[ft,tt,ot,nt,X,ue]);s.useEffect(()=>Ft(),[Ft]),s.useEffect(()=>{Me.current=o},[o]),s.useEffect(()=>{Je.current=r},[r]),s.useEffect(()=>{if(o||H!=="active")return;const I=b.current;if(!I)return;let $=null;const G=requestAnimationFrame(()=>{try{const le=I.getTotalLength();if(!le)return;const de=le*.2;I.style.strokeDasharray=`${le-de} ${de}`;const ce="triFlow_"+Math.random().toString(36).slice(2);$=document.createElement("style"),$.textContent=`@keyframes ${ce}{from{stroke-dashoffset:0}to{stroke-dashoffset:-${le}}}`,document.head.appendChild($),I.style.animation=`${ce} 2.4s linear infinite`}catch{}});return()=>{cancelAnimationFrame(G),$?.remove()}},[H,o]),s.useEffect(()=>{fe.current=Y},[Y]),s.useEffect(()=>{ve.current=F},[F]),s.useEffect(()=>{const I=C.current,$=v.current;if(!I||!$)return;let G=null;const le=32,de=60,ce=()=>{try{const Re=Array.from(I.querySelectorAll(":scope > .button"));let Ge=0;Re.forEach(Wt=>{if(Wt===$)return;const Ra=Wt.getBoundingClientRect();Ge+=Ra.width});const pt=I.getBoundingClientRect().width,lt=Math.max(0,Math.floor(pt-Ge-8)),Ue=qe;if(!Ue||lt<=0){Array.from($.children).forEach(Wt=>{try{Wt.style.width=""}catch{}});return}let zt=Math.floor(lt/Ue);zt>de&&(zt=de),zt<le&&(zt=Math.max(le,Math.floor(lt/Ue))),Array.from($.querySelectorAll(".button")).forEach(Wt=>{try{Wt.style.width=`${zt}px`}catch{}})}catch{}},Te=requestAnimationFrame(ce);try{G=new ResizeObserver(()=>{requestAnimationFrame(ce)}),G.observe(I),G.observe($),window.addEventListener("resize",ce)}catch{}return()=>{try{cancelAnimationFrame(Te)}catch{}try{G&&(G.disconnect(),G=null)}catch{}try{window.removeEventListener("resize",ce)}catch{}}},[Y,T,qe]),s.useEffect(()=>()=>{try{Pe.current&&(clearTimeout(Pe.current),Pe.current=null),ze.current&&(clearTimeout(ze.current),ze.current=null)}catch{}},[]);const dt=(I,$)=>{V(I),ne($),De(),P(cy(I)),fe.current=I},At=async(I,$)=>{Be(!1),x.current=!1,I.src=$,I.load(),await Vl(I),await Fe(),S(!1),await ot(I),Q("playMode"),L(0),z(!0)},dn=async(I,$=!1)=>{const G=g.current;S(!0),W("measuring_duration");try{const le=await Wr(I,{timeoutMs:1e4,rejectOnError:!0});dt([{src:I,objectUrl:null,duration:le}],le),W("ready"),$&&G&&await At(G,I)}finally{x.current=!1,S(!1)}},Qt=async(I,$=!1)=>{const G=g.current;S(!0),W("measuring_duration");try{const le=await Promise.all(I.map(ce=>Wr(ce,{timeoutMs:1e4})));if(!Ye.current)return;const de=I.map((ce,Te)=>({src:ce,objectUrl:null,duration:le[Te]||0}));dt(de,uy(de)),W("ready"),$&&G&&de.length>0&&await At(G,de[0].src)}finally{x.current=!1,S(!1)}},bt=async(I=!1,$=!0)=>{const G=g.current,le=n?Array.isArray(n)?n:[n]:[];if(!le||le.length===0||!le.some(Boolean))return!1;if(x.current)return null;x.current=!0,$&&S(!0),W("resolving");try{const de=dy(n,a,ts),ce=[];let Te=0;for(const Re of de){let Ge=Re.src??null,pt=null;if(!Ge&&Re.resolvedPath){try{W("getting_signed_url"),Ge=await ns(Re.resolvedPath)}catch{Ge=null}if(!Ye.current)return!1;if(!Ge)try{W("downloading");const Ue=await as(Re.resolvedPath);if(!Ye.current)return!1;if(Ue){const zt=Ue instanceof Blob?Ue:new Blob([Ue]);pt=f.track(URL.createObjectURL(zt)),Ge=pt}}catch{W("error");try{xe(d("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4.")),Q("active")}catch{}}}if(!Ge)continue;let lt=0;try{W("measuring_duration"),lt=await Wr(Ge,{timeoutMs:3e3})}catch{lt=0}if(!Ye.current){if(pt)try{URL.revokeObjectURL(pt)}catch{}for(const Ue of ce)if(Ue.objectUrl)try{URL.revokeObjectURL(Ue.objectUrl)}catch{}return!1}Te+=lt||0,ce.push({...Re,src:Ge,objectUrl:pt,duration:lt})}if(dt(ce,Te),ce.length>0&&I&&G){const Re=ce[0];Be(!1);try{f.keepOnly(ce.map(Ge=>Ge.objectUrl))}catch{}if(W("ready"),x.current=!1,Re.src&&G)try{G.src=Re.src,G.load(),await Vl(G),await Fe(),$&&S(!1),G&&await ot(G)}catch{$&&S(!1)}else $&&S(!1);Q("playMode"),L(0),z(!0)}return ce.length>0}finally{x.current=!1,$&&S(!1),W(de=>de==="ready"?"ready":"idle")}},yt=async()=>{const I=g.current;if(!(!I&&!Qe)){if(Qe){const $=window.speechSynthesis;if(H==="active"){const G=Za(),le=Array.isArray(i)?i.filter(Boolean):i?[i]:[];if(G&&le.length>0){Q("load"),S(!0),W("resolving"),x.current=!0;try{const de=await Promise.all(le.map(ce=>Promise.resolve(G(ce))));de.length>1?await Qt(de,!0):await dn(de[0],!0)}catch{x.current=!1,S(!1),Q("active"),rt(le[0]||void 0)}return}rt(le[0]||void 0);return}if(H==="playMode"){if(I){if(I.paused){if(Ve.current){await Tt();return}await ot(I),O("playing")}else Ze(),I.pause(),O("paused");return}try{if($&&$.paused)try{$.resume(),O("playing")}catch{}else try{$.pause(),O("paused")}catch{}}catch{}}return}if(H==="active"){if(o&&Array.isArray(fe.current)&&fe.current.length>0){const G=fe.current[0];try{if(G.src&&I)try{I.src=G.src,I.load(),I&&await ot(I)}catch{}Q("playMode"),L(0),z(!0);return}catch{}}Q("load");let $;try{$=await bt(!0)}catch{$=!1}if($===!1&&Ye.current){try{xe(d("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}Q("active")}return}if(H!=="load"&&(H==="playMode"||H==="active"))try{if(I&&I.paused){if(Ve.current){await Tt();return}I&&await ot(I),O("playing")}else I&&(Ze(),I.pause(),O("paused"))}catch($){($ instanceof Error||typeof $=="object"&&$&&"name"in $)&&$.name}}},Tt=async()=>{const I=g.current;if(I)try{const $=fe.current;if(Array.isArray($)&&$.length>1){await Ot(0);return}Be(!1);try{I.currentTime=0}catch{}I&&await ot(I),O("playing"),Q("playMode")}catch{}},Rt=()=>{if(Ze(),Qe){Ke();return}const I=g.current;try{if(I){try{I.pause()}catch{}try{I.currentTime=0}catch{}}}catch{}tt(),O("stopped"),Q("active"),M(0),z(!1)},en=async(I,{sameSegment:$=!1}={})=>{const G=++_.current,le=g.current,de=fe.current?.[I]?.src;try{if(Be(!1),L(I),z(!0),ve.current=I,!de||!le||($||De(),le.src=de,le.load(),$||await Fe(),G!==_.current)||(await ot(le),G!==_.current))return;O("playing"),Q("playMode")}catch{}},_n=async()=>{const I=fe.current,$=ve.current||0;if(!I||$<=0){await Tt();return}await en($-1)},Xe=async()=>{const I=fe.current,$=ve.current||0;if(!I||$>=I.length-1){Rt();return}await en($+1)},Et=()=>{if(Ve.current)return;const I=200,$=340;Be(!0),Ze();try{M(1)}catch{}ke(1);try{J("hold")}catch{}try{const G=g.current,le=Qe&&!!G?.src;if(!Qe||le){if(G){G.pause();try{G.currentTime=0}catch{}}}else Ke();tt()}catch{}try{O("stopped")}catch{}if(z(!1),!Me.current)try{ze.current&&(clearTimeout(ze.current),ze.current=null),ze.current=setTimeout(()=>{try{J("out")}catch{}ze.current=setTimeout(()=>{try{typeof Je.current=="function"&&Je.current(!0)}catch{}try{J("idle")}catch{}ze.current=null},$)},I)}catch{}};s.useEffect(()=>{Ee.current=Et});const vt=s.useCallback(()=>xe(""),[]),Ot=async I=>{(fe.current||[])[I]&&await en(I,{sameSegment:I===ve.current})},Mt=B==="playing",Yt=s.useMemo(()=>{if(!T||T.length<=1)return T;const I=T[F];return I?[I]:T},[T,F]),tn=o===!0;s.useEffect(()=>{try{const I=g.current;I&&typeof I.playbackRate=="number"&&(I.playbackRate=re||1)}catch{}},[re]);const nn=s.useRef({raf:null,timer:null});s.useEffect(()=>{const I=g.current;if(!I)return;const $=Math.max(0,Math.min(1,Z)),G=nn.current,le=()=>{G.raf!==null&&(cancelAnimationFrame(G.raf),G.raf=null),G.timer!==null&&(clearTimeout(G.timer),G.timer=null)};le();const de=Ca(I);if(I.paused||Math.abs(de-$)<.001||typeof requestAnimationFrame!="function"){try{fn(I,$)}catch{}return}const ce=performance.now(),Te=()=>{const Re=Math.min(1,(performance.now()-ce)/150);try{fn(I,de+($-de)*Re)}catch{}G.raf=Re<1?requestAnimationFrame(Te):null};return G.raf=requestAnimationFrame(Te),G.timer=setTimeout(()=>{le();try{fn(I,$)}catch{}},200),le},[Z]);const Pt=ie==="hold",Vt=ie==="out",pn=H==="playMode"&&!A&&!ge||Pt||Vt,xt=B!=="stopped"||Pt||Vt,Ht=B==="paused",Zt=Math.max(0,Math.min(100,(ee||0)*100)),Nt=ye("audio-player__fill",pn?"is-visible":"",xt?"is-expanded":"",Ht?"is-paused":"",Vt?"is-out":"");return t.jsxs("div",{className:`audio-player ${tn?"is-disabled":""}${l?` ${l}`:""}`,role:"group","aria-label":typeof p=="string"?p:void 0,children:[t.jsxs("div",{className:`audio-player__panel ${Mt?"is-playing":""} ${A?"is-loading":""} ${H!=="default"?"is-revealed":""}`,children:[A?t.jsxs("div",{className:"audio-player__loading",role:"status","aria-live":"polite",children:[t.jsx("span",{className:"audio-player__loading-spinner","aria-hidden":"true"}),t.jsx("span",{className:"audio-player__loading-text",children:d(`training.audioStatus.${q}`,{defaultValue:ty[q]})})]}):null,H==="active"?t.jsx("button",{className:"audio-player__button",type:"button",onClick:I=>{te.current=document.activeElement===I.currentTarget,j(),yt()},"aria-label":typeof p=="string"?p:d("training.listen","\uB4E3\uAE30"),onMouseEnter:k,onMouseLeave:j,onFocus:k,onBlur:j,children:t.jsx("span",{ref:N,className:"audio-player__button-triangle-wrap",children:t.jsx("svg",{className:"audio-player__button-triangle",viewBox:"0 0 24 24","aria-hidden":"true",children:t.jsx("path",{ref:b,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,w&&t.jsx(gn,{anchorRect:w,text:typeof p=="string"&&p?p:d("training.listenLabel","\uBB38\uC7A5 \uB4E3\uAE30"),offset:8}),t.jsxs("div",{className:`audio-player__play ${H==="playMode"||Mt?"is-visible":""}`,children:[t.jsxs("div",{ref:C,className:"audio-player__buttons",children:[t.jsx(oe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"skip-back",onClick:_n,ariaLabel:d("training.prev","\uC774\uC804"),width:"60px",variant:"transparent-white","aria-hidden":"true",tabIndex:-1,disabled:H!=="playMode"}),t.jsx(oe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:Mt?"pause":"play",onClick:yt,ariaLabel:d("common.playPause","\uC7AC\uC0DD / \uBA48\uCDA4"),width:"60px",variant:"transparent-white",disabled:H!=="playMode"}),t.jsx(oe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"square",onClick:Rt,ariaLabel:d("training.stop","\uC815\uC9C0"),width:"60px",variant:"transparent-white","aria-hidden":"true",tabIndex:-1,disabled:H!=="playMode"}),qe>1?t.jsx("div",{ref:v,className:"audio-player__source-buttons",children:Array.from({length:qe}).map((I,$)=>t.jsx(oe,{htmlType:"button",size:32,type:"dot",shape:"pill",useBorder:!1,label:String($+1),onClick:()=>{try{Ot($)}catch{}},ariaLabel:d("training.sourcePlay",{n:$+1}),variant:"transparent-white",selected:R&&F===$,disabled:H!=="playMode"||!(Array.isArray(Y)&&Y[$]),showTooltipInfo:!0},$))}):null,!Array.isArray(Y)||Y.length<=1?t.jsx(oe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"repeat",onClick:Tt,ariaLabel:d("common.replay","\uB2E4\uC2DC\uB4E3\uAE30"),width:"60px",variant:"transparent-white",disabled:H!=="playMode"}):null,t.jsx(oe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"skip-forward",onClick:Xe,ariaLabel:d("training.next","\uB2E4\uC74C"),width:"60px",variant:"transparent-white","aria-hidden":!0,tabIndex:-1,disabled:H!=="playMode"}),t.jsx(oe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"check",onClick:Et,ariaLabel:d("common.done","\uC644\uB8CC"),width:"60px",variant:"transparent-white",disabled:H!=="playMode"})]}),t.jsxs("div",{className:"audio-player__slider",children:[t.jsx("div",{className:Nt,ref:y,style:{left:`${Zt}%`},"aria-hidden":"true"}),(c||u)&&t.jsx(ey,{segments:Yt,progress:ee,totalDuration:ae,onSegmentClick:Ot,waveProgressRef:Se,showSoundWaveForm:c,noiseSrc:u&&h?.settings.enabled&&_e>0?Ne:null,noiseRatio:h?ca(h.settings):0,noiseSpeed:h?.settings.speed??1,mainVolume:pe,onReadyChange:Le})]})]}),t.jsx("audio",{ref:g,crossOrigin:"anonymous",preload:"auto"})]}),!c&&t.jsxs("p",{className:"audio-player__no-waveform caption-1",children:[t.jsx(Oe,{icon:"triangle-alert",size:14}),d("training.noSoundWaveform","\uC18C\uB9AC \uBE44\uAD50 \uBB38\uC81C\uB294 \uC6E8\uC774\uBE0C\uD3FC\uC744 \uD45C\uD604\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.")]}),t.jsx(Fn,{message:be,position:Ce,onClose:vt})]})}function Ea(e){const{t:n}=he.useTranslation(),{text:a,label:r,anchorRect:o=null,onClose:i,closeOnOutsideClick:l=!0,isMobilePopup:c=!1}=e||{},[u,d]=s.useState(()=>{try{return localStorage.getItem("tooltip-theme")||"light"}catch{return"light"}});s.useEffect(()=>{try{localStorage.setItem("tooltip-theme",u)}catch{}},[u]);const{increase:p,decrease:h,canIncrease:m,canDecrease:g,fontSize:y,lineHeight:C}=ti({storageKey:"tooltip-fontScale"}),f=s.useCallback(()=>d(N=>N==="dark"?"light":"dark"),[]),v=s.useCallback(N=>{try{N.stopPropagation()}catch{}try{typeof i=="function"&&i()}catch{}},[i]),x=Array.isArray(a)?a:typeof a>"u"||a===null?[]:[a],_={fontSize:`${y}px`,lineHeight:`${C}px`,"--tt-line-height":`${C}px`,"--tt-marker-size":"28px"},b=t.jsxs("div",{className:`tooltip-textbox__root ${u==="dark"?"is-dark":""}`,children:[t.jsxs("div",{className:"tooltip-textbox__box",children:[r&&t.jsx("div",{className:"tooltip-textbox__label body-2b",children:r}),t.jsx("div",{className:"tooltip-textbox__text body-1",style:_,children:x.map((N,w)=>t.jsxs("div",{className:"tooltip-textbox__line",children:[x.length>1?t.jsx("div",{className:"tooltip-textbox__marker",children:t.jsx("span",{className:"tooltip-textbox__line-number button-1",children:w+1})}):null,t.jsx("span",{className:"tooltip-textbox__line-text",children:N})]},w))})]}),t.jsxs("div",{className:"tooltip-textbox__buttons",children:[t.jsx(oe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"minus",onClick:h,ariaLabel:n("training.fontSizeDecrease","\uAE00\uC790 \uD06C\uAE30 \uAC10\uC18C"),variant:u==="dark"?"transparent-white":"transparent-gray",disabled:!g}),t.jsx(oe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"plus",onClick:p,ariaLabel:n("training.fontSizeIncrease","\uAE00\uC790 \uD06C\uAE30 \uC99D\uAC00"),variant:u==="dark"?"transparent-white":"transparent-gray",disabled:!m}),t.jsx(oe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:u==="dark"?"moon":"sun-medium",onClick:f,ariaLabel:n("training.toggleBackground","\uBC30\uACBD \uC804\uD658"),variant:u==="dark"?"transparent-white":"transparent-gray"}),t.jsx(oe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"x",onClick:v,ariaLabel:n("common.close","\uB2EB\uAE30"),variant:u==="dark"?"transparent-white":"transparent-gray"})]})]});return o?t.jsx(Cn,{anchorRect:o,className:`tooltip-textbox ${u==="dark"?"is-dark":""}`,onClose:i,closeOnOutsideClick:l,isMobilePopup:c,ariaLabel:r||n("tooltip.textbox","\uBCF8\uBB38"),children:b}):t.jsx("div",{className:`tooltip-textbox ${u==="dark"?"is-dark":""}`,children:b})}function Hl({state:e="disabled"}){const{t:n}=he.useTranslation();return t.jsxs("div",{className:`ts-bullet ts-bullet--${e}`,"aria-hidden":!0,children:[t.jsx("div",{className:"bullet__dot",children:t.jsx(Oe,{icon:"chevron-right",label:n("training.next","\uB2E4\uC74C"),className:"bullet__icon",imgClassName:"bullet__icon-img",maskClassName:"bullet__icon-mask",svgClassName:"bullet__icon-svg",wrapperStyle:{},size:20})}),t.jsx("div",{className:"ts-bullet__line"})]})}function zl({title:e,children:n,className:a="",state:r="disabled",usePreviewTextBtn:o=!1,onPreviewTextBtn:i,previewText:l=null,useFaded:c,usePlayAllBtn:u=!1,onPlayAll:d,playAllActive:p=!1}){const{t:h}=he.useTranslation(),m=Xt("(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(),C=s.useRef(null),[f,v]=s.useState(!1),[x,_]=s.useState(null),[b,N]=s.useState(null),w=s.useRef(i);s.useEffect(()=>{w.current=i});const k=s.useMemo(()=>l==null?"":typeof l=="string"||typeof l=="number"?String(l):Array.isArray(l)&&l.every(S=>typeof S=="string"||typeof S=="number")?l.join(""):"",[l]),j=s.useCallback(()=>{v(!1),_(null),N(null)},[]);s.useEffect(()=>{if(!f)return;let S;try{typeof w.current=="function"&&(S=w.current())}catch{}if(S===!1){j();return}N(typeof S<"u"&&S!==null?S:null)},[k]);const A=s.useCallback(()=>{let S;try{typeof i=="function"&&(S=i())}catch{}if(S!==!1){if(N(typeof S<"u"&&S!==null?S:l),!C.current){v(q=>!q);return}if(f)v(!1),_(null),N(null);else{const q=C.current.getBoundingClientRect();_(q),v(!0)}}},[i,l,f]);return t.jsxs("div",{className:y,children:[t.jsx("p",{className:g,children:t.jsx("span",{className:"training-step__title-text",children:e??n})}),o||u?t.jsxs("div",{className:"title-controls",children:[t.jsxs("div",{className:"title-buttons",children:[u&&t.jsx(oe,{htmlType:"button",size:32,type:m?"dot":"bar",icon:"play-circle",label:m?void 0:h("training.playAll","\uBAA8\uB450 \uB4E3\uAE30"),ariaLabel:h("training.playAll","\uBAA8\uB450 \uB4E3\uAE30"),selected:p,onClick:d,variant:r==="disabled"?"disabled":"default",disabled:r==="disabled"||p,onDisabledClick:p&&r!=="disabled"?()=>{}:void 0}),o&&t.jsx("div",{ref:C,children:t.jsx(oe,{htmlType:"button",size:32,type:m?"dot":"bar",icon:"eye",label:m?void 0:h("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),ariaLabel:h("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),selected:f,onClick:A,variant:r==="disabled"?"disabled":"default",disabled:!l&&typeof i!="function"})})]}),f&&t.jsx(Ea,{text:b??l,label:h("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),anchorRect:x,onClose:j,closeOnOutsideClick:!1,isMobilePopup:!0})]}):null]})}function Ur(e,n){return typeof n!="number"||typeof e!="number"?"disabled":e<n?"done":e===n?"active":"disabled"}function Mn({index:e,stepIndex:n,isLast:a=!1,title:r="",titleProps:o={},children:i,className:l="",onDone:c=void 0,useTitleFaded:u=void 0}){const{t:d}=he.useTranslation(),[p,h]=s.useState(()=>Ur(e,n));s.useEffect(()=>{const N=Ur(e,n);if(N!==p){const w=setTimeout(()=>h(N),0);return()=>clearTimeout(w)}},[e,n,p]);const m=s.useCallback((...N)=>{Ur(e,n)==="done"||p==="done"||typeof c=="function"&&c(...N)},[e,n,p,c]),[g,y]=s.useState(!1),[C,f]=s.useState({text:"",label:"\uBB38\uC7A5 \uB4E3\uAE30",anchorRect:null,backdrop:!1,alignX:null,alignY:null}),v=s.useCallback(N=>{if(!N)return null;try{const w=N;if(typeof N=="object"&&(w.currentTarget||w.target)&&(w.nativeEvent||w.type)){const A=w.currentTarget??w.target;if(A&&typeof A.getBoundingClientRect=="function")return A.getBoundingClientRect()}if(N instanceof DOMRect)return N;const k=N;if(k&&typeof k.getBoundingClientRect=="function")return k.getBoundingClientRect();const j=N?.current;return j&&typeof j.getBoundingClientRect=="function"?j.getBoundingClientRect():null}catch{return null}},[]),x=s.useCallback((N,{text:w="",label:k="\uBB38\uC7A5 \uB4E3\uAE30",backdrop:j=!1,alignX:A="center",alignY:S="top"}={})=>{const q=v(N);f({text:w,label:k,anchorRect:q,backdrop:j,alignX:A,alignY:S}),y(!0)},[v]),_=s.useCallback(()=>{y(!1),f(N=>({...N,anchorRect:null}))},[]),b=s.Children.map(i,N=>{if(s.isValidElement(N)){const w=N;if(typeof w.type=="string")return w;const k=w.props??{},j=typeof k.onDone=="function"?k.onDone:m,A=typeof k.disabled=="boolean";let S=p==="disabled";return A&&(S=!!k.disabled),s.cloneElement(w,{onDone:j,disabled:S,showTooltip:x,hideTooltip:_})}return N});return t.jsxs("div",{className:`training-step training-step--${p} ${a?"training-step--last":""} ${l}`,"aria-current":p==="active",children:[t.jsx(Hl,{state:p}),t.jsxs("div",{className:"training-step__content",children:[t.jsx(zl,{state:p,title:r,...o,useFaded:u}),b]}),g?t.jsx(Cn,{anchorRect:C.anchorRect,backdrop:C.backdrop,onClose:_,ariaLabel:d("tooltip.textbox","\uBCF8\uBB38"),children:t.jsx(Ea,{text:C.text,onClose:_})}):null]})}function Wl({context:e,state:n="disabled",theme:a="light"}){const{t:r}=he.useTranslation(),[o,i]=s.useState("disabled"),[l,c]=s.useState(()=>{try{return localStorage.getItem("tooltip-theme")||a}catch{return a}});s.useEffect(()=>{try{localStorage.setItem("tooltip-theme",l)}catch{}},[l]);const u=()=>c(B=>B==="dark"?"light":"dark"),{increase:d,decrease:p,canIncrease:h,canDecrease:m,fontSize:g,lineHeight:y}=ti({storageKey:"textbox_fontScale"}),[C,f]=s.useState(""),v=s.useRef(null),x=s.useRef(!1),_=s.useCallback(()=>{x.current=!!v.current&&v.current.contains(document.activeElement),i("active")},[]),b=s.useCallback(()=>f(""),[]),N=B=>{try{f(B)}catch{}},w=typeof navigator<"u"&&/Mobi|Android/i.test(navigator.userAgent||"");s.useEffect(()=>{if(n!=="disabled"){const B=setTimeout(()=>i(n),0);return()=>clearTimeout(B)}},[n]);const k=s.useMemo(()=>e&&typeof e=="object"?String(e.sentence??e.text??""):typeof e=="string"?e:"",[e]),[j,A]=s.useState(k);j!==k&&(A(k),i("disabled"));const S=n==="disabled"?o:n,q=S==="disabled"?"training-text-box--disabled":S==="active"?"training-text-box--active":S==="done"?"training-text-box--done":"",W=s.useMemo(()=>({fontSize:`${g}px`,lineHeight:`${y}px`}),[g,y]);return s.useEffect(()=>{if(S==="disabled"||!x.current)return;x.current=!1;const B=document.activeElement;B&&B!==document.body||v.current?.querySelector(".training-text-box__buttons button")?.focus()},[S]),t.jsxs("div",{ref:v,className:`training-text-box ${q} ${S!=="disabled"&&l==="dark"?"is-dark":""}`,children:[S==="disabled"&&t.jsx("div",{className:"training-text-box__preview",children:t.jsx(oe,{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})}),t.jsx("div",{className:"training-text-box__area","aria-hidden":S==="disabled",children:t.jsx("span",{className:"training-text-box__inner h3",style:W,children:k})}),S!=="disabled"&&t.jsxs("div",{className:"training-text-box__buttons","aria-hidden":S==="disabled",children:[t.jsx(oe,{htmlType:"button",size:32,type:"dot",onClick:p,onDisabledClick:()=>N(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:!m,useBorder:!1,showTooltipInfo:!0,...!w&&{width:"60px"}}),t.jsx(oe,{htmlType:"button",size:32,type:"dot",onClick:d,onDisabledClick:()=>N(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:!h,useBorder:!1,showTooltipInfo:!0,...!w&&{width:"60px"}}),t.jsx(oe,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:l==="dark"?"moon":"sun-medium",onClick:u,ariaLabel:r("training.toggleBackground","\uBC30\uACBD \uC804\uD658"),variant:l==="dark"?"transparent-white":"transparent-gray"})]}),t.jsx(Fn,{message:C,position:"top",onClose:b})]})}function Gr({index:e,stepIndex:n,isLast:a=!1,title:r,useTitleFaded:o,onDone:i,onChange:l,answer:c,wrongAnswers:u,choices:d,multiSelect:p=!1,correctCount:h=0,useDisabledCovered:m=!1,choiceIcons:g,shuffleChoices:y=!0}){const{t:C}=he.useTranslation(),f=r??C("training.selectConfirm","\uBB38\uC81C\uB97C \uBCF4\uACE0 \uD574\uB2F9\uD558\uB294 \uB0B4\uC6A9\uC744 \uC120\uD0DD\uD558\uC138\uC694."),v=typeof e=="number"?e:-1,x=typeof n!="number"?"disabled":v<n?"done":v===n?"active":"disabled",_=Array.isArray(d)&&d.length?d:typeof c<"u"?[c].concat(Array.isArray(u)?u:[]):void 0,b=u?u.join("||"):"",N=d?d.join("||"):"",[w,k]=s.useState(()=>Array.isArray(_)?y?Qn(_):_.slice():void 0);s.useEffect(()=>{Array.isArray(_)&&_.length?k(y?Qn(_):_.slice()):k(void 0)},[c,b,N,y]);const[j,A]=s.useState(null),[S,q]=s.useState(()=>new Set);s.useEffect(()=>{A(null),q(new Set)},[N,c,b]);const W=s.useRef(void 0);s.useEffect(()=>{const E=W.current;typeof E=="number"&&typeof n=="number"&&typeof e=="number"&&E>=e&&n<e&&(A(null),q(new Set)),W.current=n},[n,e]);const B=s.useCallback(E=>{if(x!=="active")return;const ee=w?.[E];if(ee==null)return;const M=ee,H=x==="active"||x==="done";if(p){const Q=new Set(S),te=Q.has(M);te?Q.delete(M):Q.add(M),q(Q),typeof l=="function"&&l({selectedValues:[...Q],__ts:Date.now()}),H&&(typeof h=="number"&&h>0?Q.size>=h:!te)&&typeof i=="function"&&x==="active"&&i({selectedValues:[...Q],__ts:Date.now()})}else A(M),typeof l=="function"&&l({selectedIndex:E,selectedValue:M,__ts:Date.now()}),H&&typeof i=="function"&&x==="active"&&i({selectedIndex:E,selectedValue:M,__ts:Date.now()})},[w,x,p,l,i,h,S]),O=`training-step__buttons${Array.isArray(w)&&w.length>3?" training-step__buttons--wrap-3":""}`;return t.jsx(Mn,{index:e,stepIndex:n,isLast:a,title:f,useTitleFaded:o,children:t.jsx("div",{className:O,children:Array.isArray(w)&&w.length>0?w.map((E,ee)=>t.jsx(oe,{htmlType:"button",size:56,type:"bar",onClick:()=>B(ee),ariaLabel:String(E),label:E,useLabel:!0,icon:g?g[String(E)]:void 0,variant:"default",disabled:x==="disabled",selected:p?S.has(E):j===E,useDisabledCovered:m,minWidth:0},String(E))):null})})}function Kr({index:e,stepIndex:n,isLast:a=!1,title:r,onDone:o,onChange:i,context:l,demoSelected:c}){const{t:u}=he.useTranslation(),d=r??u("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,h=typeof n!="number"?"disabled":p<n?"done":p===n?"active":"disabled",m=l&&typeof l=="object"?l.sentence||"":typeof l=="string"?l:"",g=l&&typeof l=="object"?l.choices:void 0,[y,C]=s.useState(c??null),f=`${String(m)}\0${JSON.stringify(g??null)}`,[v,x]=s.useState(f);v!==f&&(x(f),c==null&&C(null));const[_,b]=s.useState(c);_!==c&&(b(c),C(c??null));const N=s.useRef(void 0);s.useEffect(()=>{const A=N.current;typeof A=="number"&&typeof n=="number"&&typeof e=="number"&&A>=e&&n<e&&c==null&&C(null),N.current=n},[n,e,c]);const w=s.useCallback(A=>{const S=typeof A=="object"&&A!==null?Object.assign({},A,{__ts:Date.now()}):{value:A,__ts:Date.now()};typeof i=="function"&&i(S),h==="active"&&typeof o=="function"&&o(S)},[i,h,o]),k=s.useCallback(()=>{h==="active"&&(C(!1),w(!1))},[w,h]),j=s.useCallback(()=>{h==="active"&&(C(!0),w(!0))},[w,h]);return t.jsxs(Mn,{index:e,stepIndex:n,isLast:a,title:d,onDone:o,useTitleFaded:!1,children:[t.jsx(Wl,{context:l,state:h}),t.jsx("div",{className:"training-step__buttons",children:Array.isArray(g)&&g.length>0?g.slice(0,6).map((A,S)=>t.jsx(oe,{htmlType:"button",size:56,type:"bar",onClick:()=>{h==="active"&&(C(S),w&&w(S))},disabled:h==="disabled",ariaLabel:String(A),label:A,variant:h,selected:y===S},S)):t.jsxs(t.Fragment,{children:[t.jsx(oe,{htmlType:"button",size:56,type:"bar",onClick:k,disabled:h==="disabled",icon:"x",ariaLabel:u("training.notHeard","\uC548 \uB4E4\uB838\uC5B4\uC694."),label:u("training.notHeard","\uC548 \uB4E4\uB838\uC5B4\uC694."),variant:"default",selected:y===!1}),t.jsx(oe,{htmlType:"button",size:56,type:"bar",onClick:j,disabled:h==="disabled",icon:"circle",ariaLabel:u("training.heardWell","\uC798 \uB4E4\uB838\uC5B4\uC694."),label:u("training.heardWell","\uC798 \uB4E4\uB838\uC5B4\uC694."),variant:"default",selected:y===!0})]})})]})}function Yr({index:e,stepIndex:n,isLast:a=!1,title:r,onDone:o,btnLabel:i,soundSrc:l,bucketPath:c,usePreviewTextBtn:u,previewText:d=null,onPreviewTextBtn:p,disabled:h,_pageIndex:m,showSoundWaveForm:g,showNoiseWaveForm:y}){const{t:C}=he.useTranslation(),f=r??C("training.listenTitle","\uC81C\uC2DC\uD558\uB294 \uBB38\uC7A5\uC744 \uB4E4\uC5B4\uC8FC\uC138\uC694."),v=h??(typeof n=="number"&&typeof e=="number"?e>n:!1);return t.jsx(Mn,{index:e,stepIndex:n,isLast:a,title:f,onDone:o,titleProps:{usePreviewTextBtn:u,previewText:d,onPreviewTextBtn:p},children:t.jsx(qr,{soundSrc:l,ttsText:l?null:d??f,bucketPath:c,btnLabel:i||C("training.listenButton","\uBB38\uC7A5 \uB4E3\uAE30"),disabled:v,className:"training-step__listen-sticky",showSoundWaveForm:g,showNoiseWaveForm:y},`audio-p${m??0}-s${e}`)})}const hy=[];function Zr({index:e,stepIndex:n,isLast:a=!1,title:r,onDone:o,onChange:i,context:l=hy}){const{t:c}=he.useTranslation(),u=r??c("training.orderListDefault","\uBB38\uC7A5\uC744 \uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uBC30\uCE58\uD558\uC138\uC694."),d=T=>typeof T=="string"?T:T&&(T.context||T.sentence||T.question||"")||"",[p,h]=s.useState(Array.isArray(l)?l:[]),[m,g]=s.useState(()=>(p||[]).map((T,P)=>({id:P,text:d(T)}))),y=s.useMemo(()=>typeof n!="number"||typeof e!="number"?"disabled":e<n?"done":e===n?"active":"disabled",[n,e]),C=y!=="disabled",f=s.useRef(void 0);s.useEffect(()=>{if(f.current===l)return;f.current=l;const T=Array.isArray(l)?l:[];h(T);const P=(F=>{const L=(F||[]).map((ne,re)=>({id:re,text:d(ne)}));if(L.length<=1)return L;const R=(ne,re)=>{if(ne.length!==re.length)return!1;for(let pe=0;pe<ne.length;pe++)if(ne[pe].text!==re[pe].text)return!1;return!0};let z=Qn(L),ae=0;for(;R(z,L)&&ae<20;)z=Qn(L),ae+=1;return z})(T);g(P);try{if(typeof i=="function"){const F=P.filter((L,R)=>L.text===d(T[R])).length;i({shuffled:P,score:F,total:(T||[]).length,initial:!0,__ts:Date.now()})}if(typeof o=="function"&&y==="active"){const F=P.filter((L,R)=>L.text===d(T[R])).length;o({shuffled:P,score:F,total:(T||[]).length,initial:!0,__ts:Date.now()})}}catch{}},[l]);const v=(T,P)=>{const F=[...m],L=T+P;if(L<0||L>=F.length)return;const R=F[L];F[L]=F[T],F[T]=R,ee(F);try{if(typeof o=="function"&&y==="active"){const z=F.filter((ae,ne)=>ae.text===d(p[ne])).length;o({shuffled:F,score:z,total:(p||[]).length,__ts:Date.now()})}}catch{}},[x,_]=s.useState(null),b=s.useRef(null),N=s.useRef(null),w=s.useRef(null),k=s.useRef(null),j=s.useRef(null),A=s.useRef({x:0,y:0}),S=s.useRef(null),q=s.useRef({dx:0,dy:0}),W=()=>{if(S.current!==null)return;const T=()=>{if(!b.current){S.current=null;return}S.current=requestAnimationFrame(T);const P=A.current,F=q.current||{dx:0,dy:0};b.current&&(b.current.style.transform=`translate3d(${P.x-F.dx}px, ${P.y-F.dy}px, 0)`)};S.current=requestAnimationFrame(T)},B=s.useRef(new Map),O=s.useRef(new Map),E=()=>{const T=new Map;return B.current.forEach((P,F)=>{P&&P.getBoundingClientRect&&T.set(F,P.getBoundingClientRect())}),T},ee=T=>{const P=E();g(T);try{if(typeof i=="function"){const F=T.filter((L,R)=>L.text===d(p[R])).length;i({shuffled:T,score:F,total:(p||[]).length,__ts:Date.now()})}}catch{}requestAnimationFrame(()=>{const F=E();T.forEach(L=>{const R=P.get(L.id),z=F.get(L.id),ae=B.current.get(L.id);if(!ae||!R||!z)return;const ne=R.top-z.top;ne&&(ae.style.transition="none",ae.style.transform=`translateY(${ne}px)`,requestAnimationFrame(()=>{ae.style.transition="transform 420ms cubic-bezier(.22,.9,.39,1)",ae.style.transform="";const re=()=>{ae.style.transition="",ae.removeEventListener("transitionend",re)};ae.addEventListener("transitionend",re)}))})})},M=(T,P)=>{try{try{P.dataTransfer?.setData("text/plain",String(T))}catch{}try{P.dataTransfer&&(P.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),P.dataTransfer?.setDragImage(F,0,0),requestAnimationFrame(()=>{try{document.body.removeChild(F)}catch{}})}catch{}}catch{}_(T);try{const F=m[T],L=document.createElement("div");L.className="order-list__dragging-object order-list__dragging-object--visible",L.textContent=F&&F.text?F.text:"",document.body.appendChild(L),b.current=L;const R=B.current.get(F.id);let z=P.clientX||0,ae=P.clientY||0;try{if(R&&R.getBoundingClientRect){const ie=R.getBoundingClientRect();z=ie.left+ie.width/2,ae=ie.top+ie.height/2}}catch{}const ne=L.getBoundingClientRect(),re=ne.width/2,pe=ne.height/2;q.current={dx:re,dy:pe},L.style.transition="none",A.current={x:z,y:ae},L.style.transform=`translate3d(${z-re}px, ${ae-pe}px, 0)`,requestAnimationFrame(()=>{try{L.style.transition=""}catch{}W()});const _e=ie=>{const J=ie;A.current={x:J.clientX,y:J.clientY},W()};w.current=_e,document.addEventListener("mousemove",_e);const Z=ie=>{const J=ie;A.current={x:J.clientX,y:J.clientY},W()};N.current=Z,document.addEventListener("dragover",Z);try{P.dataTransfer?.setData("text/plain",String(T));try{P.dataTransfer?.setData("application/json",JSON.stringify({idx:T}))}catch{}}catch{}}catch{}},H=(T,P)=>{P.preventDefault();try{P.dataTransfer&&(P.dataTransfer.dropEffect="move")}catch{}try{j.current!==null&&(clearTimeout(j.current),j.current=null);const F=P.currentTarget&&P.currentTarget.closest?P.currentTarget.closest(".order-list__item"):null;if(F&&k.current!==F){if(k.current)try{k.current.classList.remove("drag-over")}catch{}try{F.classList.add("drag-over")}catch{}k.current=F}}catch{}},Q=(T,P)=>{P.preventDefault();const F=P.dataTransfer?.getData("text/plain")||"",L=F?parseInt(F,10):x,R=T;if(typeof L!="number"||isNaN(L)||L===R){_(null),V(),te();return}const z=c0(m,L,R);ee(z),_(null),te();try{if(typeof o=="function"&&y==="active"){const ae=z.filter((ne,re)=>ne.text===d(p[re])).length;o({shuffled:z,score:ae,total:(p||[]).length,__ts:Date.now()})}}catch{}try{requestAnimationFrame(()=>{const ae=document.querySelectorAll(".order-list .order-list__item")[R];if(!ae)return;const ne=ae.querySelector(".order-list__slot")||ae;try{ne.classList.add("pulse"),ne.offsetHeight,ne.classList.add("to-dark");const re=()=>{ne.classList.remove("pulse","to-dark"),ne.removeEventListener("transitionend",re)};ne.addEventListener("transitionend",re)}catch{}})}catch{}V()},te=()=>{if(b.current){try{document.body.removeChild(b.current)}catch{}b.current=null}N.current&&(document.removeEventListener("dragover",N.current),N.current=null),w.current&&(document.removeEventListener("mousemove",w.current),w.current=null),S.current!==null&&(cancelAnimationFrame(S.current),S.current=null)},Y=()=>{_(null),V(),te()};s.useEffect(()=>()=>te(),[]);const V=()=>{try{if(j.current!==null&&(clearTimeout(j.current),j.current=null),k.current){try{k.current.classList.remove("drag-over")}catch{}k.current=null}document.querySelectorAll(".order-list .order-list__item").forEach(T=>T.classList.remove("drag-over"))}catch{}};return s.useEffect(()=>{try{const T=Math.max(1,(m||[]).length);m.forEach((P,F)=>{const L=O.current.get(P.id);if(!L)return;let R=50;T>1&&(R=Math.round(F/(T-1)*100));try{L.style.setProperty("--marker-pos",R+"%")}catch{}})}catch{}},[m]),s.useEffect(()=>()=>{te(),j.current!==null&&(clearTimeout(j.current),j.current=null)},[]),t.jsx(Mn,{index:e,stepIndex:n,isLast:a,title:u,children:t.jsx("div",{className:"order-list",children:m.map((T,P)=>{const F=Math.max(1,(m||[]).length),L=F>1?Math.round(P/(F-1)*100):50;return t.jsx("div",{className:"order-list__item",children:t.jsxs("div",{className:"order-list__slot","data-disabled":y==="disabled","aria-disabled":y==="disabled",children:[y!=="disabled"?t.jsx("div",{className:"order-list__marker caption-1",style:{"--marker-pos":L+"%"},ref:R=>{const z=O.current;R?z.set(T.id,R):z.delete(T.id)},children:t.jsx("span",{className:"order-list__slot-number button-1",children:P+1})}):null,t.jsxs("div",{ref:R=>{const z=B.current;R?z.set(T.id,R):z.delete(T.id)},className:`order-list__draggable ${x===P?"dragging":""}`,"data-disabled":y==="disabled","aria-disabled":y==="disabled",tabIndex:y==="disabled"?-1:0,draggable:C,onDragStart:C?R=>M(P,R):void 0,onDragEnter:C?R=>H(P,R):void 0,onDragOver:C?R=>H(P,R):void 0,onDragLeave:C?()=>{try{j.current!==null&&clearTimeout(j.current),j.current=setTimeout(()=>{try{const R=document.querySelectorAll(".order-list .order-list__item");R&&R[P]&&(R[P].classList.remove("drag-over"),k.current===R[P]&&(k.current=null))}catch{}},80)}catch{}}:void 0,onDrop:C?R=>Q(P,R):void 0,onDragEnd:C?Y:void 0,children:[t.jsx("span",{className:"order-list__item-text body-2",children:T.text}),C?t.jsxs("span",{className:"order-list__item-buttons",children:[t.jsx(oe,{htmlType:"button",size:32,type:"dot",onClick:()=>v(P,-1),ariaLabel:c("training.up"),icon:"chevron-up",variant:"transparent-gray",width:48,useFaded:"true",disabled:P===0,useBorder:!1,useDisabledInvisible:!0}),t.jsx(oe,{htmlType:"button",size:32,type:"dot",onClick:()=>v(P,1),ariaLabel:c("training.down"),icon:"chevron-down",variant:"transparent-gray",width:48,useFaded:"true",disabled:P===m.length-1,useBorder:!1,useDisabledInvisible:!0})]}):null]})]})},T.id)})})})}const my=8e3;function fy(e,n){return new Promise(a=>{let r=!1;const o=()=>{r||(r=!0,a())};e.then(o,o),setTimeout(o,n)})}function ql({index:e,stepIndex:n,isLast:a=!1,title:r,onDone:o,onChange:i,context:l=[],selectable:c=!1,hideLabel:u=!1,hideAudio:d=!1,maxCards:p}){const{t:h}=he.useTranslation(),m=r??h("training.cardInstructions","\uB0B1\uB9D0 \uCE74\uB4DC\uB97C \uBCF4\uACE0 \uC18C\uB9AC\uB97C \uB4E3\uACE0 \uD655\uC778\uD558\uC138\uC694."),g=s.useMemo(()=>Array.isArray(l)?l:l&&l.items||[],[l]),y=p??3,C=(g||[]).slice(0,y);(g||[]).length>y&&console.warn(`TrainingStepCard: ${g.length} items passed but only ${y} shown`);const f=typeof e=="number"?e:-1,v=typeof n!="number"?"disabled":f<n?"done":f===n?"active":"disabled",[x,_]=s.useState(null),b=s.useRef([]),[N,w]=s.useState(!1),k=s.useRef(!0);s.useEffect(()=>(k.current=!0,()=>{k.current=!1}),[]);const j=s.useMemo(()=>g.map(B=>B?.id??B?.word??"").join("|"),[g]);s.useEffect(()=>{_(null)},[j]);const A=s.useRef(void 0);s.useEffect(()=>{const B=A.current;typeof B=="number"&&typeof n=="number"&&typeof e=="number"&&B>=e&&n<e&&_(null),A.current=n},[n,e]);const S=s.useCallback((B,O)=>{if(c)return;const E={item:B,index:O,__ts:Date.now()};try{typeof i=="function"&&i(E)}catch{}if(v==="active"&&typeof o=="function")try{o(E)}catch{}},[c,i,v,o]),q=s.useCallback(async()=>{if(!(N||v==="disabled")){w(!0);try{for(let B=0;B<C.length&&k.current;B++){const O=b.current[B];O&&await fy(O.play(),my)}}finally{w(!1)}}},[N,v,C.length]),W=s.useCallback((B,O)=>{if(v!=="active")return;_(O);const E={selectedValue:B.word||B.title||"",selectedIndex:O,item:B,__ts:Date.now()};try{typeof i=="function"&&i(E)}catch{}if(v==="active"&&typeof o=="function")try{o(E)}catch{}},[i,v,o]);return t.jsx(Mn,{index:e,stepIndex:n,isLast:a,title:m,onDone:o,titleProps:{usePlayAllBtn:!d&&C.length>0,onPlayAll:q,playAllActive:N},children:t.jsx("div",{className:"training-step__cards",children:C.length===0?t.jsx("div",{className:"training-step__empty",children:h("training.noCards","\uCE74\uB4DC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")}):C.map((B,O)=>t.jsx(Sr,{ref:E=>{b.current[O]=E},item:B,disabled:v==="disabled",onPlayDone:()=>S(B,O),selectable:c,selected:c&&x===O,onSelect:c?()=>W(B,O):void 0,flipDelay:O*120,hideLabel:u,hideAudio:d},B&&B.id||O))})})}const Cy=160,gy={\uBCF4\uCCAD\uAE30:"hearingAid",\uC778\uACF5\uC640\uC6B0:"cochlearImplant"};function by(e,n){const a=gy[e];return a?n(`device.type.${a}`,{defaultValue:e}):e}const Ul=()=>{};function vn(e){const n=s.useId();if(!("variant"in e)){const{label:f,sub:v,onClick:x,children:_,align:b="horizontal",icon:N}=e,w=k=>{x&&k.target===k.currentTarget&&(k.key==="Enter"||k.key===" ")&&(k.preventDefault(),x())};return t.jsxs("div",{className:ye("panel-row",b==="vertical"?"panel-row--vertical":"",x?"panel-row--clickable":""),onClick:x,onKeyDown:x?w:void 0,role:x?"button":void 0,tabIndex:x?0:void 0,children:[N!=null&&t.jsx("div",{className:"panel-row__icon",children:N}),f!=null&&t.jsxs("div",{className:"panel-row__left",children:[t.jsx("div",{className:"panel-row__label body-3",children:f}),v&&t.jsx("div",{className:"panel-row__sub caption-1",children:v})]}),t.jsx("div",{className:"panel-row__right",children:_})]})}if(e.variant==="description")return t.jsx("div",{className:"panel-row panel-row--block",children:t.jsx("p",{className:"panel-row__description body-3",children:e.children})});if(e.variant==="empty")return t.jsx("div",{className:"panel-row panel-row--empty body-3",children:e.children});if(e.variant==="loading")return t.jsx("div",{className:"panel-row panel-row--loading",children:t.jsx(la,{size:28})});if(e.variant==="custom"&&!e.label)return t.jsx("div",{className:"panel-row panel-row--block",children:e.children});const{variant:a,label:r,sub:o,onClick:i,required:l,error:c,align:u="horizontal",useFullWidth:d=!1,icon:p}=e,h=a==="button"?void 0:i;let m=null;const g=a==="toggle"?`panel-toggle-${n}`:void 0;if(a==="toggle"){const f=e;m=t.jsx(Vi,{checked:f.checked,onChange:f.onChange,id:g})}else if(a==="segmented"){const f=e;m=t.jsx(En,{options:f.options,value:f.value,onChange:f.onChange,size:f.size??40,ariaLabel:r})}else if(a==="dropdown"){const f=e,v=f.dropdowns?.length?t.jsx("div",{className:`panel-row__dropdown-group${d?" panel-row__dropdown-group--full":""}`,children:f.dropdowns.map((x,_)=>t.jsx("div",{className:d?"panel-row__dropdown-item--full":void 0,children:t.jsx(Gt,{options:x.options,value:x.value,onChange:x.onChange,placeholder:x.placeholder,block:d,error:!!c,ariaLabel:x.ariaLabel??([r,x.placeholder].filter(Boolean).join(" ")||void 0)})},_))}):t.jsx(Gt,{options:f.options??[],value:f.value??"",onChange:f.onChange??Ul,block:d,error:!!c,ariaLabel:r});m=c?t.jsxs("div",{className:`panel-row__dropdown-error-wrap${d?" panel-row__dropdown-error-wrap--full":""}`,children:[v,t.jsx("span",{className:"caption-1 panel-row__error",role:"alert",children:c})]}):v}else if(a==="button"){const f=e;f.buttons?.length?m=t.jsx("div",{className:"panel-row__button-group",children:f.buttons.map((v,x)=>t.jsx(oe,{htmlType:"button",size:v.btnSize??40,variant:v.btnVariant??"default",disabled:v.disabled,onClick:v.onClick,children:v.label},x))}):m=t.jsx(oe,{htmlType:"button",size:f.btnSize??40,variant:f.btnVariant??"default",disabled:f.disabled,onClick:f.onClick,children:f.buttonLabel})}else if(a==="text"){const f=e;m=t.jsx("span",{className:`panel-row__text body-2${d?" panel-row__text--full":""}`,style:f.valueColor?{color:f.valueColor}:void 0,children:f.value})}else if(a==="input"){const f=e;m=t.jsxs("div",{className:`panel-row__input-wrap${d?" panel-row__input-wrap--full":""}`,children:[t.jsx(Tn,{value:f.value,onChange:f.onChange??Ul,onKeyDown:f.onKeyDown,onEnter:f.onEnter,placeholder:f.placeholder,inputMode:f.inputMode,readOnly:f.readOnly,disabled:f.disabled,type:f.type,autoComplete:f.autoComplete,maxLength:f.maxLength,showCount:f.showCount,multiline:f.multiline,rows:f.rows,fullWidth:d,error:c,ariaLabel:r,required:l}),f.helperText&&t.jsx("div",{className:"panel-row__helper caption-1",children:f.helperText})]})}else a==="custom"&&(m=e.children);const y=a==="input"||a==="dropdown"||(a==="text"||a==="custom")&&d,C=f=>{h&&f.target===f.currentTarget&&(f.key==="Enter"||f.key===" ")&&(f.preventDefault(),h())};return t.jsxs("div",{className:ye("panel-row",u==="vertical"?"panel-row--vertical":"",y?"panel-row--label-fixed":"",a==="text"?"panel-row--text":"",h?"panel-row--clickable":""),onClick:h,onKeyDown:h?C:void 0,role:h?"button":void 0,tabIndex:h?0:void 0,children:[p!=null&&t.jsx("div",{className:"panel-row__icon",children:p}),t.jsxs("div",{className:"panel-row__left",children:[g?t.jsxs("label",{htmlFor:g,className:"panel-row__label body-3",children:[r,l&&t.jsx("span",{className:"required-mark",children:"*"})]}):t.jsxs("div",{className:"panel-row__label body-3",children:[r,l&&t.jsx("span",{className:"required-mark",children:"*"})]}),o&&t.jsx("div",{className:"panel-row__sub caption-1",children:o})]}),t.jsx("div",{className:"panel-row__right",children:m})]})}function Gl(e){const n=e.productName||e.brand,a=[e.brand,e.fitType].filter(r=>!!r&&r!==n);return[...new Set(a)].join(" \xB7 ")}function yy({devices:e,onRelease:n,emptyLabel:a}){const{t:r}=he.useTranslation();return t.jsx("div",{className:"panel-row panel-row--device",children:["\uC88C","\uC6B0"].map(o=>{const i=e[o],l=o==="\uC88C"?r("device.direction.left","\uC88C"):r("device.direction.right","\uC6B0");return t.jsxs("div",{className:"panel-row__device-column",children:[t.jsxs("div",{className:"panel-row__device-head",children:[t.jsx("span",{className:"panel-row__device-side body-2b",children:l}),i&&n&&t.jsx(oe,{htmlType:"button",size:32,type:"dot",icon:"x",ariaLabel:r("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C"),showTooltipInfo:r("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C"),onClick:()=>n(o)})]}),i?t.jsxs("div",{className:"panel-row__device-info",children:[t.jsxs("span",{className:"panel-row__device-kind",children:[i.device&&t.jsx(it,{size:"small",variant:nl(i.device),fill:"soft",label:by(i.device,r)}),Gl(i)&&t.jsx("span",{className:"panel-row__device-detail body-3",children:Gl(i)})]}),t.jsx("span",{className:"panel-row__device-name body-2b",children:i.productName||i.brand}),t.jsx("span",{className:"panel-row__device-date caption-1",children:r("customers.device.wornSince",{date:`${i.wornYear}.${i.wornMonth}.${i.wornDay}`})})]}):t.jsx("span",{className:"panel-row__device-empty body-3",children:a??r("customers.device.notRegistered","\uBBF8\uB4F1\uB85D")})]},o)})})}function Ma({title:e,icon:n,disc:a,actions:r,size:o="medium",minHeight:i,maxWidth:l,className:c,scrollable:u,scrollbarGutter:d="auto",compactRows:p=!1,useBorder:h=!0,useBg:m=!0,useRowBorder:g=!0,labelWidth:y,form:C=!1,loading:f,empty:v,children:x}){const _=ye("panel",`panel--${o}`,C?"panel--form":"",i!==void 0?"panel--fill":"",h?"":"panel--no-border",m?"":"panel--no-bg",g?"":"panel--no-row-border",p?"panel--compact-rows":"",c),b={};return i!==void 0&&(b.minHeight=i),l!==void 0&&(b.maxWidth=typeof l=="number"?`${l}px`:l),y!==void 0&&(b["--panel-label-width"]=typeof y=="number"?`${y}px`:y),t.jsxs("div",{className:_,style:Object.keys(b).length?b:void 0,children:[(e!=null||a!=null)&&t.jsxs("div",{className:ye("panel__header",a!=null?"panel__header--with-disc":""),children:[n&&t.jsx(Oe,{icon:n,label:typeof e=="string"?e:void 0,className:"panel__icon"}),t.jsxs("div",{className:"panel__title-group",children:[e!=null&&t.jsx("h2",{className:`panel__title ${a!=null?"body-3b":"h5b"}`,children:e}),a!=null&&t.jsx("p",{className:"panel__disc caption-1",children:a})]}),r&&t.jsx("div",{className:"panel__actions",children:r})]}),f?t.jsx(vn,{variant:"loading"}):v!=null&&s.Children.toArray(x).length===0?t.jsx(vn,{variant:"empty",children:v}):u?t.jsx("div",{className:ye("panel__body--scroll",d==="stable"&&"panel__body--gutter-stable"),children:x}):x]})}function vy({cols:e=2,children:n}){return t.jsx("div",{className:"panel-grid",style:{"--panel-grid-cols":e},children:n})}function xy(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 Kl(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"}]}xy(Dt.t.bind(Dt)),Kl(Dt.t.bind(Dt));const Xr="none",_y=.5,wy=1.5,ky=.25;function Jr({title:e,valueLabel:n,value:a,min:r,max:o,step:i,tickStep:l,size:c,onChange:u}){return t.jsxs(vn,{variant:"custom",label:e,useFullWidth:!0,children:[t.jsx(Ji,{value:a,onChange:u,min:r,max:o,step:i,size:c,showBgTick:!0,tickStep:l,ariaLabel:e,className:"noise-settings__slider-input"}),t.jsx("div",{className:"noise-settings__value button-1",children:n})]})}function Yl({anchorRect:e,onClose:n}){const{t:a}=he.useTranslation(),r=Xt("(max-width: 767px)")?40:24,o=ja(),i=ca(o?.settings??da),l=o?.settings.type??"defaultNoise",c=o?.settings.enabled??!0,u=o?.playbackRate??1,d=o?.mainVolume??1,p=Math.round(d*100),h=s.useCallback(C=>{try{o?.setMainVolume(Math.max(0,Math.min(1,C/100)))}catch{}},[o]),m=s.useCallback(C=>{try{o?.setPlaybackRate(C)}catch{}},[o]),g=s.useCallback(C=>{const f=Math.min(Da,Math.max(0,Math.round(C*10)/10));try{o?.setSettings({noiseRatio:f})}catch{}},[o]),y=s.useCallback(C=>{try{C===Xr?o?.setSettings({enabled:!1}):o?.setSettings({type:C,enabled:!0})}catch{}},[o]);return t.jsx(Cn,{anchorRect:e,offset:12,onClose:n,ariaLabel:a("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),isMobilePopup:!1,closeOnOutsideClick:!1,header:t.jsxs("div",{className:"noise-settings__header",children:[t.jsx("span",{children:a("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815")}),t.jsx(oe,{htmlType:"button",size:40,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,ariaLabel:a("common.close","\uB2EB\uAE30"),onClick:n})]}),children:t.jsxs(Ma,{className:"noise-settings",useBorder:!1,labelWidth:72,children:[t.jsx(Jr,{title:a("training.playVolumeTitle","\uC804\uCCB4 \uC18C\uB9AC"),valueLabel:`${p}%`,value:p,min:0,max:100,step:10,size:r,onChange:h}),t.jsx(Jr,{title:a("training.playSpeedTitle","\uC7AC\uC0DD \uC18D\uB3C4"),valueLabel:`${u.toFixed(2)}x`,value:u,min:_y,max:wy,step:ky,size:r,onChange:m}),t.jsx(vn,{variant:"custom",label:a("training.noiseTypeTitle","\uC18C\uC74C \uC885\uB958"),useFullWidth:!0,children:t.jsx(En,{ariaLabel:a("training.noiseTypeTitle","\uC18C\uC74C \uC885\uB958"),size:40,shape:"rounded",options:[{key:Xr,label:a("training.noise.type.none","\uC5C6\uC74C")},...Kl(a).map(C=>({key:C.value,label:C.label}))],value:c?l:Xr,onChange:y})}),t.jsx(Jr,{title:a("training.noiseRatioTitle","\uC18C\uC74C \uBE44\uC728"),valueLabel:a("training.noiseRatioValue","{{ratio}}\uBC30",{ratio:i.toFixed(1)}),value:i,min:0,max:Da,step:Ml,size:r,onChange:g})]})})}function Zl({useNoiseSettingBtn:e=!1,onSettings:n,onNext:a,onResult:r,stepIndex:o=0,stepCount:i=0,pageIndex:l=0,pageCount:c=1}){const{t:u}=he.useTranslation(),[d,p]=s.useState(!1),[h,m]=s.useState(null),[g,y]=s.useState(!1),C=s.useRef(null),f=s.useRef(null),v=ja(),x=l<c-1,_=l===c-1,b=o===Math.max(0,i);s.useEffect(()=>{e||(p(!1),m(null))},[e]);const N=s.useCallback(()=>{p(!1),m(null)},[]),w=s.useCallback(()=>{if(d){p(!1),m(null);return}const A=C?.current?.getBoundingClientRect();A&&m(A),n?.(),p(!0)},[d,n]),k=s.useCallback(()=>{if(d){p(!1),m(null);return}const A=f?.current?.getBoundingClientRect();A&&m(A),n?.(),p(!0)},[d,n]),j=s.useCallback(()=>y(A=>!A),[]);return t.jsxs("div",{className:"pp-bottom",children:[t.jsxs("div",{className:"pp-bottom__left",children:[e?t.jsxs(t.Fragment,{children:[t.jsx("div",{className:"pp-bottom__settings--desktop",children:t.jsx("div",{ref:C,className:"pp-bottom__tooltip-trigger","data-tooltip-ignore":!0,children:t.jsx(oe,{htmlType:"button",size:56,type:"bar",icon:"settings",onClick:w,selected:d,ariaLabel:u("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),label:u("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),minWidth:140})})}),t.jsx("div",{className:"pp-bottom__settings--mobile",children:t.jsx("div",{ref:f,className:"pp-bottom__tooltip-trigger","data-tooltip-ignore":!0,children:t.jsx(oe,{htmlType:"button",size:56,type:"dot",icon:"settings",onClick:k,selected:d,ariaLabel:u("training.settings","\uC124\uC815"),minWidth:52})})})]}):null,e&&t.jsx(oe,{htmlType:"button",size:40,type:"dot",shape:"pill",icon:"audio-lines",onClick:j,selected:g,ariaLabel:u("training.meter.toggle","\uC624\uB514\uC624 \uBBF8\uD130 \uD45C\uC2DC")}),e&&g&&t.jsxs("div",{className:"pp-bottom__meters",children:[t.jsxs("div",{className:"pp-bottom__meter",children:[t.jsx("span",{className:"pp-bottom__meter-label caption-1",children:u("training.meter.sentence","\uC7AC\uC0DD")}),t.jsx(wr,{analyser:v?.mainAnalyser??null,orientation:"horizontal",length:112,label:"db",labelPos:"left",ariaLabel:u("training.meter.sentence","\uC7AC\uC0DD")})]}),t.jsxs("div",{className:"pp-bottom__meter",children:[t.jsx("span",{className:"pp-bottom__meter-label caption-1",children:u("training.meter.noise","\uC18C\uC74C")}),t.jsx(wr,{analyser:v?.noiseAnalyser??null,orientation:"horizontal",length:112,label:"db",labelPos:"left",ariaLabel:u("training.meter.noise","\uC18C\uC74C")})]})]})]}),t.jsxs("div",{className:"pp-bottom__right",children:[_&&t.jsx(oe,{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:!b}),x&&t.jsx(oe,{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:!b})]}),e&&d&&t.jsx(Yl,{anchorRect:h,onClose:N})]})}function Xl({title:e,subtitle:n,desc:a,depth:r,icon:o,wrapperStyle:i,iconTooltip:l,pageIndex:c,pageCount:u,progressMax:d,progressIndex:p,onBack:h,onClose:m}){const{t:g}=he.useTranslation(),y=Xt("(max-width: 767px)"),C=Number.isInteger(p)?p:c||0,f=Number.isInteger(d)?d:u||0,v=h||m,x=Array.isArray(r)?y?r[r.length-1]:r.join(" / "):r,_=typeof e=="string"?e.trim():e,b=typeof n=="string"?n.trim():n,N=!!(_||b),w=N?_||b:g("common.emptyTrainingName","\uD6C8\uB828 \uC774\uB984\uC774 \uBE44\uC5B4 \uC788\uC2B5\uB2C8\uB2E4."),k=x||(_?n:void 0),j=y&&typeof k=="string"&&(k.includes(" \xB7 ")||k.includes(" / "))?k.split(/\s[·/]\s/).pop():k,A=s.useMemo(()=>{const S=i&&typeof i=="object"?{...i}:{};return!("width"in S)&&!("height"in S)&&(S.width="40px",S.height="40px"),S},[i]);return t.jsxs("header",{className:"pp-title training-popup-title",children:[t.jsxs("div",{className:"pp-title__left",children:[v?t.jsx(oe,{htmlType:"button",size:48,type:"dot",icon:"chevron-left",ariaLabel:g("common.back","\uB4A4\uB85C"),onClick:v,useBorder:!1,iconSize:"large",iconColor:"--color-black",variant:"transparent-gray"}):null,t.jsx("div",{children:o?t.jsx(ol,{icon:o,label:e,tooltip:l,wrapperStyle:A}):null}),t.jsxs("div",{className:"pp-title__text",children:[j?t.jsx("span",{className:"pp-title__depth caption-1",children:j}):null,t.jsx("span",{className:`pp-title__title h2${N?"":" pp-title__title--empty"}`,children:w}),a?t.jsx("span",{className:"pp-title__description caption-1",children:a}):null]})]}),t.jsx(tl,{max:Math.max(0,f??0),index:Math.max(0,C??0)})]})}function Ay(){typeof window<"u"&&window.dispatchEvent(new CustomEvent("speechear.popup.close"))}function Ny(e){return!e&&e!==0?[]:Array.isArray(e)?e.flatMap(n=>typeof n=="string"?n.split("|").map(a=>a.trim()).filter(Boolean):n||n===0?[String(n)]:[]):typeof e=="string"?e.split("|").map(n=>n.trim()).filter(Boolean):[String(e)]}const Jl=(e,n)=>{if(!n)return n;const a=typeof Dt?.t=="function"?Dt.t(e,{defaultValue:n}):void 0;return typeof a=="string"&&a?a:n};function Ql(e,n,a){const r=e,o=r?.title||r?.name||(Array.isArray(n)?n[n.length-1]:void 0)||a||"\uD6C8\uB828",i=xs().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:o,label:r?.title||o,depth:n,icon:i?.icon,wrapperStyle:i?.color?{"--t-item-fg":i.color}:void 0,iconTooltip:[i?Jl(`topic.${i.key}`,i.label):void 0,l?Jl(`topic.sub.${l.key}`,l.label):void 0].filter(Boolean).join(" / ")||void 0}}function Qr(e){return e&&typeof e=="object"&&typeof e.__ts=="number"?e.__ts:0}function By(e){const n=e;return Array.isArray(n?.items)?n.items:Array.isArray(e)?e:e?[e]:[]}function Sy({idPrefix:e,trainingData:n,depth:a,fallbackTitle:r="\uD6C8\uB828",pages:o=[],emptyMessage:i,buildResults:l,metaPatch:c}){const u=Ql(n,a,r),d=typeof c=="function"?c(u)||{}:c||{},p=n?.id||n?.title||o.length;return{id:`${e}:${p}`,meta:{...u,...d},pages:o,emptyMessage:i,buildResults:l}}function Dy(e){if(typeof e=="string")return e;if(e&&typeof e=="object"){const n=e;return n.context||n.sentence||n.question||""||""}return""}function jy(e){if(e&&typeof e=="object"){const n=e;if(Array.isArray(n.selectedValues))return n.selectedValues;if(n.selectedValue!==void 0)return n.selectedValue;if(n.selectedIndex!==void 0)return n.selectedIndex;if(n.value!==void 0)return n.value}return e}function Ty(e,n=[]){if(Array.isArray(e))return e.join(", ");if(typeof e=="number"&&Array.isArray(n))return String(n[e]??"");if(typeof e=="string")return e}function ec(e,n){if(!(!e||typeof e!="object"))return e[`step-${n}`]}function Ey(e,n,a,r){return ec(e,n*a+r)}function My({payload:e,selected:n,choices:a=[],correctAnswers:r=[]}){if(e&&typeof e=="object"){const o=e;if(Array.isArray(o.selectedValues))return r.every(i=>o.selectedValues.includes(i))&&o.selectedValues.every(i=>r.includes(i));if(typeof o.correct=="boolean")return o.correct}if(r.length){if(typeof n=="number"&&Array.isArray(a)&&a.length)return r.some(o=>String(o)===String(a[n]));if(typeof n<"u")return r.some(o=>String(o)===String(n))}}function Ly(e){return e?Array.isArray(e.items)?e.items.map(n=>{const a=n;return typeof n=="string"?{sentence:n}:{sentence:a.context||a.sentence||"",contextCode:a.contextCode||a.context_code}}):Array.isArray(e.sentences)?e.sentences.map(n=>{const a=n;return typeof n=="string"?{sentence:n}:{sentence:a.sentence||a.context||"",contextCode:a.contextCode}}):Array.isArray(e.contexts)?e.contexts:e.contextCode?[{contextCode:e.contextCode}]:[]:[]}const tc=s.createContext(null);function $y(){const e=s.useContext(tc);if(!e)throw new Error("useTrainingPagePopupContext must be used inside TrainingPagePopup");return e}function Ry({index:e,stepIndex:n,isLast:a=!1,title:r,choices:o=[],onDone:i,onChange:l}){const{t:c}=he.useTranslation(),u=typeof e=="number"?e:-1,d=typeof n!="number"?"disabled":u<n?"done":u===n?"active":"disabled",[p,h]=s.useState(()=>o.map(()=>null)),m=JSON.stringify(o),g=o.length;s.useEffect(()=>{h(Array.from({length:g},()=>null))},[m]);const y=s.useMemo(()=>p.filter(v=>v!==null).length+1,[p]),C=s.useCallback(v=>{if(d!=="active")return;const x=p;let _;if(x[v]!=null){const N=x[v];_=x.map(w=>w!==null&&w>=N?null:w)}else _=[...x],_[v]=y;h(_);const b={selectedOrder:_,words:o,__ts:Date.now()};try{typeof l=="function"&&l(b)}catch{}if(x[v]==null&&_.length>0&&_.every(N=>N!==null))try{typeof i=="function"&&i(b)}catch{}},[d,p,y,l,i,o]),f=r??c("training.selectInOrder","\uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uCE74\uB4DC\uB97C \uC120\uD0DD\uD558\uC138\uC694.");return t.jsx(Mn,{index:e,stepIndex:n,isLast:a,title:f,onDone:i,children:t.jsx("div",{className:"training-step__cards",children:o.map((v,x)=>t.jsx(Sr,{item:{word:v},disabled:d==="disabled",selectable:!0,selected:p[x]!==null,orderRank:p[x],onSelect:()=>C(x),flipDelay:x*120,hideLabel:!1,hideAudio:!0},`${v}-${x}`))})})}function La(e){return null}La.__isTrainingPage=!0;function Wn(e,n){const a=$y();return{ctx:a,index:e,stepIndex:a.currentStepIndex,isLast:typeof e=="number"&&typeof n=="number"?e===n-1:!1,onDone:r=>a.handleStepDone(r,e),onChange:r=>a.handleStepChange(r,e)}}function nc({_stepIndex:e,_totalSteps:n,...a}){const{index:r,stepIndex:o,isLast:i,onDone:l}=Wn(e,n);return t.jsx(Yr,{...a,index:r,stepIndex:o,isLast:i,onDone:l})}function ac({_stepIndex:e,_totalSteps:n,...a}){const{index:r,stepIndex:o,isLast:i,onDone:l,onChange:c}=Wn(e,n);return t.jsx(Gr,{...a,index:r,stepIndex:o,isLast:i,onDone:l,onChange:c})}function rc({_stepIndex:e,_totalSteps:n,...a}){const{index:r,stepIndex:o,isLast:i,onDone:l,onChange:c}=Wn(e,n);return t.jsx(Kr,{...a,index:r,stepIndex:o,isLast:i,onDone:l,onChange:c})}function oc({_stepIndex:e,_totalSteps:n,...a}){const{index:r,stepIndex:o,isLast:i,onDone:l,onChange:c}=Wn(e,n);return t.jsx(Zr,{...a,index:r,stepIndex:o,isLast:i,onDone:l,onChange:c})}function sc({_stepIndex:e,_totalSteps:n,...a}){const{index:r,stepIndex:o,isLast:i,onDone:l,onChange:c}=Wn(e,n);return t.jsx(ql,{...a,index:r,stepIndex:o,isLast:i,onDone:l,onChange:c})}function Py({_stepIndex:e,_totalSteps:n,...a}){const{index:r,stepIndex:o,isLast:i,onDone:l,onChange:c}=Wn(e,n);return t.jsx(Ry,{...a,index:r,stepIndex:o,isLast:i,onDone:l,onChange:c})}function eo(...e){for(const n of e)if(typeof n=="string"){const a=n.trim();if(a.length)return a}else{if(typeof n=="number"||typeof n=="boolean")return String(n);if(Array.isArray(n)&&n.length)return n.join(", ");if(n&&typeof n=="object"){const a=n,r=[a.text,a.label,a.value];for(const o of r){if(typeof o=="string"&&o.trim().length)return o.trim();if(typeof o=="number"||typeof o=="boolean")return String(o)}}}return null}function Iy(e){return eo(e?.question,e?.q,e?.sentence,e?.text,e?.prompt,e?.wording)}function ic(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 n=eo(e?.status,e?.result,e?.judge,e?.note);if(n){const a=n.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 lc(e){const{score:n,contextsLength:a,results:r=[],subtitle:o,onReplay:i,onClose:l,inline:c=!1}=e||{},{t:u}=he.useTranslation();s.useEffect(()=>{const C=a??0;if(n!=null&&C>0&&n/C>.5){const f=window.setTimeout(()=>{window.dispatchEvent(new CustomEvent("party:trigger",{detail:{count:140,strength:1.6,duration:2200}}))},0);return()=>window.clearTimeout(f)}},[n,a]);const d=s.useCallback(C=>{const f=ic(C),v=eo(C?.wording,C?.label);return f===!0?{variant:"main",label:v??u("training.result.heardWell","\uC798 \uB4E4\uC5C8\uC5B4\uC694")}:f===!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]),p=a??0,h=n??0,m=s.useMemo(()=>Array.isArray(r)?r:[],[r]),g=s.useMemo(()=>m.map(C=>{const f=C??{},v=Iy(f)||u("training.result.noContent","(\uB0B4\uC6A9\uC5C6\uC74C)"),{variant:x,label:_}=d(f),b=Array.isArray(f.corrects)?f.corrects:[],N=b.length?b.join(", "):f.answer!=null&&f.answer!==""?String(f.answer):null,w=typeof f.selectedText=="string"?f.selectedText:null,k=ic(f)===!0;return{problem:v,variant:x,label:_,answer:N,selectedText:w,isCorrect:k}}),[m,d,u]),y=s.useMemo(()=>g.some(C=>C.answer!==null||C.selectedText!==null),[g]);return t.jsx(yn,{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",footerClassName:"trp-result__foot",footer:({animateThen:C,closeWithAnimation:f})=>t.jsxs("div",{className:"trp-actions",children:[t.jsx(oe,{htmlType:"button",size:56,type:"bar",label:u("training.result.replay","\uB2E4\uC2DC\uD558\uAE30"),onClick:()=>C(i)}),t.jsx(oe,{htmlType:"button",size:56,type:"bar",label:u("training.result.done","\uC644\uB8CC"),variant:"main",onClick:f})]}),children:()=>t.jsxs("div",{className:"trp-result is-on",children:[t.jsxs("header",{className:"trp-result__head",children:[t.jsx("p",{className:"trp-result__eyebrow caption-1",children:u("training.result.eyebrow","\uD6C8\uB828 \uC644\uB8CC")}),t.jsx("h1",{className:"trp-result__title h2",children:u("training.result.title","\uD6C8\uB828\uC744 \uBAA8\uB450 \uB9C8\uCCE4\uC2B5\uB2C8\uB2E4.")}),o&&t.jsx("p",{className:"trp-result__subtitle body-3",children:o}),t.jsx("div",{className:"trp-score",children:t.jsxs("div",{className:"trp-score__figure","aria-label":u("training.result.scoreAria",{correct:h,total:p}),children:[t.jsx("span",{className:"trp-score__big",children:h}),t.jsx("span",{className:"trp-score__sep",children:"/"}),t.jsx("span",{className:"trp-score__total",children:p})]})})]}),g.length>0&&t.jsx("section",{className:"trp-result__body",children:t.jsxs("div",{className:`result-table${y?" result-table--answer":""}`,role:"table","aria-label":u("training.result.tableAriaLabel","\uBB38\uD56D\uBCC4 \uD310\uC815"),children:[t.jsxs("div",{className:"result-table__head caption-1",role:"row",children:[t.jsx("span",{role:"columnheader",children:u("common.col.problem","\uBB38\uC81C")}),y&&t.jsx("span",{role:"columnheader",children:u("training.result.colAnswerSelected","\uC815\uB2F5 \xB7 \uC120\uD0DD")}),t.jsx("span",{className:"col-right",role:"columnheader",children:u("training.result.colJudge","\uD310\uC815")})]}),g.map((C,f)=>t.jsxs("div",{className:"result-table__row",role:"row",children:[t.jsxs("div",{className:"trp-row__problem",children:[t.jsx("span",{className:"trp-row__no caption-1",children:String(f+1).padStart(2,"0")}),t.jsx("div",{className:"trp-row__q body-2",children:C.problem})]}),y&&t.jsxs("div",{className:"trp-row__answers",children:[C.answer!==null&&t.jsxs("div",{className:"trp-row__answer-line",children:[t.jsx("span",{className:"trp-row__answer-label answer-correct caption-1",children:u("training.result.colAnswer","\uC815\uB2F5")}),t.jsx("span",{className:"trp-row__answer-value body-2",children:C.answer})]}),t.jsxs("div",{className:"trp-row__answer-line",children:[t.jsx("span",{className:`trp-row__answer-label answer-selected caption-1 ${C.isCorrect?"is-correct":"is-wrong"}`,children:u("training.result.colSelected","\uC120\uD0DD")}),t.jsx("span",{className:`trp-row__answer-value body-2 ${C.isCorrect?"is-correct":"is-wrong"}`,children:C.selectedText??"\u2014"})]})]}),t.jsx("div",{className:"trp-row__judge",children:t.jsx(it,{variant:C.variant,label:C.label,fill:"soft",minWidth:80})})]},f))]})})]})})}function Fy(e){s.useEffect(()=>{if(!e)return;const n=new Date;return()=>{const a=new Date;a.getTime()-n.getTime()<5e3||h0({trainingType:e,startedAt:n.toISOString(),endedAt:a.toISOString()})}},[e])}function to(e,n){return e&&e.id||`page-${n??0}`}function no(e,n){return e&&e.key||`step-${n??0}`}function $a(){return{pageIndex:0,stepIndex:0,answersByPage:{}}}function Oy(e,n){return typeof e?.props=="function"?e.props(n)||{}:e?.props||{}}const cc=new Set(["LISTEN_IN_NOISE","SHORT_STORY","LONG_STORY","ORDERING_SENTENCE"]),Vy=e=>t.jsx(lc,{score:e.score,contextsLength:e.contextsLength,results:e.results,onReplay:e.onReplay,onClose:e.onClose});function Hy(e){const{scenario:n,title:a,subTitle:r,depth:o,icon:i,wrapperStyle:l,iconTooltip:c,pageIndex:u,pageCount:d,stepIndex:p,stepCount:h,onBack:m,onComplete:g,onNext:y,onSettings:C,useNoiseSetting:f=!0,children:v,ariaLabel:x,label:_,buildResults:b,onResult:N,typeKey:w,entryPoint:k,dailyTotal:j,itemRef:A,renderResultPopup:S,noiseOverride:q}=e;Fy(w&&!cc.has(w)?w:"");const W=s.useRef(0);s.useEffect(()=>{W.current=Date.now()},[]);const{t:B}=he.useTranslation(),O=N,E=!!n,ee=n?.id||null,M=n?.meta||{},H=Array.isArray(n?.pages)?n.pages:[],Q=Array.isArray(v)||s.isValidElement(v)&&typeof v!="function"?s.Children.toArray(v).filter(s.isValidElement):[],te=Q.length>0,Y=I=>I===La||I?.__isTrainingPage===!0,V=te&&Q.some(I=>Y(I.type)),T=V?Q.filter(I=>Y(I.type)).map((I,$)=>{const G=I.props||{};return{id:`children-page-${$}`,steps:s.Children.toArray(G.children).filter(s.isValidElement),pageTop:G.pageTop||G.top||null,pageBottom:G.pageBottom||G.bottom||null}}):[{id:"children-page-0",steps:Q}],P=te&&!E&&typeof v!="function",F=P?Math.max(1,T.length):0;s.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")}},[]),s.useEffect(()=>{if(typeof document>"u"||!document.body)return;const I=document.body;return I.dataset.ihabTrainingPopupCount=String(Number(I.dataset.ihabTrainingPopupCount||"0")+1),I.classList.add("ihab-training-popup-open"),()=>{const $=Number(I.dataset.ihabTrainingPopupCount||"1")-1;$>0?I.dataset.ihabTrainingPopupCount=String($):(delete I.dataset.ihabTrainingPopupCount,I.classList.remove("ihab-training-popup-open"))}},[]),s.useEffect(()=>{if(!(typeof document>"u"||!document.body))return Ug()},[]);const[L,R]=s.useState({...da,enabled:!1}),z=s.useRef(L);s.useEffect(()=>{z.current=L},[L]);const ae=s.useRef(q),ne=s.useRef(!1),re=s.useRef(null);s.useEffect(()=>{let I=!1;const $=G=>{if(I)return;ne.current=!0;const le=G?ua({...da,enabled:!1},G):{...da},de=re.current;re.current=null;const ce=de?ua(le,de):le;z.current=ce,R(ce),de&&!ae.current&&gs(ce),ya(ce);const Te=ae.current;if(Te){const Re=typeof Te=="function"?Te(ce):Te,Ge=ua(ce,Re);z.current=Ge,R(Ge),ya(Ge)}};return g0().then($),()=>{I=!0}},[]);const[pe,_e]=s.useState(null),[Z,ie]=s.useState(null),J=s.useCallback((I,$)=>{I==="main"?_e($):ie($)},[]),be=s.useCallback(I=>{const $=ua(z.current,I);if(z.current=$,R($),!ne.current){re.current={...re.current??{},...I},ya($);return}ae.current||gs($),ya($)},[]),xe=L.mainSpeed,Ce=L.mainVolume,fe=s.useCallback(I=>be({mainSpeed:I}),[be]),ve=s.useCallback(I=>be({mainVolume:I}),[be]),Se=s.useMemo(()=>({settings:L,setSettings:be,registerAnalyser:J,mainAnalyser:pe,noiseAnalyser:Z,playbackRate:xe,setPlaybackRate:fe,mainVolume:Ce,setMainVolume:ve}),[L,be,J,pe,Z,xe,fe,Ce,ve]),X=s.useRef(null),[ue,ke]=s.useState(0),[Le,Fe]=s.useState("center"),[De,Pe]=s.useState(!1),Me=s.useRef(!1),Je=s.useRef(null),ze=s.useCallback(I=>{Me.current||(Me.current=!0,Pe(!0),Je.current=setTimeout(()=>{try{I()}catch{Me.current=!1,Pe(!1)}},Cy))},[]);s.useEffect(()=>()=>{Je.current&&clearTimeout(Je.current)},[]);const Ve=s.useRef(m);s.useEffect(()=>{Ve.current=m}),s.useEffect(()=>{const I=X.current,$=document.activeElement;if(I){const G=Array.from(I.querySelectorAll(Nn)).filter(le=>!le.closest('[aria-hidden="true"]'))[0];if(G)try{G.focus()}catch{}}return()=>{const G=document.activeElement;if(!G||G===document.body||I&&I.contains(G))try{$?.focus?.()}catch{}}},[]),s.useEffect(()=>Bn(()=>ze(()=>{const I=Ve.current;typeof I=="function"&&I()})),[ze]),sr(X,!0);const[ge,He]=s.useState(!1),Be=s.useRef(!1),[Ee,Ne]=s.useState(null),nt=s.useRef(0),ft=()=>{nt.current+=1,Ne(null)},[tt,rt]=s.useState(""),[Ke,je]=s.useState(()=>$a()),Qe=s.useRef(typeof u=="number"?u:null);s.useEffect(()=>{!E&&!P||(je($a()),ft())},[E,ee,P]),s.useEffect(()=>{P&&je(I=>{const $=Math.max(0,Math.min(I.pageIndex,Math.max(0,F-1)));return $!==I.pageIndex?{...I,pageIndex:$,stepIndex:0}:I})},[P,F]);const ut=P?Math.max(0,Math.min(Ke.pageIndex,F-1)):0,qe=P?T[ut]:null,Ye=P&&qe&&Array.isArray(qe.steps)?qe.steps:[],Ie=E?Ke.pageIndex:P?ut:typeof u=="number"?u:0,Ze=E?H[Math.max(0,Math.min(Ke.pageIndex,Math.max(0,H.length-1)))]:null,ot=E&&Ze&&Array.isArray(Ze.steps)?Ze.steps:[],Ft=E?ot.length:P?Ye.length:typeof h=="number"?h:0,dt=E||P?Math.max(0,Math.min(Ke.stepIndex,Math.max(0,Ft))):typeof p=="number"?p:0,At=E?H.length:P?F:typeof d=="number"?d:0;s.useLayoutEffect(()=>{const I=Qe.current;if(typeof Ie=="number"&&I!==null&&Ie!==I&&Ie>I)try{rt(B("training.problemNotice",{n:Ie+1}))}catch{}Qe.current=typeof Ie=="number"?Ie:Qe.current},[Ie,u,B]),s.useLayoutEffect(()=>{const I=X.current;if(!I)return;const $=()=>I.querySelector(".page-popup__scroll");let G=null,le=null,de=null;const ce=lt=>{const Ue=$();if(!Ue)return;const zt=Ue.scrollHeight<=Ue.clientHeight;if(Fe(zt?"center":"top"),lt&&!Be.current){Be.current=!0;try{He(!0)}catch{}try{Ge.disconnect()}catch{}}},Te=()=>{G!==null&&cancelAnimationFrame(G),G=requestAnimationFrame(()=>{le!==null&&clearTimeout(le),le=setTimeout(()=>ce(!0),60)})},Re=()=>{de!==null&&cancelAnimationFrame(de),de=requestAnimationFrame(()=>ce(!1))};Te(),window.addEventListener("resize",Re);const Ge=new MutationObserver(Te);Ge.observe(I,{childList:!0,subtree:!0,attributes:!0});const pt=setTimeout(()=>{Be.current||ce(!0)},400);return()=>{window.removeEventListener("resize",Re),G!==null&&cancelAnimationFrame(G),le!==null&&clearTimeout(le),de!==null&&cancelAnimationFrame(de),clearTimeout(pt);try{Ge.disconnect()}catch{}}},[X]);const dn=s.useCallback(I=>{X.current&&(X.current._childOnNext=I)},[]),Qt=s.useCallback(I=>{X.current&&(X.current._childOnResult=I)},[]),bt=s.useCallback((I,$,G)=>{je(le=>{const de=le.answersByPage[I]||{},ce=de[$],Te=Qr(G),Re=Qr(ce);return ce&&Re>Te?le:{...le,answersByPage:{...le.answersByPage,[I]:{...de,[$]:G}}}})},[je]),yt=s.useCallback((I,$,G)=>{const le=to(Ze,Ie),de=no(I,$);bt(le,de,G)},[Ze,Ie,bt]),Tt=s.useCallback((I,$,G)=>{const le=to(Ze,Ie),de=no(I,$);bt(le,de,G),!G?.allowChange&&I?.autoAdvance!==!1&&je(ce=>({...ce,stepIndex:Math.max(ce.stepIndex,$+1)}))},[Ze,Ie,bt,je]),Rt=s.useCallback((I,$)=>{const G=qe?.id||`children-page-${Ie??0}`,le=typeof $=="number"?$:dt??0,de=`step-${le}`;bt(G,de,I),I?.allowChange||je(ce=>({...ce,stepIndex:Math.max(ce.stepIndex,le+1)}))},[qe,Ie,dt,bt,je]),en=s.useCallback((I,$)=>{const G=qe?.id||`children-page-${Ie??0}`,le=`step-${typeof $=="number"?$:dt??0}`;bt(G,le,I)},[qe,Ie,dt,bt]),_n=P?{currentPageIndex:Ie??0,currentStepIndex:dt??0,totalStepsInPage:Ye.length,handleStepDone:Rt,handleStepChange:en}:null,Xe=async()=>{const I=typeof n?.buildResults=="function"?await Promise.resolve(n.buildResults({scenario:n,pages:H,flowState:Ke,answersByPage:Ke.answersByPage})):null;return typeof O=="function"&&await Promise.resolve(O(I))||I},Et=async()=>{const I=qe?.id||`children-page-${Ke.pageIndex}`,$=Ke.answersByPage[I]||{},G=V?(()=>{const ce={};let Te=0;return T.forEach(Re=>{const Ge=Ke.answersByPage[Re.id]||{},pt=Array.isArray(Re.steps)?Re.steps.length:0;for(let lt=0;lt<pt;lt+=1){const Ue=Ge[`step-${lt}`];typeof Ue<"u"&&(ce[`step-${Te+lt}`]=Ue)}Te+=pt}),ce})():$;if(typeof b=="function"){const ce=await Promise.resolve(b(G,{pageAnswers:$,answersByPage:Ke.answersByPage,pages:T,currentPageId:I}));return typeof O=="function"&&await Promise.resolve(O(ce))||ce}const le=Object.entries($).map(([ce,Te],Re)=>({index:Re,key:ce,payload:Te})),de={results:le,answers:le,score:0};return typeof O=="function"&&await Promise.resolve(O(de))||de},vt=()=>{const I=++nt.current,$=()=>I!==nt.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(E){const de=Xe();Ne({});const ce=de;Promise.resolve(ce).then(Te=>{$()||Ne(Te||{isEmpty:!0})}).catch(Te=>{!$()&&Ne({isEmpty:!0})});return}if(P){const de=Et();Ne({});const ce=de;Promise.resolve(ce).then(Te=>{$()||Ne(Te||{isEmpty:!0})}).catch(Te=>{!$()&&Ne({isEmpty:!0})});return}const G=X.current&&X.current._childOnResult,le=de=>{try{return de?de():void 0}catch{return}};if(typeof G=="function"){const de=le(G);try{typeof document>"u"?require("url").pathToFileURL(__filename).href:an&&an.tagName.toUpperCase()==="SCRIPT"&&an.src||new URL("components.cjs.js",document.baseURI).href}catch{}de&&typeof de.then!="function"?Ne(de):Ne(de&&typeof de.then=="function"?{}:{}),Promise.resolve(de).then(ce=>{ce&&!$()&&Ne(ce)}).catch(ce=>{});return}if(typeof O=="function"){const de=le(O);try{typeof document>"u"?require("url").pathToFileURL(__filename).href:an&&an.tagName.toUpperCase()==="SCRIPT"&&an.src||new URL("components.cjs.js",document.baseURI).href}catch{}de&&typeof de.then!="function"?Ne(de):Ne(de&&typeof de.then=="function"?{}:{}),Promise.resolve(de).then(ce=>{try{typeof document>"u"?require("url").pathToFileURL(__filename).href:an&&an.tagName.toUpperCase()==="SCRIPT"&&an.src||new URL("components.cjs.js",document.baseURI).href}catch{}ce&&!$()&&Ne(ce)}).catch(ce=>{console.error("viewResults external handler failed",ce)});return}},Ot=()=>{if(E){if(typeof Ie=="number"&&typeof At=="number"&&Ie<At-1){je($=>({...$,pageIndex:$.pageIndex+1,stepIndex:0}));return}return vt()}if(P){const $=Ye.length;if(typeof dt=="number"&&dt<$-1){je(G=>({...G,stepIndex:G.stepIndex+1}));return}if(typeof Ie=="number"&&typeof At=="number"&&Ie<At-1){je(G=>({...G,pageIndex:G.pageIndex+1,stepIndex:0}));return}return vt()}if(typeof y=="function"){try{y()}catch{}return}const I=X.current&&X.current._childOnNext;if(typeof I=="function"){try{I()}catch{}return}},Mt=E?M.title||M.label||x||B("common.popup","\uD31D\uC5C5"):a||_||(Array.isArray(o)?o[o.length-1]:void 0)||x||B("common.popup","\uD31D\uC5C5"),Yt=E?M.title??M.label??Mt:a??_??Mt,tn=(I,$)=>{const G=to(Ze,Ie),le=no(I,$),de=Ke.answersByPage[G]?.[le],ce=Oy(I,{page:Ze,pageIndex:Ie,step:I,stepIndex:$,storedPayload:de,answersByPage:Ke.answersByPage,flowState:Ke}),Te={key:le,index:$,stepIndex:dt,isLast:$===ot.length-1};switch(I?.type){case"listen":return t.jsx(Yr,{...Te,...ce,onDone:Re=>Tt(I,$,Re)});case"confirm":return t.jsx(Gr,{...Te,...ce,onDone:Re=>Tt(I,$,Re),onChange:Re=>yt(I,$,Re)});case"confirmWithText":return t.jsx(Kr,{...Te,...ce,onDone:Re=>Tt(I,$,Re),onChange:Re=>yt(I,$,Re)});case"orderList":return t.jsx(Zr,{...Te,...ce,onDone:Re=>Tt(I,$,Re),onChange:Re=>yt(I,$,Re)});default:return null}},nn=s.useRef(void 0);s.useEffect(()=>{const I=nn.current;if(nn.current=Ie,I===void 0||I===Ie)return;const $=X.current;if(!$)return;const G=document.activeElement;if(!(!G||G===document.body||!$.contains(G)||G.disabled===!0))return;const le=$.querySelector(`.training-steps ${Nn.split(", ").join(", .training-steps ")}`)??Array.from($.querySelectorAll(Nn)).find(de=>!de.closest('[aria-hidden="true"]'));try{le?.focus()}catch{}},[Ie]);const Pt=E?H.length>0?t.jsx("div",{className:"training-steps",children:ot.map((I,$)=>tn(I,$))},`replay-${ue}`):t.jsx("div",{className:"page-popup__content page-popup__content--center",children:t.jsx("div",{className:"pp-empty",children:n?.emptyMessage||B("training.noQuestions","\uBB38\uC81C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")})}):null,Vt=P?t.jsxs(tc.Provider,{value:_n,children:[qe?.pageTop?t.jsx("div",{className:"training-page-top",children:qe.pageTop}):null,t.jsx("div",{className:"training-steps",children:Ye.map((I,$)=>{const G=I;return s.cloneElement(G,{...G.props,_stepIndex:$,_totalSteps:Ye.length,_stepKey:`step-${$}`,_pageIndex:Ie})})},`replay-${ue}`),qe?.pageBottom?t.jsx("div",{className:"training-page-bottom",children:qe.pageBottom}):null]}):null,pn=s.useCallback(()=>{let I;if(w){const $=Ee,G=$?.results||$?.answers||[],le=Array.isArray(G)&&G.length>0?G.length:null,de=Array.isArray(G)?G.filter(Te=>Te?.correct===!0||Te?.isCorrect===!0||Te?.score===1||Te?.heard===!0||Te?.judgement===!0).length:null,ce=le!=null?de:null;m0({items:C0(G),category:cc.has(w)?"sentence":"word",trainingType:w,entryPoint:k??"sentence",itemRef:A??null,correct:ce,total:le,score:typeof $?.score=="number"?$.score:null,durationSeconds:Math.max(0,Math.round((Date.now()-W.current)/1e3)),dailyTotal:j??null}),I={correct:ce,total:le}}ft(),ze(()=>{typeof g=="function"&&g(I),typeof m=="function"&&m()})},[g,m,w,k,j,A,Ee,Ne,ze]),xt=s.useCallback(()=>rt(""),[rt]),Ht=s.useCallback(()=>{ze(()=>{typeof m=="function"&&m()})},[m,ze]),Zt=t.jsxs("div",{className:`page-popup${De?" page-popup--closing":""}`,role:"dialog","aria-modal":"true","aria-label":Mt,children:[t.jsxs("div",{ref:X,className:`page-popup__panel ${ge?"":"page-popup__panel--measuring"} ${Le==="center"?"page-popup__panel--center":Le==="top"?"page-popup__panel--top":""}`,children:[t.jsx(Xl,{title:Yt,subtitle:E?M.subtitle||M.label:Array.isArray(o)?o.join(" / "):void 0,desc:E?void 0:r,depth:E?M.depth:o,icon:E?M.icon:i,wrapperStyle:E?M.wrapperStyle:l,iconTooltip:E?M.iconTooltip:c,progressMax:At,progressIndex:Ie,pageIndex:Ie,pageCount:At,onBack:Ht,onClose:Ht}),t.jsx("div",{className:"page-popup__scroll",children:t.jsx("div",{className:`page-popup__content ${Le==="center"?"page-popup__content--center":"page-popup__content--top"}`,children:P?Vt:E?Pt:typeof v=="function"?v({registerOnNext:dn,registerOnResult:Qt,panelRef:X,setResultOverlay:Ne}):v})}),t.jsx(Zl,{onSettings:C,onNext:Ot,onResult:vt,useNoiseSettingBtn:!!(E?M.useNoiseSetting??!0:f),stepIndex:dt,stepCount:Ft,pageIndex:Ie,pageCount:At})]}),Ee&&!Ee.isEmpty&&(S??Vy)({score:Ee.score,results:Ee.results||Ee.answers||[],contextsLength:Ee.results?Ee.results.length:Ee.answers?Ee.answers.length:0,onReplay:()=>{if(ft(),ke(I=>I+1),E){if(je($a()),typeof n?.onReplay=="function")try{n.onReplay()}catch{}return}if(P){je($a());return}try{const I=X.current&&X.current._childOnResult;typeof I=="function"&&I({replay:!0})}catch{}},onClose:pn}),Ee?.isEmpty&&t.jsx("div",{className:"page-popup page-popup--result-empty",role:"dialog","aria-modal":"true","aria-label":B("training.result.eyebrow","\uD6C8\uB828 \uC644\uB8CC"),children:t.jsxs("div",{className:"page-popup__panel page-popup__panel--center",children:[t.jsx("div",{className:"page-popup__scroll",children:t.jsx("div",{className:"page-popup__content page-popup__content--center",children:t.jsx("div",{className:"page-popup__empty",children:B("training.result.eyebrow","\uD6C8\uB828 \uC644\uB8CC")})})}),t.jsx("div",{className:"page-popup__bottom",children:t.jsx(oe,{htmlType:"button",variant:"main",size:48,onClick:pn,label:B("training.result.done","\uC644\uB8CC")})})]})}),t.jsx(Fn,{message:tt,position:"top",onClose:xt})]}),Nt=t.jsx(Vr.Provider,{value:Se,children:Zt});return typeof document<"u"&&document.body?It.createPortal(Nt,document.body):Nt}const xn=Hy;xn.Page=La,xn.ListenStep=nc,xn.ConfirmStep=ac,xn.ConfirmWithTextStep=rc,xn.OrderListStep=oc,xn.CardStep=sc,xn.CardOrderStep=Py;function zy({label:e,homonum:n}){const a=Rn()?.(e,n)??"",{imgRef:r,loading:o,hasImage:i,onLoad:l,onError:c}=Br(a);return i?t.jsxs("div",{className:"tooltip-word-image__cell",children:[o&&t.jsx("div",{className:"tooltip-word-image__spinner"}),t.jsx("img",{ref:r,src:a,alt:e,draggable:!1,style:{opacity:o?0:1},onLoad:l,onError:c})]}):t.jsx("div",{className:"tooltip-word-image__cell tooltip-word-image__cell--text h3",children:t.jsx("span",{children:e})})}function uc({words:e,anchorRect:n}){const a=s.useRef(null),[r,o]=s.useState(null);return s.useLayoutEffect(()=>{if(!n||!a.current)return;const{offsetWidth:i,offsetHeight:l}=a.current,c=window.innerWidth;let u=n.left+n.width/2-i/2,d=n.top-l-8;d<8&&(d=n.bottom+8),u=Math.max(8,Math.min(u,c-i-8)),o({left:u,top:d})},[n]),!n||e.length===0?null:It.createPortal(t.jsx("div",{ref:a,className:"tooltip-word-image",style:{visibility:r?"visible":"hidden",left:r?.left??0,top:r?.top??-9999},children:t.jsx("div",{className:"tooltip-word-image__cells",children:e.map(i=>t.jsx(zy,{label:i.label,homonum:i.homonum},`${i.label}_${i.homonum??1}`))})}),document.body)}function Wy({titleIcon:e,resultCount:n,resultUnit:a,searchQuery:r,items:o,groups:i,selected:l=[],onSelect:c,maxSelect:u,onClearSelection:d,onPrint:p,onPrintEmpty:h,className:m,emptyHint:g,sectionType:y="page",disc:C,notice:f}){const{t:v,i18n:x}=he.useTranslation(),_=x.language?.startsWith("ko")??!1,{anchorRect:b,openAt:N,close:w}=_a(),[k,j]=s.useState(null),A=s.useCallback(()=>{w(),j(null)},[w]);t2(A,!!k);const S=(r??"").trim(),q=/^[^,[\]\s]+$/.test(S)?S:"",W=q.length>0,[B,O]=s.useState(()=>W?"match":"ganada"),[E,ee]=s.useState("50"),[M,H]=s.useState(1),[Q,te]=s.useState(W);Q!==W&&(te(W),O(W?"match":"ganada"));const Y=B==="match"&&!W?"ganada":B,V=s.useMemo(()=>[...W?[{value:"match",label:v("wordSearch.sort.match",{defaultValue:"\uC2DC\uC791 \uC6B0\uC120"})}]:[],{value:"ganada",label:v("wordSearch.sort.ganada",{defaultValue:"\uAC00\uB098\uB2E4\uC21C \u2191"})},{value:"ganada_desc",label:v("wordSearch.sort.ganadaDesc",{defaultValue:"\uAC00\uB098\uB2E4\uC21C \u2193"})},{value:"syllable",label:v("wordSearch.sort.syllable",{defaultValue:"\uC74C\uC808 \uC218 \u2191"})},{value:"syllable_desc",label:v("wordSearch.sort.syllableDesc",{defaultValue:"\uC74C\uC808 \uC218 \u2193"})},{value:"grade",label:v("wordSearch.sort.grade",{defaultValue:"\uB4F1\uAE09\uC21C \u2191"})},{value:"grade_desc",label:v("wordSearch.sort.gradeDesc",{defaultValue:"\uB4F1\uAE09\uC21C \u2193"})}],[v,W]),T=s.useMemo(()=>["10","25","50","100"].map(Ce=>({value:Ce,label:v("wordSearch.pageSize",{count:Number(Ce),defaultValue:`${Ce}\uAC1C\uC529 \uBCF4\uAE30`})})),[v]),P=Ce=>Ce.words[0],F=s.useCallback((Ce,fe)=>{const ve=ue=>P(ue)?.label??"",Se=ue=>P(ue)?.syllables??[...ve(ue)].length,X=ue=>{const ke=parseInt(P(ue)?.grade??"",10);return Number.isFinite(ke)?ke:999};switch(Y){case"match":{const ue=[...q].length,ke=Le=>Xm(ve(Le).slice(0,ue),q)?0:1;return ke(Ce)-ke(fe)||ve(Ce).localeCompare(ve(fe),"ko")}case"ganada":return ve(Ce).localeCompare(ve(fe),"ko");case"ganada_desc":return ve(fe).localeCompare(ve(Ce),"ko");case"syllable":return Se(Ce)-Se(fe)||ve(Ce).localeCompare(ve(fe),"ko");case"syllable_desc":return Se(fe)-Se(Ce)||ve(Ce).localeCompare(ve(fe),"ko");case"grade":return X(Ce)-X(fe)||ve(Ce).localeCompare(ve(fe),"ko");case"grade_desc":return X(fe)-X(Ce)||ve(Ce).localeCompare(ve(fe),"ko");default:return 0}},[Y,q]),L=s.useMemo(()=>o.slice().sort(F),[o,F]),R=Number(E)||10,z=s.useMemo(()=>(i??[]).flatMap(Ce=>Ce.items.slice().sort(F).map(fe=>({item:fe,label:Ce.label}))),[i,F]),ae=i?z.length:L.length,ne=Math.max(1,Math.ceil(ae/R)),re=Math.min(M,ne),pe=s.useMemo(()=>L.slice((re-1)*R,re*R),[L,re,R]),_e=s.useMemo(()=>{if(!i)return null;const Ce=z.slice((re-1)*R,re*R),fe=new Map;for(const{item:ve,label:Se}of Ce)fe.has(Se)||fe.set(Se,[]),fe.get(Se).push(ve);return[...fe.entries()].map(([ve,Se])=>({label:ve,items:Se}))},[i,z,re,R]);s.useEffect(()=>{H(1)},[B,E,ae,r]);const Z=ae>0?t.jsxs("div",{className:"word-search-result-block__toolbar",children:[t.jsx(Gt,{size:40,options:V,value:Y,onChange:O,ariaLabel:v("wordSearch.sort.aria",{defaultValue:"\uC815\uB82C"})}),t.jsx(Gt,{size:40,options:T,value:E,onChange:ee,ariaLabel:v("wordSearch.pageSizeAria",{defaultValue:"\uD398\uC774\uC9C0 \uD06C\uAE30"})}),t.jsx(ka,{page:re,totalPages:ne,onChange:H})]}):void 0,ie=Ce=>{c&&c(Ce)},J=n!==void 0&&a?t.jsxs(t.Fragment,{children:[v("wordSearch.resultTitlePrefix","\uCD1D "),t.jsx("span",{style:{color:"var(--color-main)"},children:n}),v("wordSearch.resultTitleSuffix",{unit:_?s0(a):a})]}):void 0,be=n!==void 0&&n>0&&u!==void 0&&a?v("wordSearch.resultDisc",{unit:_?l0(a):a,max:u,selected:l.length}):void 0,xe=C??(f?t.jsxs(t.Fragment,{children:[t.jsx("span",{className:"word-search-result-block__notice",children:f}),be?t.jsx("span",{className:"word-search-result-block__disc",children:be}):null]}):be);return t.jsxs(On,{type:y,icon:e,title:J,action:Z,disc:xe,className:ye("word-search-result-block",m),children:[t.jsxs("div",{className:"word-search-result-block__inner",children:[(i?i.length===0:o.length===0)&&t.jsxs("div",{className:"word-search-result-block__empty-wrap",children:[t.jsx("p",{className:"word-search-result-block__empty body-3",children:v("wordSearch.emptyResult","\uAC80\uC0C9 \uACB0\uACFC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")}),g&&t.jsx("p",{className:"word-search-result-block__empty-hint body-3",children:g})]}),i?(_e??[]).map(Ce=>t.jsx("div",{className:"word-search-result-block__group",children:t.jsx("div",{className:"word-search-result-block__items",children:Ce.items.map(fe=>{const ve=l.includes(fe.id);return t.jsx("div",{onMouseEnter:Se=>{N(Se.currentTarget),j(fe.words)},onMouseLeave:A,children:t.jsx(oe,{htmlType:"button",size:"word",align:"grid",label:fe.words.map(Se=>Se.label),subLabel:fe.words.map(Se=>Se.subLabel).filter(Boolean).length>0?fe.words.map(Se=>Se.subLabel):void 0,selected:ve,onClick:()=>ie(fe.id),minWidth:200})},fe.id)})})},Ce.label)):t.jsx("div",{className:"word-search-result-block__items",children:pe.map(Ce=>{const fe=l.includes(Ce.id);return t.jsx("div",{onMouseEnter:ve=>{N(ve.currentTarget),j(Ce.words)},onMouseLeave:A,children:t.jsx(oe,{htmlType:"button",size:"word",align:"grid",label:Ce.words.map(ve=>ve.label),subLabel:Ce.words.map(ve=>ve.subLabel).filter(Boolean).length>0?Ce.words.map(ve=>ve.subLabel):void 0,selected:fe,onClick:()=>ie(Ce.id),minWidth:200})},Ce.id)})}),k&&b&&t.jsx(uc,{words:k,anchorRect:b})]}),ne>1&&t.jsx("div",{className:"word-search-result-block__pagination-bottom",children:t.jsx(ka,{page:re,totalPages:ne,onChange:H})}),(d||p)&&t.jsxs("div",{className:"word-search-result-block__actions",children:[d&&t.jsx(oe,{htmlType:"button",size:"56",type:"bar",label:v("common.resetSelection","\uC120\uD0DD \uCD08\uAE30\uD654"),selected:!1,disabled:l.length===0,onClick:l.length===0?void 0:d}),p&&t.jsx("div",{onClick:l.length===0?h:void 0,children:t.jsx(oe,{htmlType:"button",size:"56",type:"bar",variant:"main",label:v("wordTable.title","\uB2E8\uC5B4 \uD45C \uB9CC\uB4E4\uAE30"),disabled:l.length===0,onClick:l.length===0?void 0:p})})]})]})}function qy(e,n){return n.map(a=>{const r=typeof a=="string"?a:a.label,o=typeof a=="string"?void 0:a.displayLabel;return{label:r,value:e[r]??"",displayLabel:o}})}function Uy({sections:e,selectedList:n,count:a,onCountChange:r,maxCount:o=4,minCount:i=1,combinationSections:l,combinationSectionsForSlot:c,onSelect:u,placeholder:d="-",className:p,title:h,titleIcon:m,disc:g,showInfoButton:y=!1,onClearPhoneme:C,onSearch:f,onSearchEmpty:v,searchDisabled:x=!1,searchLabel:_,searchChecking:b=!1,pairMode:N=!1,sectionType:w="page",beforeSearchContent:k,beforeContent:j,afterContent:A,hideCountControl:S=!1,ordinal:q=!1}){const{t:W}=he.useTranslation(),B=s.useMemo(()=>W("wordPairs.infoNotes",{returnObjects:!0}),[W]),O=s.useMemo(()=>Array.from({length:o-i+1},(L,R)=>{const z=i+R;return{key:String(z),label:W("wordPairs.count",{n:z})}}),[W,o,i]),E=s.useMemo(()=>W("wordPairs.ordinals",{returnObjects:!0}),[W]),ee=s.useCallback(L=>q?W("wordPairs.phonemeOrdinalLabel",{ordinal:E[L-1]??L}):a===1?W("wordPairs.phonemeSingleLabel","\uC74C\uC808"):W("wordPairs.phonemeN",{n:L}),[q,E,a,W]),M=s.useCallback(L=>q?W("wordPairs.phonemeContrastOrdinalLabel",{ordinal:E[L-1]??L}):a===1?W("wordPairs.phonemeContrastSingleLabel","\uB300\uB9BD \uC74C\uC808"):W("wordPairs.phonemeContrast",{n:L}),[q,E,a,W]),H=s.useCallback((L,R)=>R?t.jsxs(t.Fragment,{children:[L,t.jsx("span",{className:"phoneme-select-block__required",children:"*"})]}):L,[]),{anchorRect:Q,toggleAt:te,close:Y}=_a(),V=s.useCallback(L=>r(Number(L)),[r]),T=Xt("(max-width: 767px)"),P=s.useCallback(L=>qy(L,e).map(({label:R,value:z,displayLabel:ae})=>{const ne=!!z&&z!=="\uC5C6\uC74C";return t.jsxs("span",{className:ye("phoneme-select-block__cell-jamo-part",z?"":"phoneme-select-block__cell-jamo-part--empty",ne?"":"phoneme-select-block__cell-jamo-part--no-label"),children:[t.jsx("span",{className:`phoneme-select-block__cell-jamo-char h1${z==="\uC5C6\uC74C"?" phoneme-select-block__cell-jamo-char--excluded":""}`,children:z==="\uC5C6\uC74C"?"x":z||d}),ne&&t.jsx("span",{className:"phoneme-select-block__cell-jamo-label caption-2",children:ae??R})]},R)}),[e,d]),F=t.jsxs(t.Fragment,{children:[t.jsx("div",{"data-tooltip-ignore":!0,children:t.jsx(oe,{htmlType:"button",size:40,type:T?"dot":void 0,icon:"info",label:T?void 0:W("wordPairs.caution","\uC720\uC758\uC0AC\uD56D"),ariaLabel:W("wordPairs.caution","\uC720\uC758\uC0AC\uD56D"),selected:!!Q,onClick:L=>te(L.currentTarget)})}),Q&&t.jsx(Sn,{title:W("wordPairs.caution","\uC720\uC758\uC0AC\uD56D"),items:B,anchorRect:Q,onClose:Y})]});return t.jsxs(On,{type:w,title:h,icon:m,disc:g,action:F,className:ye("phoneme-select-block",p),children:[j,(!S||y&&!(h||g))&&t.jsxs("div",{className:"phoneme-select-block__controls",children:[!S&&t.jsx(En,{options:O,value:String(a),onChange:V,size:40,className:"phoneme-select-block__count-control"}),y&&!(h||g)&&F]}),t.jsx("div",{className:"phoneme-select-block__cells",children:N?t.jsxs(t.Fragment,{children:[t.jsx("div",{className:"phoneme-select-block__cell-group",children:Array.from({length:a}).map((L,R)=>{const z=n[R*2]??{};return t.jsxs("div",{className:"phoneme-select-block__cell",children:[t.jsx("div",{className:"phoneme-select-block__cell-circle",children:t.jsx("div",{className:"phoneme-select-block__cell-jamo",children:P(z)})}),t.jsx("span",{className:"phoneme-select-block__cell-index caption-1",children:ee(R+1)})]},R)})}),t.jsx("span",{className:"phoneme-select-block__cell-vs h3",children:W("wordPairs.phonemeSelect.vs","\uB300")}),t.jsx("div",{className:"phoneme-select-block__cell-group",children:Array.from({length:a}).map((L,R)=>{const z=n[R*2+1]??{};return t.jsxs("div",{className:"phoneme-select-block__cell",children:[t.jsx("div",{className:"phoneme-select-block__cell-circle",children:t.jsx("div",{className:"phoneme-select-block__cell-jamo",children:P(z)})}),t.jsx("span",{className:"phoneme-select-block__cell-index caption-1",children:M(R+1)})]},R)})})]}):n.map((L,R)=>t.jsxs("div",{className:"phoneme-select-block__cell",children:[t.jsx("div",{className:"phoneme-select-block__cell-circle",children:t.jsx("div",{className:"phoneme-select-block__cell-jamo",children:P(L)})}),t.jsx("span",{className:"phoneme-select-block__cell-index caption-1",children:ee(R+1)})]},R))}),(l||c)&&t.jsx("div",{className:"phoneme-select-block__panels",children:t.jsx("div",{className:"phoneme-select-block__detail",children:N?t.jsxs("div",{className:"phoneme-select-block__pair-panels",children:[t.jsx("div",{className:"phoneme-select-block__panel-group",children:Array.from({length:a}).map((L,R)=>{const z=n[R*2]??{};return t.jsx(un,{title:H(ee(R+1),R===0),sections:c?c(z,R*2):l,selected:z,onSelect:u?.(R*2),align:"newline"},R)})}),t.jsx("div",{className:"phoneme-select-block__panel-group",children:Array.from({length:a}).map((L,R)=>{const z=n[R*2+1]??{};return t.jsx(un,{title:M(R+1),sections:c?c(z,R*2+1):l,selected:z,onSelect:u?.(R*2+1),align:"newline"},R)})})]}):n.map((L,R)=>t.jsx(un,{title:H(ee(R+1),R===0),sections:c?c(L,R):l,selected:L,onSelect:u?.(R),align:"newline"},R))})}),k&&t.jsx("div",{className:"phoneme-select-block__before-search",children:k}),(C||f||b)&&(()=>{const L=n.every(R=>Object.entries(R).every(([z,ae])=>!ae||z==="\uC885\uC131"&&ae==="\uC5C6\uC74C"));return t.jsxs("div",{className:"phoneme-select-block__search-row",onClick:L?v:void 0,children:[C&&t.jsx(oe,{htmlType:"button",size:"56",type:"bar",label:W("wordPairs.resetOptions","\uAC80\uC0C9 \uC635\uC158 \uCD08\uAE30\uD654"),selected:!1,disabled:L,onClick:L?void 0:C}),b?t.jsxs("div",{className:"phoneme-select-block__checking",children:[t.jsx("div",{className:"phoneme-select-block__spinner"}),t.jsx("span",{className:"button-1 phoneme-select-block__checking-label",children:_??W("wordSearch.searchButton","\uAC80\uC0C9\uD558\uAE30")})]}):f&&t.jsx(oe,{htmlType:"button",size:"56",type:"bar",variant:"main",label:_??W("wordSearch.searchButton","\uAC80\uC0C9\uD558\uAE30"),disabled:L||x,onClick:L||x?void 0:f})]})})(),A]})}function Gy({title:e,sections:n,selected:a,onSelect:r,className:o}){const{t:i}=he.useTranslation();return t.jsx(un,{className:o,title:e??i("wordSearch.filterTitle","\uB2E8\uC5B4 \uAC80\uC0C9 \uC124\uC815"),sections:n,selected:a,onSelect:r,align:"inline"})}function Ky({title:e,headerAction:n,sections:a,selected:r,onSelect:o,className:i}){const{t:l}=he.useTranslation();return a.length===0?null:t.jsx(un,{className:i,title:e??l("training.filter.phonemeGroup",{defaultValue:"\uD6C8\uB828 \uC74C\uC808"}),headerAction:n,sections:a,selected:r,onSelect:o,align:"newline"})}function Yy({title:e,mode:n,onModeChange:a,matchMode:r,onMatchModeChange:o,positionCount:i,onPositionCountChange:l,inputMode:c,onInputModeChange:u,className:d}){const{t:p}=he.useTranslation(),h={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")},m=f=>p("wordPairs.count",{n:f}),g=[{label:h.searchMode,items:[h.include,h.pick,h.explicit],display:"segmented",labelAction:t.jsx(oa,{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:h.phonemeOrder,items:[h.orderAny,h.orderMatch],display:"segmented",labelAction:t.jsx(oa,{items:p("wordPairs.filter.phonemeOrderInfo",{returnObjects:!0})})},{label:h.count,items:[m(1),m(2)],display:"segmented"},{label:h.inputMode,items:[h.charInput,h.pronInput],display:"segmented",labelAction:t.jsx(oa,{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={[h.searchMode]:n==="explicit"?h.explicit:n==="pick"?h.pick:h.include,[h.phonemeOrder]:r==="ordered"?h.orderMatch:h.orderAny,[h.count]:m(i),[h.inputMode]:c==="phoneme"?h.pronInput:h.charInput},C=(f,v)=>{v===h.searchMode?a(f===h.explicit?"explicit":f===h.pick?"pick":"include"):v===h.phonemeOrder?o(f===h.orderMatch?"ordered":"unordered"):v===h.count?l(f===m(2)?2:1):v===h.inputMode&&u(f===h.pronInput?"phoneme":"word")};return t.jsx(un,{className:d,title:e??p("wordPairs.filter.searchOptionsTitle","\uB300\uB9BD \uC124\uC815"),sections:g,selected:y,onSelect:C,align:"inline"})}function Zy(e){const{title:n,items:a,columns:r,gridTemplateColumns:o,searchPlaceholder:i,searchFn:l,defaultSortKey:c,defaultSortAsc:u=!0,selectedId:d,selectedIds:p,onSelect:h,onClose:m,pageSizeOptions:g=[10,25,50,100],initialPageSize:y,emptyText:C,countLabel:f,topContent:v,className:x=""}=e,{t:_}=he.useTranslation(),b=i??_("common.search","\uAC80\uC0C9"),N=C??_("common.emptyList","\uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4."),[w,k]=s.useState(""),[j,A]=s.useState(c??r[0]?.key??""),[S,q]=s.useState(u),[W,B]=s.useState(String(y??g[0]??10)),[O,E]=s.useState(1);s.useEffect(()=>{E(1)},[w,W]);const ee=l!==null,M=s.useCallback((R,z)=>{if(!z)return!0;const ae=z.toLowerCase();return r.some(ne=>{const re=R[ne.key];return re==null?!1:String(re).toLowerCase().includes(ae)})},[r]),H=l??M,Q=s.useMemo(()=>{const R=ee?a.filter(z=>H(z,w)):a;return j?[...R].sort((z,ae)=>{const ne=z[j]??"",re=ae[j]??"";if(ne===re)return 0;const pe=_b(ne,re);return S?pe:-pe}):R},[a,w,j,S,ee,H]),te=Math.max(1,Math.ceil(Q.length/Number(W)));O>te&&E(te);const Y=Math.min(O,te),V=Q.slice((Y-1)*Number(W),Y*Number(W)),T=s.useCallback(R=>{j===R?q(z=>!z):(A(R),q(!0))},[j]),P=s.useMemo(()=>{if(typeof f=="function"){const R=Q.length,z=f(R);if(typeof z=="string"){const ae=z.lastIndexOf(String(R));if(ae>=0)return{prefix:z.slice(0,ae),suffix:z.slice(ae+String(R).length)}}return{label:z}}if(typeof f=="string"&&f.includes("{n}")){const[R,z]=f.split("{n}");return{prefix:R,suffix:z}}return{prefix:_("common.totalCountPrefix","\uCD1D "),suffix:_("common.totalCountSuffix","\uAC1C")}},[f,Q.length,_]),F=s.useMemo(()=>r.map(R=>({label:R.label,onClick:R.sortable!==!1?()=>T(R.key):void 0,className:R.className,sortDir:R.sortable!==!1&&j===R.key?S?"asc":"desc":null})),[r,j,S,T]),L=s.useMemo(()=>g.map(R=>({value:String(R),label:_("common.pageSizeLabel",{n:R})})),[g,_]);return t.jsxs(yn,{className:`popup-list ${x}`,title:n,onClose:m,children:[v,"label"in P&&t.jsx("p",{className:"toolbar__count body-1",children:P.label}),t.jsx(gr,{count:"label"in P?void 0:{value:Q.length,prefix:P.prefix,suffix:P.suffix},search:ee?{value:w,onChange:k,placeholder:b}:void 0,pageSize:{options:L,value:W,onChange:B},pagination:{page:Y,total:te,onChange:E}}),t.jsx(Ar,{size:"medium",gridTemplateColumns:o,resizable:!0,fields:F,items:V,onRowClick:h,renderRow:R=>{const z=p!=null?R.id!=null&&p.has(R.id):d!=null&&R.id===d;return r.map(ae=>({content:ae.render?ae.render(R):R[ae.key]??"",className:ye(ae.className,z&&"popup-list__row--selected")}))},empty:N})]})}function Xy(e){const{title:n,message:a,topContent:r,details:o,children:i,confirmLabel:l,cancelLabel:c,hideCancel:u=!1,extraAction:d,confirmVariant:p="main",confirmDisabled:h=!1,onConfirm:m,closeOnConfirm:g=!0,onClose:y,inline:C,size:f="small",className:v}=e,{t:x}=he.useTranslation(),_=s.useRef(!1),[b,N]=s.useState(!1),w=async k=>{if(_.current)return;_.current=!0;const j=typeof document<"u"?document.activeElement:null;N(!0);let A=!1;try{A=await k()}finally{A||(_.current=!1,N(!1),requestAnimationFrame(()=>{const S=document.activeElement;(!S||S===document.body)&&j?.isConnected&&j.focus()}))}};return t.jsxs(yn,{title:n,onClose:y,closeDisabled:b,inline:C,size:f,className:ye("confirm-popup",v),buttons:[...d?[{label:d.label,variant:d.variant??"default",disabled:d.disabled||b,onClick:async({closeWithAnimation:k})=>{await w(async()=>{await d.onClick(k);const j=d.closeOnClick??!0;return j&&k(),j})}}]:[],...u?[]:[{label:c??x("common.cancel","\uCDE8\uC18C"),variant:"default",disabled:b,onClick:({closeWithAnimation:k})=>k()}],{label:l??x("common.confirm","\uD655\uC778"),variant:p,disabled:h||b,onClick:async({closeWithAnimation:k})=>{await w(async()=>(await m(k),g&&k(),g))}}],children:[r!=null&&t.jsx("div",{className:"confirm-popup__top",children:r}),o&&o.length>0&&t.jsx(Ma,{children:o.map((k,j)=>t.jsx(vn,{label:k.label,children:t.jsx("span",{className:"panel-row__text body-2",children:k.value})},j))}),t.jsx("p",{className:"body-2 confirm-popup__message",children:a}),i]})}function Jy({onApply:e,onCancel:n}){const{t:a}=he.useTranslation(),[r,o]=s.useState(""),[i,l]=s.useState(!1),[c,u]=s.useState(null),d=s.useRef(null);s.useEffect(()=>{d.current?.focus()},[]);const p=s.useCallback(async g=>{const y=r.trim();if(y){l(!0),u(null);try{await e(y),g()}catch(C){u(ms(C)),l(!1),requestAnimationFrame(()=>d.current?.focus())}}},[r,e]),h=s.useCallback((g,y)=>{g.key==="Enter"&&!g.nativeEvent.isComposing&&p(y)},[p]),m=g=>{o(g.target.value),u(null)};return t.jsx(yn,{className:"coupon-input-popup",title:a("usage.couponButton","\uCFE0\uD3F0 \uC785\uB825"),size:"small",onClose:n,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})=>t.jsxs(t.Fragment,{children:[t.jsx("input",{ref:d,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:m,onKeyDown:y=>h(y,g),disabled:i,autoComplete:"off",spellCheck:!1}),c&&t.jsx("p",{className:"coupon-input-popup__error caption-1",role:"alert",children:c})]})})}const Qy=200;function e5(e){return e.itemId?(B0()[e.trainingType]??[]).find(n=>n?.id!=null&&String(n.id)===String(e.itemId))??null:null}function t5({plan:e,anchorRect:n,offset:a=12,onClose:r}){const{t:o}=he.useTranslation(),i=s.useMemo(()=>D0(o).map(c=>({type:c,items:(e.items??[]).filter(u=>u.trainingType===c.key)})).filter(c=>c.items.length>0),[e.items,o]);if(i.length===0)return null;const l=t.jsx("div",{className:"tooltip-training__box",children:t.jsx("div",{className:"tooltip-training__groups",children:i.flatMap(({type:c,items:u},d)=>[d>0?t.jsx("div",{className:"tooltip-training__divider"},`div-${c.key}`):null,t.jsxs("div",{className:"tooltip-training__section",children:[t.jsx("div",{className:"tooltip-training__section-header",children:t.jsx("span",{className:"tooltip-training__type-label body-3b",children:c.label})}),t.jsx("div",{className:"tooltip-training__items",children:u.map((p,h)=>{const m=e5(p);return m?t.jsx(Nr,{index:h,type:c,trainingData:m,size:"compact",hideCheckBadge:!0},p.itemId??h):null})})]},c.key)])})});return n?t.jsx(Cn,{anchorRect:n,offset:a,onClose:r,closeOnOutsideClick:!1,className:"tooltip-training",ariaLabel:o("tooltip.training","\uD6C8\uB828 \uC548\uB0B4"),children:l}):l}const dc=["var(--color-main)","var(--color-sub)"],n5=2e3;function a5(e,n){if(!n.startsWith("var("))return n;try{const a=n.slice(4,-1).trim();return getComputedStyle(e).getPropertyValue(a).trim()||null}catch{return null}}function pc({active:e=!1,count:n=40,duration:a=2e3,strength:r=1,onComplete:o,trigger:i=0}){const l=s.useMemo(()=>{const C=Math.floor(n/2),f=n-C,v=(x,_)=>Array.from({length:x}).map((b,N)=>{const w=6+Math.random()*12,k=Math.round(Math.min(18,w*Math.min(1.5,1+r*.4))),j=dc[Math.floor(Math.random()*dc.length)],A=Math.random()*300,S=(360+Math.random()*260)*r*1.2,q=(_==="left"?-95+Math.random()*40:-85-Math.random()*40)*Math.PI/180,W=Math.cos(q)*S,B=Math.sin(q)*S*1.35,O=Math.random()*720-360,E=(1200+Math.random()*3e3)*Math.min(1.6,1+r*.3),ee=Math.random()>.7?"50%":"3px";return{id:`${_}-${N}`,side:_,size:k,color:j,delay:A,vx:W,vy:B,angularVel:O,life:E,borderRadius:ee}});return[...v(C,"left"),...v(f,"right")]},[n,r]),c=s.useRef(null),u=s.useRef({}),d=s.useRef(null),p=s.useRef(o);s.useEffect(()=>{p.current=o},[o]);const h=s.useRef(null),m=s.useRef(null),g=()=>{if(typeof document>"u")return null;let C=document.querySelector("[data-ihab-effect-root]");return C||(C=document.createElement("div"),C.className="app-effect",C.dataset.ihabEffectRoot="",C.style.position="fixed",C.style.inset="0",C.style.pointerEvents="none",C.style.zIndex="99998",document.body.appendChild(C)),C};if(typeof document<"u"&&m.current==null&&(m.current=g()),s.useEffect(()=>{if(!e)return;if(typeof window<"u"&&window.matchMedia?.("(prefers-reduced-motion: reduce)").matches){const Y=setTimeout(()=>p.current?.(),0);return()=>clearTimeout(Y)}const C=1200,f=performance.now(),v=m.current&&m.current!==document.body?m.current.getBoundingClientRect():null,x=Math.max(60,(window.innerHeight||800)*.05),_=Y=>Math.max(40,(Y||window.innerWidth)*.02),b=v?.width||window.innerWidth||375,N=v?.height||window.innerHeight||812,w=Y=>{const V=[...Y].sort((T,P)=>T-P);return V[Math.floor(V.length/2)]||1},k=w(l.map(Y=>Math.abs(Y.vy))),j=w(l.map(Y=>Math.abs(Y.vx))),A=Math.sqrt(2*C*(N*.72+x))/k,S=k*A/C,q=b*.5/(j*S),W=(Y,V,T)=>Math.min(T,Math.max(V,Y)),B=W(A,.8,2.4),O=W(q,.7,2.2),E=a>0?a/n5:1,ee=l.map(Y=>({...Y,life:Y.life*E,vx:Y.vx*O,vy:Y.vy*B,startTime:f+Y.delay,ended:!1})),M=v?{x:v.left-_(v.width),y:v.top+v.height+x}:{x:-_(window.innerWidth),y:window.innerHeight+x},H=v?{x:v.left+v.width+_(v.width),y:v.top+v.height+x}:{x:window.innerWidth+_(window.innerWidth),y:window.innerHeight+x},Q=Y=>{let V=!1;for(const T of ee){const P=u.current[T.id];if(!P||!P)continue;if(Y<T.startTime){P.style.display="none",V=!0;continue}if(!T._inited){const Z=T.side==="left"?M.x:H.x,ie=T.side==="left"?M.y:H.y;P.style.left=`${Z}px`,P.style.top=`${ie}px`,P.style.transform="translate3d(0px, 0px, 0)",P.style.display="block",P.style.zIndex="100000",typeof T.color=="string"&&T.color.startsWith("var(")&&(P.style.background=a5(P,T.color)??"#FF0060"),T._inited=!0}const F=(Y-T.startTime)/1e3;if(F<0)continue;const L=T.life/1e3;if(F>=L){P.style.opacity="0",P.style.display="none",T.ended=!0;continue}V=!0;const R=T.side==="left"?M.x:H.x,z=T.side==="left"?M.y:H.y,ae=R+T.vx*F,ne=z+T.vy*F+.5*C*F*F,re=(T.angularVel||0)*F,pe=ae-R,_e=ne-z;P.style.transform=`translate3d(${pe}px, ${_e}px, 0) rotate(${re}deg)`,P.style.opacity=`${Math.max(0,1-F/L)}`}V?d.current=requestAnimationFrame(Q):p.current?.()};d.current=requestAnimationFrame(Q);const te=setTimeout(()=>{try{if((m.current?m.current.querySelectorAll(".confetti"):document.querySelectorAll(".confetti")).length===0&&!document.querySelector(".party-container")){const Y=document.createElement("div");Y.className="party-container",Y.style.position="fixed",Y.style.inset="0",Y.style.pointerEvents="none",Y.style.overflow="visible",Y.style.zIndex="2147483647";for(const V of l){const T=document.createElement("span");T.className=`confetti confetti--${V.side}`,T.setAttribute("aria-hidden","true"),T.style.display="none",T.style.position="fixed",T.style.left="0px",T.style.top="0px",T.style.width=`${V.size}px`,T.style.height=`${Math.max(4,V.size*.6)}px`,T.style.background=V.color,T.style.borderRadius=V.borderRadius,T.style.transform="translate3d(0,0,0)",T.style.opacity="0",Y.appendChild(T),u.current[V.id]=T}(document.body||m.current).appendChild(Y),h.current=Y}}catch{}},300);return()=>{if(d.current&&cancelAnimationFrame(d.current),clearTimeout(te),h.current){try{h.current.remove()}catch{}h.current=null}}},[e,a,i,l]),!e)return null;const y=t.jsx("div",{className:"party-container",ref:c,children:l.map(C=>t.jsx("span",{"aria-hidden":!0,ref:f=>{u.current[C.id]=f},className:`confetti confetti--${C.side}`,style:{width:`${C.size}px`,height:`${Math.max(4,C.size*.6)}px`,background:C.color,borderRadius:C.borderRadius}},`${C.id}-${i}`))});return typeof document<"u"?It.createPortal(y,m.current||document.body):y}function r5({trigger:e=0,active:n=!1}){const a=s.useRef(0);return s.useEffect(()=>{a.current=e},[e]),t.jsx(pc,{active:n,trigger:e})}function o5({title:e,sub:n,rightAction:a,titleAction:r,badge:o,badgeVariant:i="default",documentTitle:l,onBack:c,backLabel:u,wrap:d=!1}){const{t:p}=he.useTranslation();q0(typeof e=="string"?e:l??null);const h=u??p("common.back","\uB4A4\uB85C");return t.jsxs("div",{className:d?"page-title page-title--wrap":"page-title",children:[t.jsxs("div",{className:"page-title__main",children:[t.jsxs("div",{className:"page-title__title-row",children:[c&&t.jsx(oe,{htmlType:"button",className:"page-title__back",size:48,type:"dot",icon:"chevron-left",iconSize:"large",useBorder:!1,iconColor:"var(--color-text-primary)",ariaLabel:h,showTooltipInfo:h,onClick:c}),t.jsx("h1",{className:"page-title__title h1",children:e}),o&&t.jsx("div",{className:"page-title__badge",children:t.jsx(it,{label:o,size:"small",variant:i,fill:"outline"})}),r?t.jsx("div",{className:"page-title__title-action",children:r}):null]}),n&&t.jsx("p",{className:"page-title__sub body-2",children:n})]}),a?t.jsx("div",{className:"page-title__action",children:a}):null]})}function s5(e){return e??""}const hc=s.createContext({words:[],loading:!1});function i5(){return s.useContext(hc)}function l5({words:e,loading:n,error:a,statusMessage:r,localVersion:o,remoteVersion:i,progress:l,clearAndRefetch:c,checkRemoteVersion:u,children:d}){return t.jsx(hc.Provider,{value:{words:e,loading:n,error:a,statusMessage:r,localVersion:o,remoteVersion:i,progress:l,clearAndRefetch:c,checkRemoteVersion:u},children:d})}function c5({items:e,actions:n,columns:a,flat:r=!1,className:o,style:i}){const l=a??e.length;return t.jsx("section",{className:ye("summary-strip",r&&"summary-strip--flat",o),style:{"--summary-strip-cols":String(l),...i},children:t.jsxs("div",{className:"summary-strip__row",children:[t.jsx("div",{className:"summary-strip__items",children:e.map((c,u)=>t.jsxs("div",{className:"summary-strip__item",children:[t.jsx("p",{className:"summary-strip__label caption-1",children:c.label}),t.jsx("p",{className:"summary-strip__value body-3b",children:c.value})]},u))}),n&&t.jsx("div",{className:"summary-strip__actions",children:n})]})})}const u5=(e,n)=>`${e} / ${n}`;function d5({blocks:e,sectionTitles:n,logo:a,footer:r,pageLabel:o=u5,pageWidth:i,pageHeight:l,margin:c,className:u,style:d}){const{t:p}=he.useTranslation(),h=s.useRef(null),m=s.useRef(null),g=s.useRef(null),y=s.useRef(null),[C,f]=s.useState(null),[v,x]=s.useState(!1);s.useEffect(()=>{const B=h.current;if(!B)return;const O=()=>x(B.scrollWidth>B.clientWidth+1);if(O(),typeof ResizeObserver>"u")return;const E=new ResizeObserver(O);return E.observe(B),()=>E.disconnect()},[C]);const _=e.map(B=>`${B.id}\0${B.section??""}\0${B.group??""}`).join(""),b=C&&C.shape===_?C.pages:null,[N,w]=s.useState(0);s.useEffect(()=>{const B=y.current;if(!B||typeof ResizeObserver>"u")return;const O=new ResizeObserver(()=>w(B.offsetHeight));return O.observe(B),()=>O.disconnect()},[]),s.useLayoutEffect(()=>{const B=m.current,O=y.current;if(!B||!O)return;const E=new Map;g.current?.querySelectorAll("[data-chrome-section]").forEach(T=>{E.set(T.dataset.chromeSection??"",T.offsetHeight)});const ee=T=>O.offsetHeight-(E.get(T??"")??0),M=Array.from(B.children).map(T=>T.offsetHeight),H=[];e.forEach((T,P)=>{const F=H[H.length-1],L=F?e[F[0]]:void 0;L&&T.group!=null&&L.group===T.group?F.push(P):H.push([P])});const Q=[];let te=[],Y=0;const V=()=>{te.length&&Q.push(te),te=[],Y=0};H.forEach(T=>{const P=T.reduce((L,R)=>L+M[R],0),F=ee(e[T[0]].section);te.length&&e[te[0]].section!==e[T[0]].section&&V(),te.length&&Y+P>F&&V(),P>F?T.forEach(L=>{te.length&&Y+M[L]>F&&V(),te.push(L),Y+=M[L]}):(T.forEach(L=>te.push(L)),Y+=P)}),V(),f({shape:_,pages:Q})},[_,N]);const k=Cr,j=k,A=r??t.jsxs(t.Fragment,{children:[t.jsx("img",{src:j,alt:"IHAB",className:"report-doc__logo"}),"\xA9 IHAB, Inc. All rights reserved."]}),S=(B,O,E)=>({header:t.jsxs("div",{className:"report-doc__header",children:[t.jsx("h2",{className:"report-doc__title h3b",children:E!=null&&n?.[E]||null}),a]}),footer:t.jsxs("div",{className:"report-doc__footer caption-1",children:[t.jsx("span",{className:"report-doc__footer-left",children:A}),t.jsx("span",{className:"report-doc__page-no",children:o(B,O)})]})}),q=Array.from(new Set(e.map(B=>B.section??""))),W={...i?{"--report-page-w":i}:null,...l?{"--report-page-h":l}:null,...c?{"--report-margin":c}:null,...d};return t.jsxs("div",{ref:h,className:ye("report-doc",u),style:W,tabIndex:v?0:void 0,role:v?"group":void 0,"aria-label":v?p("report.previewRegion","\uBCF4\uACE0\uC11C \uBBF8\uB9AC\uBCF4\uAE30"):void 0,children:[t.jsxs("div",{className:"report-doc__measure","aria-hidden":!0,children:[t.jsx("div",{ref:y,className:"report-doc__ruler"}),t.jsx("div",{ref:g,children:q.map(B=>{const O=S(1,1,B||void 0);return t.jsxs("div",{"data-chrome-section":B,children:[O.header,O.footer]},B)})}),t.jsx("div",{ref:m,className:"report-doc__measure-blocks",children:e.map(B=>t.jsx("div",{children:B.content},B.id))})]}),b&&t.jsx("div",{className:"report-doc__pages",children:b.map((B,O)=>{const{header:E,footer:ee}=S(O+1,b.length,e[B[0]].section);return t.jsxs("section",{className:"report-doc__page",children:[E,B.map(M=>t.jsx("div",{children:e[M].content},e[M].id)),ee]},O)})})]})}function p5({title:e,fields:n,columns:a=4,className:r,style:o}){return t.jsxs("div",{className:ye("report-info",r),style:{"--report-info-cols":String(a),...o},children:[e&&t.jsx("p",{className:"report-info__title h5b",children:e}),t.jsx("div",{className:"report-info__grid",children:n.map((i,l)=>t.jsxs("div",{className:"report-info__field body-2",children:[t.jsx("span",{className:"report-info__label body-3",children:i.label}),t.jsx("span",{className:"report-info__value",children:i.value})]},l))})]})}function h5({title:e,message:n,actionLabel:a,onAction:r,icon:o,onClose:i,className:l=""}){const{t:c}=he.useTranslation(),u=a??c("common.update","\uC5C5\uB370\uC774\uD2B8");return t.jsxs("div",{className:ye("update-alert",l),role:"alert",children:[i&&t.jsx("button",{type:"button",className:"update-alert__close",onClick:i,"aria-label":c("common.close","\uB2EB\uAE30"),children:"\xD7"}),t.jsxs("div",{className:"update-alert__top",children:[t.jsx("div",{className:"update-alert__icon",children:o??t.jsx(xo,{size:20,strokeWidth:2})}),t.jsxs("div",{className:"update-alert__body",children:[t.jsx("div",{className:"update-alert__title h4",children:e}),t.jsx("div",{className:"update-alert__message body-3",children:n})]})]}),r&&t.jsx(oe,{htmlType:"button",size:32,variant:"main",shape:"pill",className:"update-alert__action",onClick:r,children:u})]})}function m5({title:e,description:n,topActions:a,children:r,footerLeft:o,footerRight:i,onClick:l,draggable:c,onDragStart:u,onDragEnd:d,className:p}){const h=o!=null||i!=null,m=r!=null&&r!==!1,g=s.useCallback(y=>{l&&y.target===y.currentTarget&&(y.key==="Enter"||y.key===" ")&&(y.preventDefault(),l())},[l]);return t.jsxs("div",{className:ye("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:u,onDragEnd:d,children:[t.jsxs("div",{className:"training-card__header",children:[t.jsxs("div",{className:"training-card__title-row",children:[typeof e=="string"?t.jsx("h3",{className:"training-card__title h4",children:e}):e,a!=null&&t.jsx("div",{className:"training-card__top-actions",onClick:y=>y.stopPropagation(),children:a})]}),n!=null?typeof n=="string"?t.jsx("p",{className:"training-card__description body-3",children:n}):n:t.jsx("p",{className:"training-card__description body-3","aria-hidden":"true",children:" "})]}),m&&t.jsx("div",{className:"training-card__body",children:r}),h&&t.jsxs("div",{className:"training-card__footer",children:[o!=null&&t.jsx("div",{className:"training-card__footer-left",children:o}),i!=null&&t.jsx("div",{className:"training-card__meta",children:i})]})]})}function f5({title:e,count:n,collapsed:a=!1,onToggle:r,sort:o,actions:i,empty:l=!1,emptyContent:c,dragOver:u=!1,onDragOver:d,onDragLeave:p,onDrop:h,children:m,className:g}){const{t:y}=he.useTranslation(),C=r!=null,f=ye("training-card-group",u&&"training-card-group--dragover",a&&"training-card-group--collapsed",C&&"training-card-group--collapsible",g);return t.jsxs("div",{className:f,onDragOver:d,onDragLeave:p,onDrop:h,children:[t.jsxs("header",{className:"training-card-group__header",children:[C&&t.jsx(oe,{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"?t.jsx("span",{className:"training-card-group__title h5b",children:e}):e,n!==void 0&&t.jsx("span",{className:"training-card-group__count body-3b",children:n}),(o||i!=null)&&t.jsxs("span",{className:"training-card-group__actions",onClick:v=>v.stopPropagation(),children:[o&&t.jsx(Gt,{size:40,options:o.options,value:o.value,placeholder:o.placeholder,onChange:o.onChange}),i]})]}),!a&&(l?t.jsx("div",{className:"training-card-group__empty body-3",children:c}):t.jsx("div",{className:"training-card-group__grid",children:m}))]})}const C5="speechear:saved_word_tables";function g5(e){if(typeof e!="object"||e===null)return!1;const n=e;return typeof n.id=="string"&&typeof n.name=="string"&&Array.isArray(n.items)}function b5(){try{const e=localStorage.getItem(C5);if(!e)return[];const n=JSON.parse(e);return Array.isArray(n)?n.filter(g5):[]}catch{return[]}}function y5({title:e,titleIcon:n,disc:a,items:r,onSaveComplete:o,onLoad:i,onRemoveItem:l,onReset:c,resetLabel:u,saveButtonLabel:d,secondarySaveButtonLabel:p,onReorder:h,showCellCount:m,onAddItem:g,className:y,renderSavePopup:C,renderWordSearch:f,hideControls:v,saveOnly:x,tableName:_,nameValue:b,onNameChange:N,descriptionValue:w,onDescriptionChange:k,namePlaceholder:j,descriptionPlaceholder:A,existingNames:S,editingName:q,onCancel:W}){const{t:B}=he.useTranslation(),O=u??B("wordPrint.clearAllSelection","\uBAA8\uB450 \uC120\uD0DD \uD574\uC81C"),E=r===void 0,ee=!!N,[M,H]=s.useState([]),Q=(b??"").trim(),te=Q||(j??"").trim(),Y=(w??"").trim()||(A??"").trim(),V=(S??[]).map($=>$.trim().toLowerCase()),T=[q?.trim().toLowerCase(),...M].filter($=>!!$),P=[...V];for(const $ of T){const G=P.indexOf($);G!==-1&&P.splice(G,1)}const F=Q!==""&&P.includes(Q.toLowerCase()),[L,R]=s.useState(Array(4).fill(null)),[z,ae]=s.useState(4),[ne,re]=s.useState(null),[pe,_e]=s.useState("landscape"),[Z,ie]=s.useState(["\uC774\uBBF8\uC9C0","\uB2E8\uC5B4","\uD45C\uC900 \uBC1C\uC74C"]),[J,be]=s.useState("\uD45C\uC2DC"),[xe,Ce]=s.useState(!0),[fe,ve]=s.useState(!0),Se=s.useRef(null),X=s.useRef([]),[ue,ke]=s.useState(8),[Le,Fe]=s.useState("right"),[De,Pe]=s.useState(!1),[Me,Je]=s.useState(!1),{toastMessage:ze,toastType:Ve,showWarning:ge,clearToast:He}=ui("warning"),Be=s.useCallback(()=>re(null),[re]);g&&!E&&!m&&qn("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[Ee,Ne]=s.useState(()=>Math.max(r?.length??1,1));s.useEffect(()=>{E||Ne($=>Math.max($,r?.length??1))},[r?.length,E]);const nt=E?z:m?Math.max(Ee,r?.length??1):Math.max(r?.length??0,1),{width:ft,height:tt}=Vn[pe],rt=!E&&!m,Ke=r?.length??0,je=Math.min(ue,Math.max(Ke,1)),Qe=rt?je:nt,ut=rt?dl(r??[],Qe):null,qe=!!ut&&ut.length>1,Ye=E?L.some($=>$!==null&&$.length>1):(r??[]).some($=>$.words.length>1),Ie=_?.trim()||`${ys(y0())} ${Ye?B("wordTable.printFileNamePair","\uB300\uB9BD\uC30D\uD45C"):B("wordTable.printFileNameSingle","\uB2E8\uC5B4\uD45C")}`,Ze=s.useCallback(()=>qe?X.current.filter($=>$!==null):Se.current?[Se.current]:[],[qe]),{print:ot,openNewWindow:Ft,downloadHtml:dt}=$r({getElements:Ze,paperW:ft,paperH:tt,fileName:Ie,onPopupBlocked:()=>{ge(B("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."))}}),At=$=>{ae($),R(G=>{const le=Array($).fill(null);return G.slice(0,$).forEach((de,ce)=>{le[ce]=de}),le}),re(null)},dn=$=>{R(G=>{const le=[...G];return le[$]=null,le}),ne===$&&re(null)},Qt=$=>{if(ne===null)return;const G=ne;R(de=>{const ce=[...de];return ce[G]=$,ce});const le=L.findIndex((de,ce)=>ce>G&&de===null);re(le!==-1?le:null)},bt=E?L.some($=>$?.some(G=>!!G.colloquialPronunciation)):(r??[]).some($=>$.words.some(G=>!!G.colloquialLabel)),yt=s.useMemo(()=>Rn()?E?L.flatMap($=>($??[]).map(G=>[G.word,G.homonum])):(r??[]).flatMap($=>$.words.map(G=>[G.label,G.homonum])):[],[E,L,r]),[Tt,Rt]=s.useState(!1);s.useEffect(()=>{if(yt.length===0)return;let $=!1;return Promise.all(yt.map(([G,le])=>us(G,le))).then(G=>{$||Rt(G.some(Boolean))}),()=>{$=!0}},[yt]);const en=yt.length>0&&Tt,_n=s.useMemo(()=>[...E||m?[{label:B("wordTable.filter.columns","\uCE78 \uC218"),items:cb.map($=>({value:`${$}\uCE78`,displayLabel:B("wordTable.filter.column",{count:$})})),display:"segmented"}]:[],...rt&&(r?.length??0)>0?[kl(B,{hasPairs:Ye,itemCount:Ke})]:[],...qe?[Al(B)]:[]],[B,E,m,rt,r?.length,Ye,Ke,qe]),Xe={...E||m?{[B("wordTable.filter.columns","\uCE78 \uC218")]:`${E?z:Ee}\uCE78`}:{},...rt&&(r?.length??0)>0?{[B(Ye?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord")]:`${je}\uAC1C`}:{},...qe?{[B("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")]:Nl[Le]}:{}},Et=($,G)=>{if(G===B("wordTable.filter.columns","\uCE78 \uC218"))E?At(parseInt($)):Ne(parseInt($));else if(G===B(Ye?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord")){const le=parseInt($);ke(Tr.includes(le)?le:Number.POSITIVE_INFINITY)}else G===B("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")&&Fe(Bl($))},vt=E?L.filter($=>$!==null).map($=>({id:$[0].word,words:$.map(G=>({label:G.word,subLabel:G.pronunciation,homonum:G.homonum}))})):r??[],Ot=($=!1)=>{if(Je($),ee&&o){const G=te.trim().toLowerCase();G&&H(le=>le.includes(G)?le:[...le,G]),o(te,vt,Y||void 0,$);return}if(x&&o){o("",vt,void 0,$);return}if(o){Pe(!0);return}dt()},[Mt,Yt]=s.useState(!1),[tn,nn]=s.useState(""),Pt=tn.trim(),Vt=Pt!==""&&V.includes(Pt.toLowerCase()),pn=()=>{nn(te?B("wordTable.save.copyName",{name:te,defaultValue:"{{name}} (\uBCF5\uC0AC)"}):""),Yt(!0)},xt=()=>{!Pt||Vt||!o||(o(Pt,vt,Y||void 0,!0),Yt(!1))},Ht=vt.length===0,Zt=Ht||ee&&(te===""||F),Nt=()=>{if(Ht){ge(B("wordTable.emptyItems","\uB2E8\uC5B4\uB97C 1\uAC1C \uC774\uC0C1 \uCD94\uAC00\uD574\uC8FC\uC138\uC694."));return}if(ee&&te===""){ge(B("wordTable.save.nameRequired","\uD45C \uC774\uB984\uC744 \uC785\uB825\uD574 \uC8FC\uC138\uC694."));return}ee&&F&&ge(B("wordTable.save.duplicateName","\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4."))},I=t.jsx(Hn,{items:vt,orientation:pe,contentTypes:Z,cutLine:J,showOutline:xe,showDivLine:fe,count:nt});return t.jsxs(t.Fragment,{children:[t.jsxs(On,{type:"page",icon:n,title:e,disc:a,className:ye("word-table-block",y),children:[Mt&&t.jsx(yn,{size:"small",title:p??B("wordTable.saveAsNewButton","\uB2E4\uB978 \uC774\uB984\uC73C\uB85C \uC800\uC7A5"),onClose:()=>Yt(!1),footer:({closeWithAnimation:$})=>t.jsxs(t.Fragment,{children:[t.jsx(oe,{htmlType:"button",size:48,type:"bar",label:B("common.cancel","\uCDE8\uC18C"),onClick:$}),t.jsx(oe,{htmlType:"button",size:48,type:"bar",variant:"main",label:B("common.save","\uC800\uC7A5"),disabled:!Pt||Vt,onClick:xt})]}),children:t.jsx(Tn,{label:B("wordTable.save.nameLabel","\uC774\uB984"),value:tn,onChange:nn,placeholder:B("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:xt,error:Vt?B("wordTable.save.duplicateName","\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4."):void 0})}),De&&o&&C?.({defaultName:typeof e=="string"?e:B("wordTable.defaultName","\uB2E8\uC5B4 \uD45C"),preview:I,previewW:ft,previewH:tt,items:vt,existingNames:b5().map($=>$.name),saveAsNew:Me,onSave:($,G)=>{o($,vt,G,Me),Pe(!1)},onCancel:()=>Pe(!1)}),(E||g)&&ne!==null&&f?.({cellIndex:ne,onConfirm:E?Qt:$=>{if(g){const G=$[0];G&&g({id:G.word,words:[{label:G.word,subLabel:G.pronunciation,homonum:G.homonum}]})}re(null)},onClose:Be}),!v&&t.jsx(Er,{hasImage:en,hasColloquial:bt,contentTypes:Z,orientation:pe,showOutline:xe,cutLine:J,showDivLine:fe,setters:{setContentTypes:ie,setOrientation:_e,setShowOutline:Ce,setCutLine:be,setShowDivLine:ve},showCutLine:(rt?Qe:nt)>1,showDivLine2:Ye,middleSections:_n,extraSelected:Xe,onExtraSelect:Et}),qe&&ut?t.jsx("div",{className:"word-table-block__pages",children:ut.map(($,G)=>t.jsx(Hn,{orientation:pe,contentTypes:Z,cutLine:J,showOutline:xe,showDivLine:fe,count:Qe,items:$,onRemoveItem:l,contentRef:le=>{X.current[G]=le},pageNumber:{current:G+1,total:ut.length},pageNumberPosition:Le},G))}):t.jsx(Hn,{orientation:pe,contentTypes:Z,cutLine:J,showOutline:xe,showDivLine:fe,count:nt,items:E?void 0:r??[],editCells:E?L:void 0,activeCell:ne,onActivateCell:E||g?re:void 0,onRemoveCell:E?dn:void 0,onRemoveItem:E?void 0:l,onReorder:E?void 0:h,showFillerAdd:!!g,contentRef:Se}),ee&&!v&&t.jsxs(Ma,{size:"medium",labelWidth:64,useBorder:!1,useRowBorder:!1,className:"word-table-block__meta",children:[t.jsx(vn,{variant:"custom",label:B("wordTable.save.nameLabel","\uC774\uB984"),required:!0,align:"vertical",useFullWidth:!0,children:t.jsx(Tn,{required:!0,value:b??"",onChange:N,placeholder:j?j+B("wordTable.save.autoFillHint"," (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)"):B("wordTable.save.placeholder","\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC81C\uBAA9\uC744 \uC785\uB825\uD558\uC138\uC694."),ariaLabel:B("wordTable.save.nameLabel","\uC774\uB984"),maxLength:40,size:48,fullWidth:!0,error:F?B("wordTable.save.duplicateName","\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4."):void 0,onKeyDown:$=>{($.key==="Tab"&&!$.shiftKey||$.key===" ")&&!(b??"").trim()&&(j??"").trim()&&($.preventDefault(),N?.(j??""))}})}),t.jsx(vn,{variant:"custom",label:B("wordTable.save.descriptionLabel","\uC124\uBA85"),align:"vertical",useFullWidth:!0,children:t.jsx(Tn,{value:w??"",onChange:k,placeholder:A?A+B("wordTable.save.autoFillHint"," (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)"):B("wordTable.save.descriptionPlaceholder","\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC124\uBA85\uC744 \uC785\uB825\uD558\uC138\uC694."),ariaLabel:B("wordTable.save.descriptionLabel","\uC124\uBA85"),maxLength:200,multiline:!0,rows:2,fullWidth:!0,onKeyDown:$=>{($.key==="Tab"&&!$.shiftKey||$.key===" ")&&!(w??"").trim()&&(A??"").trim()&&($.preventDefault(),k?.(A??""))}})})]})]}),!v&&t.jsxs("div",{className:"word-table-block__actions",children:[t.jsxs("div",{className:"word-table-block__actions-left",children:[!x&&c&&t.jsx(oe,{htmlType:"button",size:40,type:"bar",label:O,onClick:c}),!x&&i&&t.jsx(oe,{htmlType:"button",size:40,type:"bar",label:B("wordTable.load","\uBD88\uB7EC\uC624\uAE30"),onClick:i}),!x&&t.jsx(oe,{htmlType:"button",size:40,type:"bar",label:B("wordTable.openNewWindow","\uC0C8 \uCC3D\uC73C\uB85C \uBCF4\uAE30"),onClick:Ft})]}),t.jsxs("div",{className:"word-table-block__actions-right",children:[W&&t.jsx(oe,{htmlType:"button",size:"56",type:"bar",label:B("common.cancel","\uCDE8\uC18C"),onClick:W}),!x&&t.jsx(oe,{htmlType:"button",size:"56",type:"bar",label:B("wordTable.print","\uC778\uC1C4\uD558\uAE30"),onClick:ot}),p&&t.jsx(oe,{htmlType:"button",size:"56",type:"bar",label:p,onClick:()=>ee?pn():Ot(!0),disabled:Ht,onDisabledClick:()=>{ge(B("wordTable.emptyItems","\uB2E8\uC5B4\uB97C 1\uAC1C \uC774\uC0C1 \uCD94\uAC00\uD574\uC8FC\uC138\uC694."))}}),t.jsx(oe,{htmlType:"button",size:"56",type:"bar",variant:"main",label:d??B("wordTable.saveButton","\uC800\uC7A5\uD558\uAE30"),onClick:()=>Ot(!1),disabled:Zt,onDisabledClick:Nt})]})]}),t.jsx(Fn,{message:ze,type:Ve,onClose:He})]})}function mc({items:e,className:n}){const a=e.length,r=a<=3?1:2,o=Math.ceil(a/r)||1,i=r*o;return t.jsx("div",{className:ye("word-table-thumb",n),style:{gridTemplateColumns:`repeat(${r}, 1fr)`},children:Array.from({length:i},(l,c)=>{const u=e[c];return u?t.jsx("div",{className:"word-table-thumb__cell",children:(u.words.length?u.words:[{label:u.id}]).map((d,p)=>t.jsxs(s.Fragment,{children:[p>0&&t.jsx("span",{className:"word-table-thumb__divider"}),t.jsx("span",{className:"word-table-thumb__word body-3",children:d.label})]},p))},c):t.jsx("div",{className:"word-table-thumb__cell word-table-thumb__cell--empty"},c)})})}function v5({items:e,name:n,description:a,createdAt:r,published:o,publishedLabel:i,shared:l,sharedLabel:c,isNew:u,publisherName:d,publishedAt:p,likeCount:h,downloadCount:m,onPublisherClick:g,selected:y,onClick:C,onMore:f,titleNode:v,className:x}){const{t:_}=he.useTranslation(),b=v!=null,N=d!=null||p!=null||h!=null||m!=null,w=k=>{k.target===k.currentTarget&&!b&&(k.key==="Enter"||k.key===" ")&&(k.preventDefault(),C?.())};return t.jsxs("div",{className:ye("word-table-button",y?"word-table-button--selected":"",N?"":"word-table-button--no-footer",x),role:"button",tabIndex:0,"aria-label":n,onClick:b?void 0:C,onKeyDown:w,children:[u&&t.jsx("span",{className:"word-table-button__new-dot","aria-label":_("myWordTable.newBadge","\uC0C8\uB85C \uB9CC\uB4E0 \uD45C")}),t.jsx(mc,{items:e,className:"word-table-button__thumb"}),t.jsxs("div",{className:"word-table-button__info",children:[t.jsxs("div",{className:"word-table-button__info-text",children:[v??t.jsx("div",{className:"word-table-button__title h4",children:n}),a&&t.jsx("div",{className:"word-table-button__desc body-3",children:a})]}),f&&!b&&t.jsx(oe,{htmlType:"button",className:"word-table-button__more",size:32,type:"dot",variant:"transparent-gray",useBorder:!1,icon:"ellipsis",ariaLabel:_("common.moreFor",{name:n}),onClick:k=>{k.stopPropagation(),f(k)}})]}),(r||o||l)&&t.jsxs("div",{className:"word-table-button__meta-row",children:[t.jsx("span",{className:"word-table-button__meta caption-1",children:r?bs(r,_):""}),t.jsxs("span",{className:"word-table-button__badges",children:[o&&t.jsx(it,{className:"word-table-button__badge",size:"small",variant:"main",fill:"soft",iconLeft:"book-marked",label:i??_("myWordTable.publishedBadge","\uBC1C\uD589\uB428")}),l&&t.jsx(it,{className:"word-table-button__badge",size:"small",fill:"soft",iconLeft:"link",label:c??_("myWordTable.sharedBadge","\uACF5\uC720 \uC911")})]})]}),N&&t.jsxs("div",{className:"word-table-button__footer",children:[t.jsxs("span",{className:"word-table-button__store-by",children:[d&&t.jsx("button",{className:"training-card__publisher body-4",type:"button",onClick:k=>{k.stopPropagation(),g?.()},children:d}),p&&t.jsx("span",{className:"training-card__date body-4",children:bs(p,_)})]}),t.jsxs("span",{className:"word-table-button__store-stats",children:[h!=null&&t.jsx(it,{size:"small",fill:"soft",variant:"like",iconLeft:"heart",label:String(h)}),m!=null&&t.jsx(it,{size:"small",fill:"soft",variant:"main",iconLeft:"download",label:String(m)})]})]})]})}/**
969
969
  * @license lucide-react v1.38.0 - ISC
970
970
  *
971
971
  * This source code is licensed under the ISC license.
@@ -975,4 +975,4 @@ ${b.badge}`:b.badge:void 0;if(w&&u(b.code))return null;if(!b.badge&&!p)return h(
975
975
  *
976
976
  * This source code is licensed under the ISC license.
977
977
  * See the LICENSE file in the root directory of this source tree.
978
- */const w5=[["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"}]],k5=K("circle-x",w5);function A5(e){return{idle:0,"word-download":1,"image-list":2,"image-match":2,"pair-build":3,done:4}[e]??0}function ao({icon:e,label:n,state:a,pct:r,subText:o}){const{t:i}=he.useTranslation(),l=a==="done",c=a==="pending",u=a==="error",d=l?100:r??0;return t.jsxs("div",{className:"wdup-phase-card",children:[t.jsx("div",{className:`wdup-phase-card__icon${l?" wdup-phase-card__icon--done":u?" wdup-phase-card__icon--error":""}`,children:l?t.jsx(Ao,{size:22,color:"white",strokeWidth:2.5}):u?t.jsx(k5,{size:22,color:"white",strokeWidth:2.5}):t.jsx("span",{className:`wdup-phase-card__icon-inner${c?" wdup-phase-card__icon-inner--pending":""}`,children:e})}),t.jsxs("div",{className:"wdup-phase-card__body",children:[t.jsxs("div",{className:"wdup-phase-card__top",children:[t.jsx("span",{className:`wdup-phase-card__label body-2${c?" wdup-phase-card__label--pending":""}`,children:n}),l?t.jsx(it,{variant:"sub",fill:"soft",size:"small",label:i("common.done","\uC644\uB8CC")}):u?t.jsx(it,{variant:"danger",fill:"soft",size:"small",label:i("common.failed","\uC2E4\uD328")}):(o||r!==void 0)&&t.jsxs("span",{className:"wdup-phase-card__sub body-3",children:[o,o&&r!==void 0?` \xB7 ${r}%`:r!==void 0?`${r}%`:""]})]}),!c&&t.jsx("div",{className:"wdup-bar",children:t.jsx("div",{className:`wdup-bar__fill${l?" wdup-bar__fill--done":u?" wdup-bar__fill--error":""}${a==="active"&&r===void 0?" wdup-bar__fill--indeterminate":""}`,style:{width:r!==void 0||l||u?`${u?100:d}%`:void 0}})})]})]})}function N5({title:e,progress:n,onDone:a,onRetry:r,onClose:o,inline:i}){const{t:l}=he.useTranslation(),{phase:c,error:u,wordCount:d,imagePage:p,imageDone:h,imageTotal:m,pairPercent:g}=n,y=A5(c),C=c==="done",f=!!u;function v(k){return f&&y===k?"error":y>k?"done":y===k?"active":"pending"}const x=v(1),_=v(2),b=v(3),N=c==="image-match"&&m?Math.round((h??0)/m*100):void 0,w=s.useMemo(()=>{if(_!=="done"){if(c==="image-list")return l("wordData.checkingPage",{page:p??1});if(c==="image-match"&&m)return l("wordData.imageCount",{done:or(h),total:or(m)})}},[_,c,p,m,h,l]);return t.jsx(yn,{inline:i,className:"popup--word-data-update",title:e,footer:f&&r?t.jsx(oe,{htmlType:"button",size:56,variant:"main",onClick:r,children:l("common.retry","\uB2E4\uC2DC \uC2DC\uB3C4")}):f?t.jsx(oe,{htmlType:"button",size:56,variant:"main",onClick:o??a,children:l("common.close","\uB2EB\uAE30")}):t.jsx(oe,{htmlType:"button",size:56,variant:"main",disabled:!C,onClick:a,children:l("common.done","\uC644\uB8CC")}),children:t.jsxs("div",{className:"wdup-cards",children:[t.jsx(ao,{icon:t.jsx(vo,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:l("wordData.phaseWordDownload","\uB2E8\uC5B4 \uB370\uC774\uD130 \uB2E4\uC6B4\uB85C\uB4DC"),state:x,subText:x==="active"?l("wordData.downloadingCount",{n:or(d)}):void 0}),t.jsx(ao,{icon:t.jsx(_5,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:l("wordData.phaseImageCheck","\uC774\uBBF8\uC9C0 \uD655\uC778"),state:_,pct:N,subText:w}),t.jsx(ao,{icon:t.jsx(wo,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:l("wordData.phasePairAnalysis","\uB2E8\uC5B4\uC30D \uBD84\uC11D"),state:b,pct:b==="active"?g??0:void 0,subText:void 0})]})})}function B5({enabled:e=!1,renderResultPopup:n}={}){const{t:a}=he.useTranslation(),[r,o]=s.useState(null),[i,l]=s.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),o(g)},u=s.useCallback(()=>{o(null),l(null)},[]),d=s.useCallback(()=>c("noise"),[]),p=s.useCallback(()=>c("short"),[]),h=s.useCallback(()=>c("long"),[]),m=s.useCallback(()=>c("order"),[]);return e?t.jsxs("div",{className:"debug-result-launcher",children:[t.jsxs("div",{className:"debug-buttons",children:[t.jsx("button",{type:"button",className:"debug-button",onClick:d,children:a("debug.showResult",{type:"Noise",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})}),t.jsx("button",{type:"button",className:"debug-button",onClick:p,children:a("debug.showResult",{type:"ShortStory",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})}),t.jsx("button",{type:"button",className:"debug-button",onClick:h,children:a("debug.showResult",{type:"LongStory",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})}),t.jsx("button",{type:"button",className:"debug-button",onClick:m,children:a("debug.showResult",{type:"Order",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})})]}),r&&i?n?.({score:i.score,contextsLength:i.contextsLength,results:i.results,onReplay:u,onClose:u}):null]}):null}exports.Accordion=s2,exports.ActionCard=R0,exports.Alert=Dg,exports.AppHeader=h2,exports.AudioMeter=wr,exports.AudioPlayer=qr,exports.Avatar=Rg,exports.Badge=it,exports.BarChart=y4,exports.BarChartControls=Gi,exports.Board=Yg,exports.BottomNav=hi,exports.BrandIdentity=gi,exports.Breadcrumb=Fg,exports.BulkBar=l4,exports.Button=oe,exports.CORE_VERSION=T0,exports.Calendar=I4,exports.CardStep=sc,exports.ChartLegend=yr,exports.ChartSection=vr,exports.ChartTotal=Aa,exports.Checkbox=Vi,exports.ChoiceChips=Hb,exports.CircleBadge=Ag,exports.CodeBox=i4,exports.ColorPicker=Wg,exports.CompanyMeta=t4,exports.ConfirmPopup=Xy,exports.ConfirmStep=ac,exports.ConfirmWithTextStep=rc,exports.ContrastFilterPanel=Yy,exports.CoreScope=P0,exports.CountTile=qg,exports.CouponInputPopup=Jy,exports.DEFAULT_NOISE_SETTINGS=da,exports.DatePicker=p4,exports.DebugResultLauncher=B5,exports.DescriptionTooltip=Sn,exports.DeviceSideTable=$4,exports.Dialog=Kg,exports.Divider=Ng,exports.Dropdown=Gt,exports.EffectPartyPopper=pc,exports.EffectPartyPopperHost=r5,exports.EmptyState=L0,exports.ErrorState=$0,exports.FILTER_ALL_VALUE=Jt,exports.FileUpload=Ig,exports.FilterPanel=un,exports.FilterSectionInfo=oa,exports.Footer=Vb,exports.Header=bi,exports.Icon=Oe,exports.IconGridMenu=Ob,exports.IconRenderer=Oe,exports.InfoTooltip=gn,exports.LEVEL_MAX=zn,exports.LandingBottomSticky=Wb,exports.LandingHeader=zb,exports.ListPopup=Zy,exports.ListenStep=nc,exports.Loader=la,exports.MARKS=sl,exports.MARK_ICON=ll,exports.MARK_VARIANT=cl,exports.MediaQueryOverrideContext=ni,exports.MenuTooltip=wa,exports.NOISE_RATIO_MAX=Da,exports.NOISE_RATIO_STEP=Ml,exports.NoisePlayerContext=Hr,exports.NoiseSettingsTooltip=Yl,exports.NoticeBox=I0,exports.OrderListStep=oc,exports.PASS_CARD_BG_VARS=jn,exports.POS_LABEL=pl,exports.PROMO_BANNER_BG_COMPONENTS=ei,exports.PROMO_BANNER_BG_OPTIONS=F0,exports.PROMO_BANNER_BG_VARS=ta,exports.Page=La,exports.PageTitle=o5,exports.Pagination=ka,exports.Panel=Ma,exports.PanelGrid=vy,exports.PanelRow=vn,exports.PanelRowDevice=yy,exports.PassCard=ji,exports.PassCardBg=xg,exports.PassCardBgIHAB=_g,exports.PassCardBgLeftColorGrid=wg,exports.PassCardBgTwoCircle=Ni,exports.PaymentPlan=vg,exports.PersonCard=Zg,exports.PhonemeFilterPanel=Ky,exports.PhonemeSelectBlock=Uy,exports.Popup=yn,exports.ProgressBar=N4,exports.ProgressIndicator=tl,exports.PromoBanner=a2,exports.PromoBannerBgDark=Fs,exports.PromoBannerBgDeep=Ms,exports.PromoBannerBgDiagonal=zs,exports.PromoBannerBgDots=qs,exports.PromoBannerBgInstagram=Qs,exports.PromoBannerBgMain=Bs,exports.PromoBannerBgNaver=Xs,exports.PromoBannerBgOutline=Gs,exports.PromoBannerBgRadial=Hs,exports.PromoBannerBgSoft=Ds,exports.PromoBannerBgSoftSub=$s,exports.PromoBannerBgSub=Ts,exports.PromoBannerBgSuccess=Ys,exports.PromoBannerBgWarm=Ps,exports.PublicationCard=Jg,exports.Radio=Li,exports.RadioGroup=Bg,exports.Rating=Hg,exports.ReportDocument=d5,exports.ReportInfoPanel=p5,exports.RingChart=x4,exports.SENTENCE_TRAINING_TYPES=Pr,exports.SearchSummary=Eg,exports.Section=On,exports.SectionHeader=e4,exports.SegmentedControl=En,exports.ShortcutBadge=Mi,exports.SideNav=Ci,exports.Slider=Ji,exports.SoundCompass=kg,exports.SplashLogo=Qg,exports.StatChart=_4,exports.SummaryStrip=c5,exports.TRAINING_TOOLTIP_HOVER_DELAY_MS=Qy,exports.Table=Ar,exports.TableFilterPanel=Er,exports.Tabs=Mg,exports.TextBoxTooltip=Ea,exports.TextField=Tn,exports.Timeline=Xg,exports.Toast=Fn,exports.Toggle=Hi,exports.Toolbar=gr,exports.Tooltip=Cn,exports.TooltipInfo=gn,exports.TooltipTextBox=Ea,exports.TopBanner=r2,exports.TrainingBlock=z4,exports.TrainingBlockButton=Nr,exports.TrainingCard=m5,exports.TrainingCardGroup=f5,exports.TrainingPagePopup=xn,exports.TrainingPagePopupBottom=Zl,exports.TrainingPagePopupTitle=Xl,exports.TrainingResultPopup=lc,exports.TrainingStep=Mn,exports.TrainingStepAudioPlayer=qr,exports.TrainingStepBullet=Vl,exports.TrainingStepCard=ql,exports.TrainingStepConfirm=Gr,exports.TrainingStepConfirmWithText=Kr,exports.TrainingStepListen=Yr,exports.TrainingStepOrderList=Zr,exports.TrainingStepTextBox=Wl,exports.TrainingStepTitle=zl,exports.TrainingTooltip=t5,exports.TrainingWordCard=Sr,exports.UpdateAlert=h5,exports.WAVE_A_MAX=Qb,exports.WAVE_H1_PX=Fl,exports.WAVE_HMAX_PX=Jb,exports.WORD_TABLE_PAPER=Hn,exports.WORD_TYPE_LABEL=hl,exports.WordDataProvider=l5,exports.WordDataUpdatePopup=N5,exports.WordImageTooltip=uc,exports.WordSearchFilterPanel=Gy,exports.WordSearchResultBlock=Wy,exports.WordTable=Vn,exports.WordTableBlock=y5,exports.WordTableButton=v5,exports.WordTablePopup=pb,exports.WordTableThumbnail=mc,exports.buildMonthChartData=m4,exports.cellLabel=gb,exports.cellsForLabels=Eb,exports.clearPassCardBgTheme=sn,exports.clearPromoBannerBgTheme=kt,exports.closeTrainingPopup=Ay,exports.companyTypeLabel=s5,exports.createTrainingScenario=Sy,exports.cx=ye,exports.deriveNoiseContexts=Ly,exports.derivePassCard=wi,exports.draftValues=Ib,exports.effectiveNoiseVolume=Fr,exports.effectiveSpeechVolume=Rl,exports.expandSlashLabel=jr,exports.formatDuration=Mb,exports.getControlDateRange=v4,exports.getPayloadTimestamp=Qr,exports.getPromoBannerBgTheme=lr,exports.getSelectedFromPayload=jy,exports.getSelectedText=Ty,exports.getStepPayload=ec,exports.getSteppedPayload=Ey,exports.injectPassCardBgTheme=on,exports.injectPromoBannerBgTheme=wt,exports.isSelectionCorrect=My,exports.labelsForSave=Cb,exports.levelToPct=qb,exports.markAfterClick=il,exports.marksForSave=Dr,exports.mergeNoiseSettings=ua,exports.missesByType=Sb,exports.nextFocus=Ab,exports.nextMisses=Bb,exports.noiseElementVolume=Or,exports.noiseRatioOf=ca,exports.pageStartIndexes=ul,exports.passCardBgIhabTheme=Ti,exports.passCardBgLeftColorGridTheme=Ei,exports.passCardBgTwoCircleTheme=Ai,exports.pctToLevel=Ub,exports.printWordTable=X4,exports.promoBannerBgDarkTheme=Is,exports.promoBannerBgDeepTheme=Es,exports.promoBannerBgDiagonalTheme=Vs,exports.promoBannerBgDotsTheme=Ws,exports.promoBannerBgInstagramTheme=Js,exports.promoBannerBgMainTheme=Ns,exports.promoBannerBgNaverTheme=Zs,exports.promoBannerBgOutlineTheme=Us,exports.promoBannerBgRadialTheme=Os,exports.promoBannerBgSoftSubTheme=Ls,exports.promoBannerBgSoftTheme=Ss,exports.promoBannerBgSubTheme=js,exports.promoBannerBgSuccessTheme=Ks,exports.promoBannerBgWarmTheme=Rs,exports.recommendTables=jb,exports.regenerateUnpinned=Pb,exports.removeItem=Rb,exports.resolveTrainingItems=By,exports.resolveTrainingPopupMeta=Ql,exports.reviewCells=mb,exports.reviewSetPlan=Db,exports.reviewTableName=fb,exports.scoreKey=Ba,exports.scoreSheetHeader=bb,exports.shouldConfirmDiscard=Z4,exports.splitTrainingVariants=Ny,exports.summarize=Y4,exports.summarizeMisses=Nb,exports.tableTrends=kb,exports.toDraft=Lb,exports.toTrainingText=Dy,exports.togglePin=$b,exports.uncoveredLabels=Tb,exports.useAnchoredMenu=na,exports.useBarChartControl=Ui,exports.useCalendarMonth=zi,exports.useComboboxSuggestions=Fi,exports.useFitScale=fl,exports.useNoisePlayer=ja,exports.useSoundCompassExam=n2,exports.useToastLifecycle=el,exports.useWordData=i5,exports.useWordTableDisplaySettings=Tl,exports.useWordTablePrint=$r,exports.waveBarPx=pa,exports.waveBarVal=zr,exports.weakItems=wb;
978
+ */const w5=[["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"}]],k5=K("circle-x",w5);function A5(e){return{idle:0,"word-download":1,"image-list":2,"image-match":2,"pair-build":3,done:4}[e]??0}function ao({icon:e,label:n,state:a,pct:r,subText:o}){const{t:i}=he.useTranslation(),l=a==="done",c=a==="pending",u=a==="error",d=l?100:r??0;return t.jsxs("div",{className:"wdup-phase-card",children:[t.jsx("div",{className:`wdup-phase-card__icon${l?" wdup-phase-card__icon--done":u?" wdup-phase-card__icon--error":""}`,children:l?t.jsx(Ao,{size:22,color:"white",strokeWidth:2.5}):u?t.jsx(k5,{size:22,color:"white",strokeWidth:2.5}):t.jsx("span",{className:`wdup-phase-card__icon-inner${c?" wdup-phase-card__icon-inner--pending":""}`,children:e})}),t.jsxs("div",{className:"wdup-phase-card__body",children:[t.jsxs("div",{className:"wdup-phase-card__top",children:[t.jsx("span",{className:`wdup-phase-card__label body-2${c?" wdup-phase-card__label--pending":""}`,children:n}),l?t.jsx(it,{variant:"sub",fill:"soft",size:"small",label:i("common.done","\uC644\uB8CC")}):u?t.jsx(it,{variant:"danger",fill:"soft",size:"small",label:i("common.failed","\uC2E4\uD328")}):(o||r!==void 0)&&t.jsxs("span",{className:"wdup-phase-card__sub body-3",children:[o,o&&r!==void 0?` \xB7 ${r}%`:r!==void 0?`${r}%`:""]})]}),!c&&t.jsx("div",{className:"wdup-bar",children:t.jsx("div",{className:`wdup-bar__fill${l?" wdup-bar__fill--done":u?" wdup-bar__fill--error":""}${a==="active"&&r===void 0?" wdup-bar__fill--indeterminate":""}`,style:{width:r!==void 0||l||u?`${u?100:d}%`:void 0}})})]})]})}function N5({title:e,progress:n,onDone:a,onRetry:r,onClose:o,inline:i}){const{t:l}=he.useTranslation(),{phase:c,error:u,wordCount:d,imagePage:p,imageDone:h,imageTotal:m,pairPercent:g}=n,y=A5(c),C=c==="done",f=!!u;function v(k){return f&&y===k?"error":y>k?"done":y===k?"active":"pending"}const x=v(1),_=v(2),b=v(3),N=c==="image-match"&&m?Math.round((h??0)/m*100):void 0,w=s.useMemo(()=>{if(_!=="done"){if(c==="image-list")return l("wordData.checkingPage",{page:p??1});if(c==="image-match"&&m)return l("wordData.imageCount",{done:or(h),total:or(m)})}},[_,c,p,m,h,l]);return t.jsx(yn,{inline:i,className:"popup--word-data-update",title:e,footer:f&&r?t.jsx(oe,{htmlType:"button",size:56,variant:"main",onClick:r,children:l("common.retry","\uB2E4\uC2DC \uC2DC\uB3C4")}):f?t.jsx(oe,{htmlType:"button",size:56,variant:"main",onClick:o??a,children:l("common.close","\uB2EB\uAE30")}):t.jsx(oe,{htmlType:"button",size:56,variant:"main",disabled:!C,onClick:a,children:l("common.done","\uC644\uB8CC")}),children:t.jsxs("div",{className:"wdup-cards",children:[t.jsx(ao,{icon:t.jsx(vo,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:l("wordData.phaseWordDownload","\uB2E8\uC5B4 \uB370\uC774\uD130 \uB2E4\uC6B4\uB85C\uB4DC"),state:x,subText:x==="active"?l("wordData.downloadingCount",{n:or(d)}):void 0}),t.jsx(ao,{icon:t.jsx(_5,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:l("wordData.phaseImageCheck","\uC774\uBBF8\uC9C0 \uD655\uC778"),state:_,pct:N,subText:w}),t.jsx(ao,{icon:t.jsx(wo,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:l("wordData.phasePairAnalysis","\uB2E8\uC5B4\uC30D \uBD84\uC11D"),state:b,pct:b==="active"?g??0:void 0,subText:void 0})]})})}function B5({enabled:e=!1,renderResultPopup:n}={}){const{t:a}=he.useTranslation(),[r,o]=s.useState(null),[i,l]=s.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),o(g)},u=s.useCallback(()=>{o(null),l(null)},[]),d=s.useCallback(()=>c("noise"),[]),p=s.useCallback(()=>c("short"),[]),h=s.useCallback(()=>c("long"),[]),m=s.useCallback(()=>c("order"),[]);return e?t.jsxs("div",{className:"debug-result-launcher",children:[t.jsxs("div",{className:"debug-buttons",children:[t.jsx("button",{type:"button",className:"debug-button",onClick:d,children:a("debug.showResult",{type:"Noise",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})}),t.jsx("button",{type:"button",className:"debug-button",onClick:p,children:a("debug.showResult",{type:"ShortStory",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})}),t.jsx("button",{type:"button",className:"debug-button",onClick:h,children:a("debug.showResult",{type:"LongStory",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})}),t.jsx("button",{type:"button",className:"debug-button",onClick:m,children:a("debug.showResult",{type:"Order",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})})]}),r&&i?n?.({score:i.score,contextsLength:i.contextsLength,results:i.results,onReplay:u,onClose:u}):null]}):null}exports.Accordion=s2,exports.ActionCard=R0,exports.Alert=Dg,exports.AppHeader=h2,exports.AudioMeter=wr,exports.AudioPlayer=qr,exports.Avatar=Rg,exports.Badge=it,exports.BarChart=y4,exports.BarChartControls=Gi,exports.Board=Yg,exports.BottomNav=hi,exports.BrandIdentity=gi,exports.Breadcrumb=Fg,exports.BulkBar=l4,exports.Button=oe,exports.CORE_VERSION=T0,exports.Calendar=I4,exports.CardStep=sc,exports.ChartLegend=yr,exports.ChartSection=vr,exports.ChartTotal=Aa,exports.Checkbox=Hi,exports.ChoiceChips=Vb,exports.CircleBadge=Ag,exports.CodeBox=i4,exports.ColorPicker=Wg,exports.CompanyMeta=t4,exports.ConfirmPopup=Xy,exports.ConfirmStep=ac,exports.ConfirmWithTextStep=rc,exports.ContrastFilterPanel=Yy,exports.CoreScope=P0,exports.CountTile=qg,exports.CouponInputPopup=Jy,exports.DEFAULT_NOISE_SETTINGS=da,exports.DatePicker=p4,exports.DebugResultLauncher=B5,exports.DescriptionTooltip=Sn,exports.DeviceSideTable=$4,exports.Dialog=Kg,exports.Divider=Ng,exports.Dropdown=Gt,exports.EffectPartyPopper=pc,exports.EffectPartyPopperHost=r5,exports.EmptyState=L0,exports.ErrorState=$0,exports.FILTER_ALL_VALUE=Jt,exports.FileUpload=Ig,exports.FilterPanel=un,exports.FilterSectionInfo=oa,exports.Footer=Hb,exports.Header=bi,exports.Icon=Oe,exports.IconGridMenu=Ob,exports.IconRenderer=Oe,exports.InfoTooltip=gn,exports.LEVEL_MAX=zn,exports.LandingBottomSticky=Wb,exports.LandingHeader=zb,exports.ListPopup=Zy,exports.ListenStep=nc,exports.Loader=la,exports.MARKS=sl,exports.MARK_ICON=ll,exports.MARK_VARIANT=cl,exports.MediaQueryOverrideContext=ni,exports.MenuTooltip=wa,exports.NOISE_RATIO_MAX=Da,exports.NOISE_RATIO_STEP=Ml,exports.NoisePlayerContext=Vr,exports.NoiseSettingsTooltip=Yl,exports.NoticeBox=I0,exports.OrderListStep=oc,exports.PASS_CARD_BG_VARS=jn,exports.POS_LABEL=pl,exports.PROMO_BANNER_BG_COMPONENTS=ei,exports.PROMO_BANNER_BG_OPTIONS=F0,exports.PROMO_BANNER_BG_VARS=ta,exports.Page=La,exports.PageTitle=o5,exports.Pagination=ka,exports.Panel=Ma,exports.PanelGrid=vy,exports.PanelRow=vn,exports.PanelRowDevice=yy,exports.PassCard=ji,exports.PassCardBg=xg,exports.PassCardBgIHAB=_g,exports.PassCardBgLeftColorGrid=wg,exports.PassCardBgTwoCircle=Ni,exports.PaymentPlan=vg,exports.PersonCard=Zg,exports.PhonemeFilterPanel=Ky,exports.PhonemeSelectBlock=Uy,exports.Popup=yn,exports.ProgressBar=N4,exports.ProgressIndicator=tl,exports.PromoBanner=a2,exports.PromoBannerBgDark=Fs,exports.PromoBannerBgDeep=Ms,exports.PromoBannerBgDiagonal=zs,exports.PromoBannerBgDots=qs,exports.PromoBannerBgInstagram=Qs,exports.PromoBannerBgMain=Bs,exports.PromoBannerBgNaver=Xs,exports.PromoBannerBgOutline=Gs,exports.PromoBannerBgRadial=Vs,exports.PromoBannerBgSoft=Ds,exports.PromoBannerBgSoftSub=$s,exports.PromoBannerBgSub=Ts,exports.PromoBannerBgSuccess=Ys,exports.PromoBannerBgWarm=Ps,exports.PublicationCard=Jg,exports.Radio=Li,exports.RadioGroup=Bg,exports.Rating=Vg,exports.ReportDocument=d5,exports.ReportInfoPanel=p5,exports.RingChart=x4,exports.SENTENCE_TRAINING_TYPES=Pr,exports.SearchSummary=Eg,exports.Section=On,exports.SectionHeader=e4,exports.SegmentedControl=En,exports.ShortcutBadge=Mi,exports.SideNav=Ci,exports.Slider=Ji,exports.SoundCompass=kg,exports.SplashLogo=Qg,exports.StatChart=_4,exports.SummaryStrip=c5,exports.TRAINING_TOOLTIP_HOVER_DELAY_MS=Qy,exports.Table=Ar,exports.TableFilterPanel=Er,exports.Tabs=Mg,exports.TextBoxTooltip=Ea,exports.TextField=Tn,exports.Timeline=Xg,exports.Toast=Fn,exports.Toggle=Vi,exports.Toolbar=gr,exports.Tooltip=Cn,exports.TooltipInfo=gn,exports.TooltipTextBox=Ea,exports.TopBanner=r2,exports.TrainingBlock=z4,exports.TrainingBlockButton=Nr,exports.TrainingCard=m5,exports.TrainingCardGroup=f5,exports.TrainingPagePopup=xn,exports.TrainingPagePopupBottom=Zl,exports.TrainingPagePopupTitle=Xl,exports.TrainingResultPopup=lc,exports.TrainingStep=Mn,exports.TrainingStepAudioPlayer=qr,exports.TrainingStepBullet=Hl,exports.TrainingStepCard=ql,exports.TrainingStepConfirm=Gr,exports.TrainingStepConfirmWithText=Kr,exports.TrainingStepListen=Yr,exports.TrainingStepOrderList=Zr,exports.TrainingStepTextBox=Wl,exports.TrainingStepTitle=zl,exports.TrainingTooltip=t5,exports.TrainingWordCard=Sr,exports.UpdateAlert=h5,exports.WAVE_A_MAX=Qb,exports.WAVE_H1_PX=Fl,exports.WAVE_HMAX_PX=Jb,exports.WORD_TABLE_PAPER=Vn,exports.WORD_TYPE_LABEL=hl,exports.WordDataProvider=l5,exports.WordDataUpdatePopup=N5,exports.WordImageTooltip=uc,exports.WordSearchFilterPanel=Gy,exports.WordSearchResultBlock=Wy,exports.WordTable=Hn,exports.WordTableBlock=y5,exports.WordTableButton=v5,exports.WordTablePopup=pb,exports.WordTableThumbnail=mc,exports.buildMonthChartData=m4,exports.cellLabel=gb,exports.cellsForLabels=Eb,exports.clearPassCardBgTheme=sn,exports.clearPromoBannerBgTheme=kt,exports.closeTrainingPopup=Ay,exports.companyTypeLabel=s5,exports.createTrainingScenario=Sy,exports.cx=ye,exports.deriveNoiseContexts=Ly,exports.derivePassCard=wi,exports.draftValues=Ib,exports.effectiveNoiseVolume=Fr,exports.effectiveSpeechVolume=Rl,exports.expandSlashLabel=jr,exports.formatDuration=Mb,exports.getControlDateRange=v4,exports.getPayloadTimestamp=Qr,exports.getPromoBannerBgTheme=lr,exports.getSelectedFromPayload=jy,exports.getSelectedText=Ty,exports.getStepPayload=ec,exports.getSteppedPayload=Ey,exports.injectPassCardBgTheme=on,exports.injectPromoBannerBgTheme=wt,exports.isSelectionCorrect=My,exports.labelsForSave=Cb,exports.levelToPct=qb,exports.markAfterClick=il,exports.marksForSave=Dr,exports.mergeNoiseSettings=ua,exports.missesByType=Sb,exports.nextFocus=Ab,exports.nextMisses=Bb,exports.noiseElementVolume=Or,exports.noiseRatioOf=ca,exports.pageStartIndexes=ul,exports.passCardBgIhabTheme=Ti,exports.passCardBgLeftColorGridTheme=Ei,exports.passCardBgTwoCircleTheme=Ai,exports.pctToLevel=Ub,exports.printWordTable=X4,exports.promoBannerBgDarkTheme=Is,exports.promoBannerBgDeepTheme=Es,exports.promoBannerBgDiagonalTheme=Hs,exports.promoBannerBgDotsTheme=Ws,exports.promoBannerBgInstagramTheme=Js,exports.promoBannerBgMainTheme=Ns,exports.promoBannerBgNaverTheme=Zs,exports.promoBannerBgOutlineTheme=Us,exports.promoBannerBgRadialTheme=Os,exports.promoBannerBgSoftSubTheme=Ls,exports.promoBannerBgSoftTheme=Ss,exports.promoBannerBgSubTheme=js,exports.promoBannerBgSuccessTheme=Ks,exports.promoBannerBgWarmTheme=Rs,exports.recommendTables=jb,exports.regenerateUnpinned=Pb,exports.removeItem=Rb,exports.resolveTrainingItems=By,exports.resolveTrainingPopupMeta=Ql,exports.reviewCells=mb,exports.reviewSetPlan=Db,exports.reviewTableName=fb,exports.scoreKey=Ba,exports.scoreSheetHeader=bb,exports.shouldConfirmDiscard=Z4,exports.splitTrainingVariants=Ny,exports.summarize=Y4,exports.summarizeMisses=Nb,exports.tableTrends=kb,exports.toDraft=Lb,exports.toTrainingText=Dy,exports.togglePin=$b,exports.uncoveredLabels=Tb,exports.useAnchoredMenu=na,exports.useBarChartControl=Ui,exports.useCalendarMonth=zi,exports.useComboboxSuggestions=Fi,exports.useFitScale=fl,exports.useNoisePlayer=ja,exports.useSoundCompassExam=n2,exports.useToastLifecycle=el,exports.useWordData=i5,exports.useWordTableDisplaySettings=Tl,exports.useWordTablePrint=$r,exports.waveBarPx=pa,exports.waveBarVal=zr,exports.weakItems=wb;